crud template
- 增删改查模板我的项目, 旨在缩小反复代码.
- 留神: 目前只反对 redis-hash 的数据类型
- github: crud
性能
- 单个表的数据库增删改查操作
- 单个表的数据库 + 缓存的增删改查操作
- 单个实体的缓存增删改查操作
如何应用
-
在启动类上增加如下代码
- daoType 可选项有 mybatis 和 mybatis-plus
- scanPackages 用来填写须要扫描的实体包门路, 反对多个
@EnableCrudTemplate(daoType = DaoType.MYBATIS_PLUS, scanPackages = {"com.github.huifer.mybatis.plus.mybatis"})
mybatis 反对
- 增加依赖
<dependency>
<groupId>com.github.huifer</groupId>
<artifactId>for-mybatis</artifactId>
<version>0.0.4-SNAPSHOT</version>
</dependency>
- 对 mapper 进行批改
@CacheKey(key = "issues", type = IssuesEntity.class)
public interface IssuesMapper extends A<Integer, IssuesEntity> {}
- 对实体进行批改
public class IssuesEntity implements BaseEntity {}
mybatis plus 反对
- 增加依赖
<dependency>
<groupId>com.github.huifer</groupId>
<artifactId>for-mybatis-plus</artifactId>
<version>0.0.4-SNAPSHOT</version>
</dependency>
- 对 mapper 进行批改
@CacheKey(key = "issues", type = IssuesEntity.class)
public interface IssuesMapper extends BaseMapper<IssuesEntity>,
AforMybatisPlus<Integer, IssuesEntity>
- 对实体进行批改
public class IssuesEntity implements BaseEntity {}
- 调用层 mybatis 和 mybatis-plus 都是同一个入口
@Autowired
private CrudFacade<IssuesEntity, IntIdInterface<Integer>> crudFacade;
- 只须要引入
CrudFacade
组件就能够领有数据库 + 缓存的 crud 操作了. 如果不须要缓存请将 mapper 上的@CacheKey
删掉
entity 反对
-
给实体对象增加注解
@CacheKey
- redis-hash field 取值阐明: idFiled= 实体类的某个字段, idMethod= 实体类中的一个办法, 如果两者同时存在以
idMethod
为准, 倡议填写一个
- redis-hash field 取值阐明: idFiled= 实体类的某个字段, idMethod= 实体类中的一个办法, 如果两者同时存在以
@CacheKey(key = "tt", type = IssuesEntity.class, idFiled = "newTitle", idMethod = "ooo")
public class IssuesEntity {
private Integer id;
private String newTitle;
private String ooo() {return "OOO" + this.newTitle;}
}
Contributers
- @huifer