mybatis-crud-page mybatis 实现jpa的crud-page和service方开源项目

我要开发同款
匿名用户2017年04月26日
59阅读
开发技术Java
所属分类数据库相关、数据库调整和优化
授权协议Apache

作品详情

mybatis的crud,快速的增删查改

spring或者springboot中使用mybtais,像jpa一样可以使用注解进行实体和数据库表的映射,

目前只实现了单表,主键使用UUID生成

使用简单,可以减少大量的mapper的dao层和service层的代码,使用基类统一的代码

已经在本人的不少工程验证过,快速实现crud

一:组件jar包说明:

1.封装了数据实体对应的数据库列的一一映射关系2.提供了基本的增删改的sql生成3.提供了模糊匹配查询的sql生成4.提供了精确匹配查询的sql生成5.提供了基本的Mapper接口,里面有增删查改的基本方法6.提供了基本的抽象service,里面有增删查改的基本方法7:提供了分页的基本方法,使用com.github.pagehelper的pagehelper的5.0.0的版本

二:组件jar包的的导入

1.gradle添加依赖classpath"com.wolfking:mybatis-crud:1.0.0-SNAPSHOT"2.maven添加依赖com.wolfkingmybatis-crud1.0.0-SNAPSHOT

三:jar包类的说明

1.MyTable写在实体类上面,如下@MyTable("sys_dict")publicclassDictextendsDataEntity{}sys_dict是数据库对应的表名2.MyId写在主键属性上,如下,如果属性名和数据库的列名相同(严格区分大小写),则不需要写括号里面的内容,主键的生成,第一版全部使用UUID@MyId("id")protectedStringid;3.MyColumn写在主键属性上,如下,如果属性名和数据库的列名相同(严格区分大小写),则不需要写括号里面的内容@MyColumn("remarks")protectedStringremarks;//备注4.BaseMapper基本的mapper接口5.BaseSqlProvider基本的sql提供者6.BaseService,T>提供了基本的service,实体操作的service可以基于这个来写

四:mybatis的分页插件

五:jar包的使用方法

1.pom.xml和build.gradle添加依赖2.实体类的编写@MyTable("sys_dict")publicclassDict{@MyId("id")privateStringid;@MyColumnprivateStringdescription;//描述@MyColumn("parent_id")privateStringparentId;//父Id}2.mybatis的mapper的编写,继承BaseMapper,T是实体类importcom.wolfking.mybatis.mapper.*;@Mapper//这个是mybatis扫描的注解,根据mybatis-spring-boot-starter版本来确定是否需要添加publicinterfaceDictMapperextendsBaseMapper{}3.在service层mybatis接口的使用,继承了抽象类的所有方法@ServicepublicclassDictServiceextendsBaseService{//其他业务代码}

六:根据ID查询,根据ID删除需要注意

参数直接输入ID,不需要创建实体类service.getById("123");service.deleteById("123");

七:service方法讲解

add:添加实体update:更新实体deleteById:根据ID删除deleteEntity:根据ID删除getById:根据ID查询getEntity:根据ID查询findAll:查询所有seleteVague:模糊匹配查询seleteAccuracy:精确匹配查询countAll:统计总数countVague:模糊匹配,查询总数countAccuracy:精确匹配,查询总数pageVague:模糊匹配分页查询pageAccuracy:精确匹配分页查询deleteAll:删除所有实体deleteVague:模糊匹配删除实体deleteAccuracy:精确匹配删除实体
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论