mybatis-crud-page mybatis 实现jpa的crud-page和service方法 项目简介
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.wolfking
mybatis-crud
1.0.0-SNAPSHOT三:jar包类的说明1.MyTable
写在实体类上面,如下
@MyTable("sys_dict")
public class Dict extends DataEntity {}
sys_dict 是数据库对应的表名
2.MyId
写在主键属性上,如下,如果属性名和数据库的列名相同(严格区分大小写),则不需要写括号里面的内容,
主键的生成,第一版全部使用 UUID
@MyId("id")
protected String id;
3.MyColumn
写在主键属性上,如下,如果属性名和数据库的列名相同(严格区分大小写),则不需要写括号里面的内容
@MyColumn("remarks")
protected String remarks; // 备注
4.BaseMapper 基本的mapper接口
5.BaseSqlProvider 基本的sql 提供者
6.BaseService, T> 提供了基本的service,实体操作的service可以基于这个来写四:mybatis的分页插件五:jar包的使用方法1.pom.xml 和 build.gradle 添加依赖
2.实体类的编写
@MyTable("sys_dict")
public class Dict{
@MyId("id")
private String id;
@MyColumn
private String description; // 描述
@MyColumn("parent_id")
private String parentId; // 父Id
}
2.mybatis的mapper的编写,继承BaseMapper,T是实体类
import com.wolfking.mybatis.mapper.*;
@Mapper //这个是mybatis扫描的注解,根据mybatis-spring-boot-starter 版本来确定是否需要添加
public interface DictMapper extends BaseMapper {
}
3.在service层mybatis接口的使用,继承了抽象类的所有方法
@Service
public class DictService extends BaseService {
//其他业务代码
}六:根据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: 精确匹配删除实体
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.wolfking
mybatis-crud
1.0.0-SNAPSHOT三:jar包类的说明1.MyTable
写在实体类上面,如下
@MyTable("sys_dict")
public class Dict extends DataEntity {}
sys_dict 是数据库对应的表名
2.MyId
写在主键属性上,如下,如果属性名和数据库的列名相同(严格区分大小写),则不需要写括号里面的内容,
主键的生成,第一版全部使用 UUID
@MyId("id")
protected String id;
3.MyColumn
写在主键属性上,如下,如果属性名和数据库的列名相同(严格区分大小写),则不需要写括号里面的内容
@MyColumn("remarks")
protected String remarks; // 备注
4.BaseMapper 基本的mapper接口
5.BaseSqlProvider 基本的sql 提供者
6.BaseService, T> 提供了基本的service,实体操作的service可以基于这个来写四:mybatis的分页插件五:jar包的使用方法1.pom.xml 和 build.gradle 添加依赖
2.实体类的编写
@MyTable("sys_dict")
public class Dict{
@MyId("id")
private String id;
@MyColumn
private String description; // 描述
@MyColumn("parent_id")
private String parentId; // 父Id
}
2.mybatis的mapper的编写,继承BaseMapper,T是实体类
import com.wolfking.mybatis.mapper.*;
@Mapper //这个是mybatis扫描的注解,根据mybatis-spring-boot-starter 版本来确定是否需要添加
public interface DictMapper extends BaseMapper {
}
3.在service层mybatis接口的使用,继承了抽象类的所有方法
@Service
public class DictService extends BaseService {
//其他业务代码
}六:根据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: 精确匹配删除实体