Springboot整合mybatis
1 新建一个mevan项目(就类似vue的vue-cli脚手架)
使用springboot脚手架勾选web,mybatis和数据库驱动,自动导入相关依赖
2.新建库表
1)新建一个数据库:
CREATE DATABASE 数据库名 [charset=字符集]
2) 切换数据库: USE 数据库名
3)创建表:
CREATE TABLE 表名(
字段名名1 类型[(长度)] [DEFALUT 默认值] [约束],
字段名名2 类型,
...
)[CHARSET=字符集]
3. 在项目配置文件中配置数据库属性,连接数据库(在application.yml中添加数据源、Mybatis的实体和配置文件位置)
spring.datasource.url=jdbc:mysql://localhost:3306/库名?
serverTimezone=Asia/Shanghai&characterEncoding=utf8
spring.datasource.username=用户名
spring.datasource.password=密码
#设置MyBatis框架的映射(Mapper)配置文件的位置
mybatis.mapper-locations=classpath:mappers/*.xml
4. 在工程目录下创建pojo类包
Pojo简单的Java对象,也就是没有继承任何类或实现任何接口的简单 Java 对象,也不依赖于其他复杂的框架或技术,POJO 对象通常包含了纯粹的数据和简单的业务逻辑,是一 种用于简化 Java 应用程序开发的编程模型。
entity 用来和数据库中的表字段一一对应的
DTO作用 用来接收客户端传递给服务器的数据的
VO作用 用来处理服务器响应给客户端的数据的
类封装私有属性-保护数据安全,映射表中字段,生成getter/setter方法(外部访问)和tosting方法(重写object中的tostring方法,用于打印测试)
此处使用了@Data注解(导包)
@Data 是一个组合的注解,它等价于同时使用了 @Getter 、 @Setter 、 @NoArgsConstructor 、 @AllArgsConstructor 和 @ToString 注解。
5. 在工程目录下创建Mapper接口包,在其下创建Mapper接口,添加@mapper注解,在接口中编写增删改查方法
@Mapper 是 MyBatis 框架中的一个注解(用于标识接口或类为 MyBatis 的映射器)。
在 MyBatis 中,Mapper 负责定义与数据库交互的 SQL 映射方法。通常情况下,Mapper 接口或类中的方法与数据库操作语句相对应,通过这些方法可以执行数据库查询、插入、更新和删除等操作。
也可以建立一个config包
@Configuration 是 Spring 框架中的一个注解,它用于标识一个类为配置类。配置类在 Spring 中被用于定义 Bean 的创建和配置。
@MapperScan 是 MyBatis 框架中的一个注解,用于配置映射器(Mapper)的扫描路径。
6. 在资源目录下创建mappers目录,在其下创建Mapper.xml文件,并在项目配置文件中配置该目录下所有文件的路径,由xml文件中的mapper标签匹配到mapper接口并由id匹配到对应的方法,在xml文件中编写预编译sql语句.
1)向表中插入数据:
INSERT INTO 表名 (字段1,字段2,字段3,...) VALUES (值1,值2,值3,...)
2查询表中数据:SELECT * FROM 表名
3)修改表数据:
UPDATE 表名
SET 字段1=新值,字段2=新值,...
[WHERE 过滤条件]
4) 删除表中数据:
DELETE FROM 表名
[WHERE 过滤条件]
7. 在工程目录下创建controller包,在其下创建Controller类并添加注解
@RestController 将带有该注解的类转换为 Spring Web 应用程序中的RESTful Web 服务。与普通的 @Controller 注解不同的是,@RestController 注解还会将类中的所有方法的返回值自动转换为 JSON 或 XML 格式的响应。
@Requestmapping注解(将类中所有方法映射到该一级路径)标注一级路径,在类中添加业务方法@Requestmapping注解(将该方法方法映射到该二级路径),在类中使用@Autowired注解自动注入,获取一个Mapper接口的类对象
在方法中编写处理请求的逻辑代码,在方法参数中可以接收客户端传来的参数,若该参数由post请求发送的对象,还需要添加@Requestbody注解
@Requestbody 将请求正文中的对象反序列化为java对象
使用mapper接口实现类对象调用指定的方法,此时会由MyBatis框架根据接口路径和方法名找到对应xml文件中的sql语句并自动转换为jdbc代码执行,完成对数据库的增删改查,并将处理后的结果返回给客户端.