使用Mybatis-Plus,以及sqlite的使用
文章目录
- 目标
- MybatisPlus是什么
- 在原有的项目基础上使用MybatisPlus
- 替换依赖
- 替换配置文件
- 修改entity
- 修改mapper
- 修改service
- 修改controller
- 将h2数据库换位sqlite
- 更换依赖
- 修改配置文件
- 修改schema.sql
- 测试正常
- 总结
目标
- 在原有的项目基础上使用MybatisPlus
- 将h2数据库换位sqlite
MybatisPlus是什么
- MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。
- 只做增强不做改变:引入它不会对现有 MyBatis 工程产生影响
- 简化开发:只需简单配置,即可快速进行单表 CRUD 操作
- 强大的 CRUD 操作:内置通用 Mapper、通用 Service,仅通过少量配置即可实现单表大部分 CRUD 操作
- 支持 Lambda 形式调用:通过 Lambda 表达式,方便的编写各类查询条件,无需再担心字段写错
- 支持主键自动生成:支持多达 4 种主键策略(内含分布式唯一 ID 生成器)
- 内置分页插件:基于 MyBatis 物理分页,开发者无需关心具体操作
在原有的项目基础上使用MybatisPlus
替换依赖
将mybatis的依赖替换为mybatis-plus的依赖,替换代码如下:
<!--<dependency>-->
<!-- <groupId>org.mybatis.spring.boot</groupId>-->
<!-- <artifactId>mybatis-spring-boot-starter</artifactId>-->
<!-- <version>2.3.1</version>-->
<!--</dependency>--><!-- MyBatis-Plus Starter -->
<dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.5.1</version>
</dependency>
替换配置文件
在yml中将mybatis的配置替换为mybatis-plus的配置,替换代码如下:
#mybatis:
# mapper-locations: classpath:mapper/*.xml
# type-aliases-package: com.xbdx.demo111.entitymybatis-plus:configuration:# 日志实现log-impl: org.apache.ibatis.logging.stdout.StdOutImpl# 驼峰命名转换map-underscore-to-camel-case: trueglobal-config:db-config:# 主键类型id-type: auto# 逻辑删除配置logic-delete-field: deletedlogic-delete-value: 1logic-not-delete-value: 0# mapper.xml 文件位置mapper-locations: classpath*:/mapper/**/*.xml
修改entity
在类前面加入表名,指明操作哪张表
@TableName("users")
修改mapper
在类名后面添加需要继承的BaseMapper,并且传入泛型User
extends BaseMapper<User>
修改service
在接口的类名后面添加需要继承的IService,并且传入泛型User
extends IService<User>
在实现类的类名后面添加需要继承的ServiceImpl,并且传入泛型UserMapper, User
extends ServiceImpl<UserMapper, User>
修改controller
在类中加入如下方法,传入一个已经存在数据的id
@GetMapping("/getOne")
public void getOne() {User user = userService.getById(2);System.out.println("单个用户查询成功");System.out.println(user.getName() + " " + user.getAge());
}
我们在浏览器输入/getOne路径,查看结果
将h2数据库换位sqlite
更换依赖
将h2的依赖替换为sqlite的依赖,替换代码如下:
<!--<dependency>-->
<!-- <groupId>com.h2database</groupId>-->
<!-- <artifactId>h2</artifactId>-->
<!-- <version>2.1.214</version>-->
<!--</dependency>--><!-- SQLite JDBC 驱动 -->
<dependency><groupId>org.xerial</groupId><artifactId>sqlite-jdbc</artifactId><version>3.32.3.2</version>
</dependency>
修改配置文件
将h2的配置替换为sqlite的配置,注释h2控制台配置,替换代码如下:
# datasource:
# url: jdbc:h2:file:D:/aaa/testdb;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE;MODE=MySQL
# username: sa
# password:
# driver-class-name: org.h2.Driverdatasource:url: jdbc:sqlite:test.dbdriver-class-name: org.sqlite.JDBCusername:password:sql:init:mode: alwaysschema-locations: classpath:schema.sql# # H2 控制台配置(开发环境启用)
# h2:
# console:
# enabled: true
# path: /h2-console
修改schema.sql
有一些细微的差别需要修改,不然会报错,替换代码如下:
-- CREATE TABLE IF NOT EXISTS users (
-- id INT PRIMARY KEY AUTO_INCREMENT,
-- name VARCHAR(50),
-- age INT
-- );CREATE TABLE IF NOT EXISTS users (id INTEGER PRIMARY KEY AUTOINCREMENT,name VARCHAR(50),age INTEGER
);
测试正常
经过测试,展示结果一模一样,没有任何变化,说明数据库更改成功。
总结
本文主要说明了如何在原有的项目上,加入mybatis-plus,以及将原来数据库进行更换,原来的数据库为h2数据库。