springboot框架非常简单清晰
我看很多人跟着敲代码太迷糊了,其实逻辑很简单。把下面理解了所有的操作就很清晰了
前端给controller层发json,controller层把json封装为DTO发给Service,其实Service接口啥没有,只有一个调用方法,就完全控制着Impl。impl处理前端或后端传过来的数据。处理完具体业务,Service拿走处理完的成果交给controller层或者mapper层。mapper层包括mapper接口和mapper.xml。Mapper 接口定义 “要执行增删改查什么操作”,Mapper.xml 定义具体 执行的SQL。mapper层返回给Service层的是entity实体类。Service层处理完业务返回给controller层,controller层返回给前端有两种,一个是返回VO对象数据return Result.success(orderPaymentVO);
一种是直接返回return Result.success();
@RestController
public class AdminController {
@Resource //调用已经实例好的Service,不用再实例化了 AdminSevice adminService=new AdminServiceImpl();
AdminService adminService;
@GetMapping("/adminlogin")
public JsonDto login(HttpServletRequest request){
System.out.println("进入login方法");
//http://localhost:8080/adminlogin?uname=111&pwd=222
//协议 ip : 端口 /请求地址 ? 参数名=参数值
System.out.println(request.getMethod());
System.out.println(request.getParameter("uname"));
System.out.println(request.getParameter("pwd"));
String u=request.getParameter("uname");
String p=request.getParameter("pwd");
JsonDto jsonDto=new JsonDto();
Admin admin=adminService.adminLogin(u,p);
if(admin!=null){
jsonDto.setId(1);
jsonDto.setMessage("登录成功");
jsonDto.getDatas().put("admin",admin);//吧admin对象存到map中传到前端使用
}else{
jsonDto.setId(0);
}
return jsonDto;
}
}
//请求 (Request):
//谁发起? 前端 (浏览器/App/Postman)
//方向: 前端 ➡️ 后端
//内容: GET /adminlogin?uname=111&pwd=222
//处理 (Processing):
//谁处理? 后端 (你的 AdminController 代码)
//动作: 接收参数 -> 调用 Service -> 查询数据库 -> 封装结果到 jsonDto
//响应 (Response) ⬅️ 就是这里!
//谁返回? 后端 (你的代码 return jsonDto)
//方向: 后端 ➡️ 前端
//内容: { "id": 1, "message": "登录成功", "datas": { ... } }

浙公网安备 33010602011771号