对mybastis 的理解2--BaseDao接口方法声明
2014-11-16 11:19
85 查看
package org.xnat.dao;
import java.util.List;
import java.util.Map;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Component;
import org.xnat.dao.util.AutoMap;
import org.xnat.dao.util.Page;
/**
* 不直接用此baseDao 外部访问数据 用baseDaoUtil_v{1,2...}
* @author xnat
*
*/
@Component
public interface BaseDao {
/**
* 存入一条记录
*/
public Integer insert(@Param("tableName")String tableName, @Param("list")List<AutoMap> list);
/**
* 存入一条记录 保存 自增长键的值到map 中的autoKey
*/
public Integer insert_v1_2(Map<String, Object> map);
/**
* select_v4
* @param tableName 表名
* @param selectFields 要查询的字段
* @param conditions 查询的条件
* @param group 分组
* @param havingSql 分组having Sql语句
* @param sort 排序条件
* @param page 分页查询
* @return
*/
public List<Map<String, Object>> select_v4(@Param("tableName") String tableName,
@Param("selectFields")List<String> selectFields,
@Param("conditions")List<AutoMap> conditions, @Param("group")List<String> group, @Param("havingSql") String havingSql,
@Param("sort") List<AutoMap> sort, @Param("page")Page page);
public List<Map<String, Object>> select_v4_2(@Param("tableName") String tableName,
@Param("selectFields")List<String> selectFields,
@Param("conditionSql")String conditionSql, @Param("group")List<String> group, @Param("havingSql") String havingSql,
@Param("sort") List<AutoMap> sort, @Param("page")Page page);
/**
* 自定义sql查询
* @param sql
* @return
*/
public List<Map<String, Object>> selectSql(@Param("sql")String sql);
public int delete_v3(@Param("tableName")String tableName,
@Param("conditions")List<AutoMap> conditions);
public int delete_v3_2(@Param("tableName")String tableName,
@Param("conditionSql")String conditionSql);
public int update_v2(@Param("tableName")String tableName, @Param("list") List<AutoMap> list, @Param("conditions")List<AutoMap> conditions);
public int update_v2_2(@Param("tableName")String tableName, @Param("list") List<AutoMap> list, @Param("conditionSql")String conditionSql);
/**
* 根据一个实体查询总数
* @param
* @return
*/
public int getTotal(@Param("tableName")String tableName, @Param("conditions") List<AutoMap> conditions);
/**
* 根据一个实体查询总数
* @param
* @return
*/
public int getTotal_v1_2(@Param("tableName")String tableName, @Param("conditionSql")String conditionSql);
/**
* 统计一个字段所有值的和
* @param tableName
* @param fieldName
* @param conditions
* @return
*/
public long countField(@Param("tableName")String tableName, @Param("fieldName")String fieldName, @Param("conditions") List<AutoMap> conditions);
}
本文出自 “ds” 博客,请务必保留此出处http://xnatural.blog.51cto.com/6103484/1577099
import java.util.List;
import java.util.Map;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Component;
import org.xnat.dao.util.AutoMap;
import org.xnat.dao.util.Page;
/**
* 不直接用此baseDao 外部访问数据 用baseDaoUtil_v{1,2...}
* @author xnat
*
*/
@Component
public interface BaseDao {
/**
* 存入一条记录
*/
public Integer insert(@Param("tableName")String tableName, @Param("list")List<AutoMap> list);
/**
* 存入一条记录 保存 自增长键的值到map 中的autoKey
*/
public Integer insert_v1_2(Map<String, Object> map);
/**
* select_v4
* @param tableName 表名
* @param selectFields 要查询的字段
* @param conditions 查询的条件
* @param group 分组
* @param havingSql 分组having Sql语句
* @param sort 排序条件
* @param page 分页查询
* @return
*/
public List<Map<String, Object>> select_v4(@Param("tableName") String tableName,
@Param("selectFields")List<String> selectFields,
@Param("conditions")List<AutoMap> conditions, @Param("group")List<String> group, @Param("havingSql") String havingSql,
@Param("sort") List<AutoMap> sort, @Param("page")Page page);
public List<Map<String, Object>> select_v4_2(@Param("tableName") String tableName,
@Param("selectFields")List<String> selectFields,
@Param("conditionSql")String conditionSql, @Param("group")List<String> group, @Param("havingSql") String havingSql,
@Param("sort") List<AutoMap> sort, @Param("page")Page page);
/**
* 自定义sql查询
* @param sql
* @return
*/
public List<Map<String, Object>> selectSql(@Param("sql")String sql);
public int delete_v3(@Param("tableName")String tableName,
@Param("conditions")List<AutoMap> conditions);
public int delete_v3_2(@Param("tableName")String tableName,
@Param("conditionSql")String conditionSql);
public int update_v2(@Param("tableName")String tableName, @Param("list") List<AutoMap> list, @Param("conditions")List<AutoMap> conditions);
public int update_v2_2(@Param("tableName")String tableName, @Param("list") List<AutoMap> list, @Param("conditionSql")String conditionSql);
/**
* 根据一个实体查询总数
* @param
* @return
*/
public int getTotal(@Param("tableName")String tableName, @Param("conditions") List<AutoMap> conditions);
/**
* 根据一个实体查询总数
* @param
* @return
*/
public int getTotal_v1_2(@Param("tableName")String tableName, @Param("conditionSql")String conditionSql);
/**
* 统计一个字段所有值的和
* @param tableName
* @param fieldName
* @param conditions
* @return
*/
public long countField(@Param("tableName")String tableName, @Param("fieldName")String fieldName, @Param("conditions") List<AutoMap> conditions);
}
本文出自 “ds” 博客,请务必保留此出处http://xnatural.blog.51cto.com/6103484/1577099
相关文章推荐
- 理解 Delphi 的类(十) - 深入方法[18] - 在接口区声明的方法都相当于提前声明了
- 理解 Delphi 的类(十) - 深入方法[13] - 在 interface 区声明的方法
- 理解 Delphi 的类(十) - 深入方法[17] - 提前声明
- 23,理解接口方法和虚方法的区别
- IOS:Objective-C中奇特的方法声明语法理解
- VB中实现IObjectSafety接口以声明控件安全的方法
- WinForms C#:html编辑器工程源码,含直接写WebBrowser的文件流、IPersistStreamInit接口的声明和一些相关的小方法
- WinForms C#:html编辑器工程源码,含直接写WebBrowser的文件流、IPersistStreamInit接口的声明和一些相关的小方法
- BaseDao<T extends Serializable> 泛型类、泛型接口、泛型方法
- Java第三课 Java中包的概念,类的说明符、方法的说明符、对象的销毁(JVM垃圾会受器的演示),Java中接口理解与掌握。
- 接口中的方法不能声明为static
- 继承类或实现接口时对原有方法覆盖时异常抛出声明的规则
- VB中实现IObjectSafety接口以声明控件安全的方法
- Java中"Test(Object...args){}"方法声明的理解——J2SE5的“Vararg“
- 能用foreach遍历访问的对象需要实现 ________________接口或声明________________方法的类型。
- 理解 Delphi 的类(十) - 深入方法[14] - 在TForm1 类内声明的方法
- Java中"Test(Object...args){}"方法声明的理解——J2SE5的“Vararg
- WinForms C#:html编辑器工程源码,含直接写WebBrowser的文件流、IPersistStreamInit接口的声明和一些相关的小方法
- 《Effective C#》读书笔记——条目23:理解接口方法和虚方法的区别<使用C#表达设计>
- Struts2 的 Preparable, ModelDriven 接口方法里无法获得参数,理解 拦截器与责任链