以下是基于表名dste_project_indicator
(项目指标表)的完整命名示例,覆盖各类增删改查场景:
1. 表名与实体类映射
java
// 表名:dste_project_indicator
// 实体类:DsteProjectIndicatorEntity
public class DsteProjectIndicatorEntity {
private Long id;
private Long projectId;
private String indicatorCode;
private String indicatorName;
// 其他字段...
}
2. 基础增删改查方法
java
// 新增
int insert(DsteProjectIndicatorEntity entity);
int save(DsteProjectIndicatorEntity entity);
// 修改
int update(DsteProjectIndicatorEntity entity);
int modify(DsteProjectIndicatorEntity entity);
// 逻辑删除
int logicDeleteById(Long id);
int markAsDeletedById(Long id);
// 物理删除
int deleteById(Long id);
int removeById(Long id);
// 查询单条
DsteProjectIndicatorEntity selectById(Long id);
DsteProjectIndicatorEntity getById(Long id);
// 查询多条
List<DsteProjectIndicatorEntity> selectList(QueryParam param);
List<DsteProjectIndicatorEntity> listByCondition(QueryParam param);
3. 批量操作方法
java
// 批量新增
int batchInsert(List<DsteProjectIndicatorEntity> entityList);
int insertBatch(List<DsteProjectIndicatorEntity> entityList);
// 批量修改
int batchUpdate(List<DsteProjectIndicatorEntity> entityList);
int updateBatch(List<DsteProjectIndicatorEntity> entityList);
// 批量逻辑删除
int batchLogicDeleteByIds(List<Long> ids);
int batchMarkAsDeleted(List<Long> ids);
// 批量物理删除
int batchDeleteByIds(List<Long> ids);
int batchRemoveByIds(List<Long> ids);
4. 条件操作方法
java
// 条件新增(根据另一个实体创建)
int insertByEntity(DsteProjectIndicatorEntity template);
int saveFromTemplate(DsteProjectIndicatorEntity template);
// 条件修改(根据条件更新部分字段)
int updateByCondition(UpdateParam updateParam, QueryParam queryParam);
int modifyFieldsByCondition(Map<String, Object> fields, QueryParam condition);
// 条件逻辑删除
int logicDeleteByCondition(QueryParam param);
int disableByCondition(QueryParam param);
// 条件物理删除
int deleteByCondition(QueryParam param);
int removeByCondition(QueryParam param);
5. 分页与统计方法
java
// 分页查询
Page<DsteProjectIndicatorEntity> selectPage(PageParam pageParam, QueryParam queryParam);
IPage<DsteProjectIndicatorEntity> pageByCondition(PageParam page, QueryParam condition);
// 统计查询
Long countByCondition(QueryParam param);
Integer countActiveIndicators();
6. 复杂业务方法
java
// 按项目ID查询指标列表
List<DsteProjectIndicatorEntity> selectByProjectId(Long projectId);
List<DsteProjectIndicatorEntity> listIndicatorsByProject(Long projectId);
// 按指标编码查询(唯一键)
DsteProjectIndicatorEntity selectByCode(String indicatorCode);
DsteProjectIndicatorEntity getByUniqueCode(String code);
// 逻辑删除并关联删除子指标
int logicDeleteWithChildren(Long id);
int disableIndicatorCascade(Long id);
// 批量新增并返回主键
List<Long> batchInsertAndReturnIds(List<DsteProjectIndicatorEntity> entityList);
命名原则总结
-
动词选择:
- 新增 :
insert
/save
/create
- 修改 :
update
/modify
/edit
- 删除 :
delete
/remove
(物理)、logicDelete
/disable
/markAsDeleted
(逻辑) - 查询 :
select
/get
/list
/page
- 新增 :
-
参数与返回值:
- 单数形式(如
insert
)处理单个实体 - 复数形式(如
batchInsert
)处理集合 - 带
ByXXX
后缀表示按条件操作
- 单数形式(如
-
业务场景:
- 包含业务对象名称(如
ProjectIndicator
) - 特殊场景使用特定动词(如
archive
/invalidate
/restore
)
- 包含业务对象名称(如
-
代码风格一致性:
- 保持项目内方法命名统一(如统一用
insert
或save
) - 使用
Entity
/Param
/VO
明确参数类型
- 保持项目内方法命名统一(如统一用
示例实现(MyBatis Mapper)
java
public interface DsteProjectIndicatorMapper {
// 单条新增
@Insert("INSERT INTO dste_project_indicator (...) VALUES (...)")
int insert(DsteProjectIndicatorEntity entity);
// 批量新增
@Insert("<script>INSERT INTO dste_project_indicator (...) VALUES " +
"<foreach collection='list' item='item' separator=','>(...)</foreach></script>")
int batchInsert(@Param("list") List<DsteProjectIndicatorEntity> entityList);
// 条件逻辑删除
@Update("UPDATE dste_project_indicator SET delete_at = NOW() WHERE project_id = #{projectId}")
int logicDeleteByProjectId(@Param("projectId") Long projectId);
// 分页查询
List<DsteProjectIndicatorEntity> selectPage(
@Param("page") PageParam pageParam,
@Param("condition") QueryParam condition
);
}
根据实际业务需求(如数据库类型、ORM框架、事务要求等),选择最合适的命名方式和实现策略。