java pdf增删改查_Springboot+mybatis最简单的增删改查写法

c809e0bc509249077fdc76d7804c0476.png

增删改查估计是每个程序员都痛恨的事情,其实就是复制粘贴,于是乎,小刀就折腾了一个工具类,可以帮大家最大程度上(至少我觉得很简化)去减少些增删改查代码

新的增删改查

不要Controller , 不要xml , 只要mapper 和实体类, 就可以代替原来的controller-mapper-xml

e3b5c197ccbb9f3f26e46e1d824099d0.png

引入依赖

除了常用的springboot相关依赖,要加上小刀打的工具包,整体依赖如下

  implementation 'org.springframework.boot:spring-boot-starter-web'  implementation 'org.springframework.boot:spring-boot-starter-data-redis'  implementation 'org.mybatis.spring.boot:mybatis-spring-boot-starter:2.1.3'  // 小刀打的工具包依赖(已发布到中央仓库)  compile 'red.lixiang.tools:sunshine-starter:1.0.1'  // 这里方便测试,引了h2 , 实际中可以换成mysql  runtimeOnly 'com.h2database:h2'

准备测试表

这里为了代码运行方便,我们直接引入了h2数据库.表结构及测试数据如下:

drop table users if exists;create table users (                       id int,                       name varchar(20));
insert into users (id, name) values((select count(*) + 1 from users), 'XiaoDao');insert into users (id, name) values((select count(*) + 1 from users), '公众号:java技术大本营');insert into users (id, name) values((select count(*) + 1 from users), '微信:best396975802');

编写实体类

这里面的实体类有两个, 一个是和数据库对应的实体类, 一个是查询用的QC,QC中封装了一些和查询相关的通用字段. 数据库对应字段:
Users:

public class Users {    // 这个字段标识了是和数据库对应的字段    @SqlField    private Long id;    @SqlField    private String name;  // 这里省略了get/set方法}

UsersQC:

// 注意这里要继承一下BaseQCpublic class UsersQC extends BaseQC {    private Long id;     // 这里的QC注解,按需使用,如这里, 标识name是一个可以模糊查询的字段    @QC(likeQuery = true)    private String name;}

编写mybatis的mapper文件

// 需要继承BaseMapper,里面封装了基本的增删改查的写法@Mapper@Repositorypublic interface UsersMapper extends BaseMapper<Users> {// 需要重写这个方法,去完成一些缓存的初始化    @Override    default Class> getMapperClass() {        MybatisToolCache.cacheDomain("users",Users.class,UsersQC.class);        return UsersMapper.class;    }}

编写spring的配置文件

这里面没有什么单独的配置,都是h2数据库的配置,在实际使用中,可以替换成mysql的数据库

#配置数据库连接地址spring.datasource.platform=h2#配置数据库驱动spring.datasource.driver-class-name=org.h2.Driver#配置数据库用户名spring.datasource.username=saspring.datasource.schema=classpath:test_scheme.sqlspring.datasource.data=classpath:test_data.sql

启动项目

到目前为止,只需要我们写这些代码, Controller小刀直接封装在框架中了,启动项目之后,可以访问 http://127.0.0.1:8080/simple/users/query 看到对应的数据库数据.
同样封装的请求还有获取单个的
http://127.0.0.1:8080/simple/users/get?id=1
新增/保存的
http://127.0.0.1:8080/simple/user/save (post请求)
删除的
http://127.0.0.1:8080/simple/remove?id=1

源码地址

上述文章的代码地址:
https://github.com/xiaodaojava/sunshine-sample 

工具类的源码地址:
https://github.com/xiaodaojava/sunshine

总结

在使用过程中,有什么疑问,欢迎随时私信小刀一起讨论交流~~

7b91ac25e13478b31cd7ec7bdb11480c.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值