T - 映射类public abstract class AbstractRepository<T> extends Object
| Modifier and Type | Field and Description |
|---|---|
protected Db |
db |
protected Class<T> |
mappedClass |
protected String |
tableName |
| Constructor and Description |
|---|
AbstractRepository() |
| Modifier and Type | Method and Description |
|---|---|
void |
delete(Long id)
删除
|
void |
deleteByBusinessUk(String businessUkValue)
删除-通过表业务键
|
void |
deleteLogicByBusinessUk(String businessUkValue)
删除-逻辑的
|
T |
get(Long id)
单个
|
T |
getByBusinessUk(String businessUkValue)
单个-By业务键
|
Long |
insert(com.alibaba.fastjson.JSONObject paramJson)
插入数据
|
Long |
insert(Object paramIPO)
插入数据-实体
|
Long |
insert(Object paramIPO,
FieldNamingStrategyEnum fieldNamingStrategyEnum)
插入数据-实体
|
void |
insertBatch(com.alibaba.fastjson.JSONObject[] paramJsons)
插入数据-批量
|
List<T> |
listAll()
列表-全部
|
PageVO<T> |
page(PageIPO pageIPO)
分页
|
PageVO<T> |
pageDESC(PageIPO pageIPO)
分页-降序
|
protected abstract String |
tableName()
设置表名
|
void |
updateByBusinessUk(com.alibaba.fastjson.JSONObject paramJson)
更新-By业务键
|
void |
updateById(com.alibaba.fastjson.JSONObject paramJson)
更新-ById
|
public Long insert(Object paramIPO)
默认进行 FieldNamingStrategyEnum.SNAKE_CASE 数据库字段命名策略转换
paramIPO - 参数IPO(POJO-IPO对象)public Long insert(Object paramIPO, FieldNamingStrategyEnum fieldNamingStrategyEnum)
paramIPO - 参数IPO(POJO-IPO对象)fieldNamingStrategyEnum - 数据库字段命名策略public T get(Long id)
id - 主键idpublic T getByBusinessUk(String businessUkValue)
默认业务键为key
业务键值推荐使用UUID5
businessUkValue - 业务键的唯一值public PageVO<T> page(PageIPO pageIPO)
pageIPO - 分页查询参数 PageIPO,所有的条件参数,都将以等于的形式进行SQL拼接public PageVO<T> pageDESC(PageIPO pageIPO)
pageIPO - 分页查询参数 PageIPO,所有的条件参数,都将以等于的形式进行SQL拼接protected abstract String tableName()
public Long insert(com.alibaba.fastjson.JSONObject paramJson)
paramJson - 参数public void insertBatch(com.alibaba.fastjson.JSONObject[] paramJsons)
paramJsons - 参数public void delete(Long id)
数据删除前会先进行条数确认
依赖于接口传入 参数时慎用此方法,避免有序主键被遍历风险,造成数据越权行为。推荐使用 deleteByBusinessUk(String)
id - 主键idpublic void deleteByBusinessUk(String businessUkValue)
数据删除前会先进行条数确认
默认业务键为key
业务键值推荐使用UUID5
businessUkValue - 业务键的唯一值public void deleteLogicByBusinessUk(String businessUkValue)
数据非真实删除,而是更改 字段值为时间戳,代表数据已删除
businessUkValue - 业务键的唯一值public void updateById(com.alibaba.fastjson.JSONObject paramJson)
paramJson - 更新所用到的参数(包含主键ID字段)public void updateByBusinessUk(com.alibaba.fastjson.JSONObject paramJson)
根据表中业务键进行更新
默认业务键为key
业务键值推荐使用UUID5
paramJson - 更新所用到的参数(包含业务键字段)Copyright © 2022 Pivotal Software, Inc.. All rights reserved.