java对数据库sql进行增删改查的封装,单表操作将不再需要写sql语句

最近在帮项目封装分页的时候,本来想用mybatis拦截器,后来想着这样太重量级了,并且跟项目耦合,所以决定封装一个轻量级的工具,再后来发现,一些基础的增删改查,分页,模糊查询,大于小于不等于,in,notin 这些全都可以封装进去。现在是封装好测试后,想着贴部分代码过来,供大家参考。

源代码已经被我封装成了easySql.jar

源码已上传,1.0.2地址(基于spring):https://download.****.net/download/qq_37527048/10522072

1.0.5地址(原生):https://download.****.net/download/qq_37527048/10531818

1.0.6地址(代码优化,并支持多数据源):https://download.****.net/download/qq_37527048/10580116

可以加我qq:547595531   0o①唔溹Ai¢

资源为maven配置,解压后放在本地maven库的com下就好了,全路径名下图所示

java对数据库sql进行增删改查的封装,单表操作将不再需要写sql语句

 

接下来新建一个项目demo,添加pom.xml依赖以及扫描配置

java对数据库sql进行增删改查的封装,单表操作将不再需要写sql语句

 

然后再创建一个与数据库关联的bean,这里需要用到我的自定义注解来标注表名和主键。

java对数据库sql进行增删改查的封装,单表操作将不再需要写sql语句

所有准备工作完成,工具支持直接new,内部配置了连接池,执行新增的时候,会自动将主键返回

java对数据库sql进行增删改查的封装,单表操作将不再需要写sql语句

 

当然我的工具提供了很多个基础方法,都是依据参数属性来操作,例如:

java对数据库sql进行增删改查的封装,单表操作将不再需要写sql语句

除此之外,还有稍微进阶的操作,看官请看,那就是支持排序:

java对数据库sql进行增删改查的封装,单表操作将不再需要写sql语句

还有更进一层的是如下,支持单表聚合查询及模糊查询,演示一下:

java对数据库sql进行增删改查的封装,单表操作将不再需要写sql语句

 

以下java对数据库sql进行增删改查的封装,单表操作将不再需要写sql语句

自由拼接,想怎么查就怎么查。

另外还有一点比较重要的是,工具对事务的支持。在需要开启的地方加上@EasySqlTransaction即可,不加的话默认自动提交

java对数据库sql进行增删改查的封装,单表操作将不再需要写sql语句

 

 

如果有其他需要,我这里另外提供了两个注解,@TableIgnore和@TableField,分别用来表示不需要添加到数据库的属性(数据库无此字段)和与数据库字段不一致的属性名,如下图

java对数据库sql进行增删改查的封装,单表操作将不再需要写sql语句

 

 

我的核心思想是作为工具类,简化开发流程及代码,前提是小白或小型项目下没有架构师等大牛帮助写框架。我这个东西不与你的任何框架耦合,可以单独使用,也可以联合你框架使用,完全轻拿轻放。随心所欲。

 

工具里自己做了连接池,书写sql采用的预编译模式,不存在sql注入问题。工具有三个构造器,分别的

1.默认无参,内部自动使用druid连接池,并扫描项目下的perproties文件获取数据库配置信息。

2.参数可设置url  username  password数据库信息,工具不再扫描,直接开启druid

3.参数接收一个连接池,工具则会使用项目中连接池,不启用druid

 

以下为部分源码:

获取数据库配置信息,并添加到连接池

java对数据库sql进行增删改查的封装,单表操作将不再需要写sql语句

 

查询当前调用链使用含有事务注解

java对数据库sql进行增删改查的封装,单表操作将不再需要写sql语句

 

提供三种构造器

java对数据库sql进行增删改查的封装,单表操作将不再需要写sql语句

 

获取数据库连接

java对数据库sql进行增删改查的封装,单表操作将不再需要写sql语句

 

判断当前调用链是否含有事务及提交事务

java对数据库sql进行增删改查的封装,单表操作将不再需要写sql语句

 

重载多种查询方法

java对数据库sql进行增删改查的封装,单表操作将不再需要写sql语句

 

取参数时各种注解判断

java对数据库sql进行增删改查的封装,单表操作将不再需要写sql语句

 

一些小问题的解释

java对数据库sql进行增删改查的封装,单表操作将不再需要写sql语句