com.easyjf.core.dao
接口 GenericDAO<T>

所有已知实现类:
GenericDAOImpl

public interface GenericDAO<T>

作者:
easyjf.com 泛型DAO接口

方法摘要
 int batchUpdate(java.lang.String jpql, java.lang.Object[] params)
          根据jpql语句执行批量数据更新等操作
 java.util.List executeNamedQuery(java.lang.String queryName, java.lang.Object[] params, int begin, int max)
          根据一个查询条件及其参数,还有开始查找的位置和查找的个数来查找任意类型的对象。
 java.util.List executeNativeNamedQuery(java.lang.String nnq)
          执行SQL语句查询
 java.util.List executeNativeQuery(java.lang.String nnq, java.lang.Object[] params, int begin, int max)
           
 int executeNativeSQL(java.lang.String nnq)
          执行SQL语句
 java.util.List<T> find(java.lang.String query, java.lang.Object[] params, int begin, int max)
          根据一个查询条件及其参数,还有开始查找的位置和查找的个数来查找类型为T的对象。
 void flush()
           
 T get(java.io.Serializable id)
          根据Id查找一个类型为T的对象。
 T getBy(java.lang.String propertyName, java.lang.Object value)
          根据对象的一个属性名和该属性名对应的值来查找一个对象。
 java.util.List query(java.lang.String query, java.lang.Object[] params, int begin, int max)
          根据一个查询条件及其参数,还有开始查找的位置和查找的个数来查找任意类型的对象。
 void remove(java.io.Serializable id)
          根据对象id删除一个对象,该对象类型为T
 void save(T newInstance)
          持久化一个对象,该对象类型为T。
 void update(T transientObject)
          更新一个对象,主要用于更新一个在persistenceContext之外的一个对象。
 

方法详细信息

get

T get(java.io.Serializable id)
根据Id查找一个类型为T的对象。

参数:
id - 传入的ID的值
返回:
一个类型为T的对象

save

void save(T newInstance)
持久化一个对象,该对象类型为T。

参数:
newInstance - 需要持久化的对象,使用JPA标注。

remove

void remove(java.io.Serializable id)
根据对象id删除一个对象,该对象类型为T

参数:
id - 需要删除的对象的id。

update

void update(T transientObject)
更新一个对象,主要用于更新一个在persistenceContext之外的一个对象。

参数:
transientObject - 需要更新的对象,该对象不需要在persistenceContext中。

getBy

T getBy(java.lang.String propertyName,
        java.lang.Object value)
根据对象的一个属性名和该属性名对应的值来查找一个对象。

参数:
propertyName - 属性名
value - 属性名对应的值
返回:
一个对象,如果在该属性名和值的条件下找到多个对象,则抛出一个IllegalStateException异常

executeNamedQuery

java.util.List executeNamedQuery(java.lang.String queryName,
                                 java.lang.Object[] params,
                                 int begin,
                                 int max)
根据一个查询条件及其参数,还有开始查找的位置和查找的个数来查找任意类型的对象。

参数:
queryName - 命名查询的名字
params - 查询条件中的参数的值。使用Object数组,要求顺序和查询条件中的参数位置一致。
begin - 开始查询的位置
max - 需要查询的对象的个数
返回:
一个任意对象的List对象,如果没有查到任何数据,返回一个空的List对象。

find

java.util.List<T> find(java.lang.String query,
                       java.lang.Object[] params,
                       int begin,
                       int max)
根据一个查询条件及其参数,还有开始查找的位置和查找的个数来查找类型为T的对象。

参数:
query - 查询的条件,使用位置参数,对象名统一为obj,查询条件从where后开始。比如:obj.name = ?1 and obj.properties = ?2
params - 查询条件中的参数的值。使用Object数组,要求顺序和查询条件中的参数位置一致。
begin - 开始查询的位置
max - 需要查询的对象的个数
返回:
一个该类型对象的List对象,如果没有查到任何数据,返回一个空的List对象。

query

java.util.List query(java.lang.String query,
                     java.lang.Object[] params,
                     int begin,
                     int max)
根据一个查询条件及其参数,还有开始查找的位置和查找的个数来查找任意类型的对象。

参数:
query - 完整的查询语句,使用位置参数。比如:select user from User user where user.name = ?1 and user.properties = ?2
params - 查询条件中的参数的值。使用Object数组,要求顺序和查询条件中的参数位置一致。
begin - 开始查询的位置
max - 需要查询的对象的个数
返回:
一个任意对象的List对象,如果没有查到任何数据,返回一个空的List对象。

batchUpdate

int batchUpdate(java.lang.String jpql,
                java.lang.Object[] params)
根据jpql语句执行批量数据更新等操作

参数:
jpql - 需要执行jpql语句
params - 语句中附带的参数
返回:

executeNativeNamedQuery

java.util.List executeNativeNamedQuery(java.lang.String nnq)
执行SQL语句查询

参数:
nnq -
返回:

executeNativeQuery

java.util.List executeNativeQuery(java.lang.String nnq,
                                  java.lang.Object[] params,
                                  int begin,
                                  int max)

executeNativeSQL

int executeNativeSQL(java.lang.String nnq)
执行SQL语句

参数:
nnq -
返回:

flush

void flush()