
前言:这篇我们基于前面学习的基础知识,来做一个基于前后端分离的业务场景下的一个后端智能员工管理系统。
我们采用三层架构的软件设计模式,将应用程序分为三个逻辑层

2.在类中定义@RestController


这里我们要注意一开始选择的依赖,是JPA还是Mybatis,
@Mapper 是 MyBatis 的注解
用 JPA! 因为: 用 MyBatis! 因为:
流程解释:
用户请求>Controller >Service>Mapper >数据库
>查询结果>Mapper>Service>Controller>响应结果到用户
在 application.properties 中配置的是 MyBatis 和数据库连接。完整的配置代码。
#驱动类名称 spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver #数据库连接的url spring.datasource.url=jdbc:mysql://localhost:3306/tlias #连接数据库的用户名 spring.datasource.username=root #连接数据库的密码 spring.datasource.password=1234
#配置mybatis的日志, 指定输出到控制台 mybatis.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl #开启mybatis的驼峰命名自动映射开关 a_column ------> aCloumn mybatis.configuration.map-underscore-to-camel-case=true
REST(REpresentational State Transfer),表述性状态转换,它是一种软件架构风格 http://localhost:8080/users/1 GET:查询id为1的用户 http://1ocalhost:8080/users POST:新增用户
http://1ocalhost:8080/users PUT:修改用户 http://1ocalhost:8080/users/1 DELETE:删除id为1的用户
注意事项 REST是风格,是约定方式,约定不是规定,可以打破。 描述模块的功能通常使用复数,也就是加s的格式来描述,表示此类资源,而非单个资源。如:users、emps、books

基础步骤描述:我们在controller类中接收用户请求,并在其中定义了一个方法Result,用于直观的返回结果,并使用了注解@Slf4j,@RequestMapping。之后我们启动测试类,并用postman模拟用户发送请求,返回给postman一系列的查询结果。
1.我们是在controller方法中,因为接收到用户的查询请求,因此定义了list方法,并在其中调用了service中的list方法,包装结果并返回。
2.service接口类中定义方法签名,在实现类中实现方法,调用Mapper查询数据;
3.Mapper中查询数据执行sql语句,并且把查询的结果返回到集合中,其中Mybatis的神奇之处就是将数据结果映射到集合中。
List<Dept>:返回类型是 Dept 对象的列表
list():方法名(通常对应 XML 中的 SQL 语句 ID)
Dept 对象列表的形式返回
🔍 MyBatis 的魔法:接口与 SQL 的绑定