ChenJiaHe
2020-10-16 3fde78070037d46fb2af7240de41b47a8c3fab4a
提交 | 用户 | age
3fde78 1 package com.hx.common.dao;
C 2 import com.hx.mybatisTool.SqlParam;
3 import com.hx.mybatisTool.SqlSentence;
4
5 import java.io.Serializable;
6 import java.util.List;
7 import java.util.Map;
8
9
10 /**
11  * dao通用接口
12  * @author ChenJiaHe
13  * @Date 2020-10-14
14  */
15 public interface CommonDao {
16
17     /**新增,返回主键
18      * @param mapperClass mapper类
19      * @param entity 实体类
20      * @return 条数
21      */
22     <T extends Serializable>    int insert(Class<?> mapperClass, T entity);
23
24     /**查询条数
25      * @param mapperClass mapper类
26      * @param sqlParam  查询参数类
27      * @return 返回条数
28      */
29     <T extends Serializable> int selectCount(Class<?> mapperClass, SqlParam sqlParam);
30
31     /**查询列表,返回实体类的List
32      * @param mapperClass mapper类
33      * @param sqlSentence 查询参数类
34      * @return 返回list
35      */
36     <T extends Serializable> List<T> selectList(Class<?> mapperClass, SqlSentence sqlSentence);
37
38     /**查询列表,返回Map的List
39      * @param mapperClass mapper类
40      * @param sqlSentence 查询参数类
41      * @return Map的List
42      */
43     <T extends Serializable> List<Map<String,Object>> selectListMap(Class<?> mapperClass, SqlSentence sqlSentence);
44
45     /**查询,返回单个实体
46      * @param mapperClass mapper类
47      * @param sqlSentence 查询参数类
48      * @return 返回实体类
49      */
50     <T extends Serializable> T selectOne(Class<?> mapperClass, SqlSentence sqlSentence);
51
52     /**查询,返回单个map
53      * @param mapperClass mapper类
54      * @param sqlSentence 查询参数类
55      * @return 返回实体类
56      */
57     <T extends Serializable> Map<String,Object> selectOneMap(Class<?> mapperClass, SqlSentence sqlSentence);
58
59     /**查询,返回实体类没有大数据的
60      * @param mapperClass mapper类
61      * @param object 数据标识key
62      * @return 返回实体类
63      */
64     <T extends Serializable> T selectOneByKey(Class<?> mapperClass, Object object);
65
66     /**查询,返回实体类有大数据的
67      * @param mapperClass mapper类
68      * @param object 数据标识key
69      * @return 返回实体类
70      */
71     <T extends Serializable> T selectOneByKeyBlob(Class<?> mapperClass, Object object);
72
73     /**更新,返回更新数量
74      * @param mapperClass mapper类
75      * @param sqlParam 查询参数类
76      * @return 返回条数
77      */
78     <T extends Serializable> int updateWhere(Class<?> mapperClass, SqlParam sqlParam);
79
80     /**更新,返回更新数量
81      * @param mapperClass mapper类
82      * @param entity 实体类
83      * @return 返回条数
84      */
85     <T extends Serializable> int updateAll(Class<?> mapperClass, T entity);
86
87     /**删除,返回删除数量
88      * @param mapperClass mapper类
89      * @param sqlParam 查询参数类
90      * @return 返回条数
91      */
92     <T extends Serializable> int deleteWhere(Class<?> mapperClass, SqlParam sqlParam);
93
94     /**删除,返回删除数量
95      * @param mapperClass mapper类
96      * @param object 数据标识key
97      * @return 返回条数
98      */
99     <T extends Serializable> int deleteById(Class<?> mapperClass, Object object);
100     
101 }