基本使用
Get请求

Post请求

原始方式请求

package com.itheima.controller;
import jakarta.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController //声明这是一个处理类
public class RequestComtrol {
@RequestMapping("/simpleParam")
/*
原始方式接收请求参数
@param HttpServletRequest 原始的tomcat封装的请求对象
http://localhost:8080/hello?id=1&name=zhangsan%age=23
*/
public String simplepara(HttpServletRequest request) {
String id=request.getParameter("id");
String name=request.getParameter("name");
String age=request.getParameter("age");
System.out.println(id);
System.out.println(name);
System.out.println(age);
return "success";
}
}

SpringBoot方式请求


普通参数接收




对象类型参数接收



复杂参数


集合数组类型参数接收





日期参数接收

Json格式参数接收





路径参数的接受




总结

原始方式响应_json数据

@ResponseBody响应数据



统一结果集响应







综合案例



<!-- 解析XML -->
<dependency>
<groupId>org.dom4j</groupId>
<artifactId>dom4j</artifactId>
<version>2.1.3</version>
</dependency>






class文件必须先编一下才能找到路径

package com.itheima;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@RestController
public class EmpController {
//查询员工信息
@RequestMapping("/listEmp")
public Result list() {
//1.加载
/*类加载器的作用
* 1)能够加载类:把.class 文件加载到内存
* 2)能够读取 类文件夹的文件
* */
ClassLoader classLoader = this.getClass().getClassLoader();
String path = classLoader.getResource("emp.xml").getFile();
//2.解析xml读取员工信息,转换成对象
List<Emp> empList = XmlParserUtils.parse(path, Emp.class);
//3.处理数据
for (Emp emp : empList) {
String gender = emp.getGender();
if ("1".equals(gender)) {
emp.setGender("男");
} else {
emp.setGender("女");
}
String job = emp.getJob();
if ("1".equals(job)) {
emp.setJob("讲师");
} else if ("2".equals(job)) {
emp.setJob("班主任");
} else {
emp.setJob("就业指导");
}
}
//4.响应数据
return Result.success(empList);
}
}
输入这个直接访问的是数据而不是页面

访问页面的路径


综合案例解析


项目复制
删除多余文件

修改pom文件

修改启动类名字


三层架构
三层架构代码拆分



改造



三层架构解析


分包开发_让代码更规整

耦合的概念及使用接口降低耦合


手写工具类,降低耦合

复制类的全路径


三层架构和耦合小结


容器的概念解析
package com.itheima.utils;
import java.util.HashMap;
public class BeanUtil {
//集合(缓存)
private static HashMap<String, Object> map = new HashMap<>();
public static Object getBean(String name) {
//查询(集合)缓存-->容器
Object o = map.get(name);
if (o != null) {
//如果存在就返回
return o;
}
if ("empDao".equals(name)) {
try {
Object o1 = Class.forName("com.itheima.dao.EmpDaoImpl").newInstance();
map.put(name,o1);
return o1;
} catch (Exception e) {
e.printStackTrace();
}
}
return null;
}
}
IOC 和DI 入门
分层解耦





容器相关注解

Bean的声明

spring_IOC 注解说明

注解小结






常见面试题

请求响应概述

本文转载自: https://blog.csdn.net/shane12396/article/details/142594654
版权归原作者 精神病研究院王主任 所有, 如有侵权,请联系我们删除。
版权归原作者 精神病研究院王主任 所有, 如有侵权,请联系我们删除。