package com.springmapper.service.common;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* 通用的数据库操作接口
* @fileName: ICommonService.java
* @author: bin.li01
* @date: 2017/10/18 21:15
* @version: v1.0.0
*/
public interface ICommonService<T> {
/**
* 说明:根据实体中的属性值进行查询,查询条件使用等号
* @param record 实体
* @return List<T>
* @throws Exception 抛出异常
*/
List<T> select(T record) throws Exception;
/**
* 说明:根据主键字段进行查询,方法参数必须包含完整的主键属性,查询条件使用等号
* @param key 主键
* @return T
* @throws Exception 抛出异常
*/
T selectByPrimaryKey(Object key) throws Exception;
/**
* 说明:查询全部结果,select(null)方法能达到同样的效果
* @return List<T>
* @throws Exception 抛出异常
*/
List<T> selectAll() throws Exception;
/**
* 说明:根据实体中的属性进行查询,只能有一个返回值,有多个结果是抛出异常,查询条件使用等号
* @param record 实体
* @return T
* @throws Exception 抛出异常
*/
T selectOne(T record) throws Exception;
/**
* 说明:根据实体中的属性查询总数,查询条件使用等号
* @param record 实体
* @return count
* @throws Exception 抛出异常
*/
int selectCount(T record) throws Exception;
/**
* 说明:保存一个实体,null的属性也会保存,不会使用数据库默认值
* @param record
* @return row
* @throws Exception 抛出异常
*/
int insert(T record) throws Exception;
/**
* 说明:保存一个实体,null的属性不会保存,会使用数据库默认值
* @param record 实体
* @return row
* @throws Exception 抛出异常
*/
int insertSelective(T record) throws Exception;
/**
* 说明:根据主键更新实体全部字段,null值会被更新
* @param record 实体
* @return row
* @throws Exception 抛出异常
*/
int updateByPrimaryKey(T record) throws Exception;
/**
* 说明:根据主键更新属性不为null的值
* @param record 实体
* @return row
* @throws Exception 抛出异常
*/
int updateByPrimaryKeySelective(T record) throws Exception;
/**
* 说明:根据实体属性作为条件进行删除,查询条件使用等号
* @param record 实体
* @return row
* @throws Exception 抛出异常
*/
int delete(T record) throws Exception;
/**
*说明:根据主键字段进行删除,方法参数必须包含完整的主键属性
* @param key 主键
* @return row
* @throws Exception 抛出异常
*/
int deleteByPrimaryKey(Object key) throws Exception;
/**
* 说明:根据Condition条件进行查询
* @param condition
* @return List<T>
* @throws Exception 抛出异常
*/
List<T> selectByCondition(Object condition) throws Exception;
/**
* 说明:根据Condition条件进行查询总数
* @param condition
* @return count
* @throws Exception 抛出异常
*/
int selectCountByCondition(Object condition) throws Exception;
/**
* 说明:根据Condition条件更新实体record包含的全部属性,null值会被更新
* @param record 实体
* @param condition 条件
* @return row
* @throws Exception 抛出异常
*/
int updateByCondition(@Param("record") T record, @Param("example") Object condition) throws Exception;
/**
* 说明:根据Condition条件更新实体record包含的不是null的属性值
* @param record
* @param condition
* @return row
* @throws Exception 抛出异常
*/
int updateByConditionSelective(@Param("record") T record, @Param("example") Object condition) throws Exception;
/**
* 说明:根据Condition条件删除数据
* @param condition 条件
* @return row
* @throws Exception 抛出异常
*/
int deleteByCondition(Object condition) throws Exception;
/**
* 说明:批量插入,支持批量插入的数据库可以使用,例如MySQL,H2等,另外该接口限制实体包含id属性并且必须为自增列
* @param recordList 实体列表
* @return row
* @throws Exception 抛出异常
*/
int insertList(List<T> recordList) throws Exception;
/**
* 说明:根据主键字符串进行查询,类中只有存在一个带有@Id注解的字段;
* @param ids ids 如 "1,2,3" 这种形式的字符串,主键
* @return List<T>
* @throws Exception 抛出异常
*/
List<T> selectByIds(String ids) throws Exception;
/**
* 说明:根据主键字符串进行删除,类中只有存在一个带有@Id注解的字段
* @param ids ids 如 "1,2,3" 这种形式的字符串,主键
* @return row
* @throws Exception 抛出异常
*/
int deleteByIds(String ids) throws Exception;
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
springmapper-master.zip (21个子文件)
springmapper-master
pom.xml 11KB
src
test
java
com
springmapper
service
IRoleServiceTest.java 4KB
main
resources
spring
spring-servlet.xml 4KB
spring-context.xml 918B
spring-mybatis.xml 5KB
mybatis
mapper
RoleMapper.xml 862B
mybatis-config.xml 745B
table.sql 629B
conf
sit
logback.xml 2KB
jdbc.properties 443B
config.properties 49B
dev
logback.xml 2KB
jdbc.properties 442B
config.properties 49B
java
com
springmapper
mapper
system
IRoleMapper.java 318B
utils
MyMapper.java 525B
service
common
ICommonService.java 5KB
impl
common
CommonServiceImpl.java 3KB
system
RoleServiceImpl.java 517B
system
IRoleService.java 359B
bean
system
RoleBean.java 3KB
共 21 条
- 1
资源评论
Java程序员-张凯
- 粉丝: 1w+
- 资源: 6732
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功