范型接口定义

package com.founder.bbc.generic;

import java.io.Serializable;
import java.util.List;

 /*范型接口
 * 作者:北京师范大学 计算机系 张人杰
 * 转载、使用,请保留作者信息
 * 此范型已应用于方正某项目
 */
public interface GenericDao<PK extends Serializable,T extends GenericEntity<PK>> {
 /**
  * 列出所有内容
  * @return
  */
 public List<T> listAll();
 /**
  * 列出所有内容(使用特殊语句)
  * @return
  */
 public List<T> listAll(String ibatisStatement);
 /**
  * 根据条件查询并返回所有查询结果
  * @param condition
  * @return
  */
 public List<T> queryAll(T condition);
 /**
  * 根据条件查询并返回所有查询结果(使用特殊语句)
  * @param condition
  * @return
  */
 public List<T> queryAll(T condition,String ibatisStatement);
 /**
  * 根据条件查询对象
  * @param condition
  * @return
  */
 public T queryObject(T condition);
 /**
  * 根据条件查询对象(使用特殊语句)
  * @param condition
  * @return
  */
 public T queryObject(T condition,String ibatisStatement);
 /**
  * 查询所有内容,并分页返回结果
  * @param pageNo
  * @param pageSize
  * @return
  */
 public List<T> pagedListAll(Integer pageNo, Integer pageSize);
 /**
  * 查询所有内容,并分页返回结果(使用特殊语句)
  * @param pageNo
  * @param pageSize
  * @return
  */
 public List<T> pagedListAll(Integer pageNo, Integer pageSize, String ibatisStatement);
 /**
  * 根据条件查询所有内容,并分页返回结果
  * @param condition
  * @return
  */
 public List<T> pagedListQuery(T condition);
 /**
  * 根据条件查询所有内容,并分页返回结果(使用特殊语句)
  * @param condition
  * @return
  */
 public List<T> pagedListQuery(T condition, String ibatisStatement);
 /**
  * 保存或更新实体
  * Oracle,此处采用存储过程完成,以保证id序列的正确,并将新插入的id返回给插入对象
  * @param template
  * @return
  */
 public PK saveOrUpdate(T object);
 /**
  * 保存或更新实体(使用特殊语句)
  * Oracle,此处采用存储过程完成,以保证id序列的正确,并将新插入的id返回给插入对象
  * @param template
  * @return
  */
 public PK saveOrUpdate(T object, String ibatisStatement);
 /**
  * 插入实体
  * @param template
  * @return
  */
 public PK insert(T object);
 /**
  * 插入实体(使用特殊语句)
  * @param template
  * @return
  */
 public PK insert(T object, String ibatisStatement);
 /**
  * 更新实体
  * @param template
  * @return
  */
 public Integer update(T object);
 /**
  * 更新实体(使用特殊语句)
  * @param template
  * @return
  */
 public Integer update(T object, String ibatisStatement);
 /**
  * 删除实体,或根据条件删除列表
  * @param condition
  * @return
  */
 public void remove(T condition);
 /**
  * 删除实体,或根据条件删除列表(使用特殊语句)
  * @param condition
  * @return
  */
 public void multiPKRemove(T condition, String ibatisStatement);
 /**
  * 多选删除,或根据条件删除列表
  * @param condition
  * @return
  */
 public void multiPKRemove(T condition);
 /**
  * 多选删除,或根据条件删除列表(使用特殊语句)
  * @param condition
  * @return
  */
 public void remove(T condition, String ibatisStatement);
 /**
  * 计数
  * @return
  */
 public Integer count(T condition);
 /**
  * 计数(使用特殊语句)
  * @return
  */
 public Integer count(T condition, String ibatisStatement);
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值