📄 basedao.java
字号:
package com.ntsky.bbs.dao;
import java.io.Serializable;
import java.sql.Connection;
import java.util.Collection;
import java.util.List;
import org.apache.log4j.Logger;
import org.hibernate.Session;
import org.springframework.dao.DataAccessException;
import com.ntsky.bbs.exception.DAOException;
import com.ntsky.bbs.exception.ObjectExistException;
/**
* DAO公共数据处理接口
*
* @author ntsky
* @link www.ntsky.com
*
* @version $Revision: 1.1 $ $Date: 2005/12/13 08:20:58 $
*/
public interface BaseDAO {
/**
* 取得数据库连接
* @return connection
*/
public Connection getConnection() throws DAOException;
/**
* 删除数据
* @param object 待删除的对象
*/
public void delete(Object object) throws DAOException ;
/**
* 根据hsql查询数据
* @param hsql hibernate sql
* @return List 数据集合
*/
public List find(String hsql) throws DAOException ;
/**
* 根据hsql查询数据
* @param hsql hibernate sql
* @param param sql字段
* @return List 数据集合
*/
//public List find(String hsql,Object param) throws DAOException ;
/**
* 根据hsql查询数据
* @param hsql hibernate sql
* @param param sql字段
* @return List 数据集合
*/
public List find(String hsql,Object[] params) throws DAOException ;
/**
* 根据查询名称取得集合
* @param queryName hbm文件中定义的查询名称
* @return List 对象集合
*/
public List findByNameQuery(String queryName, Object[] params) throws DAOException ;
/**
* 根据Class以及标示载入对象
* @param clazz
* @param id
* @return object 对象
*/
public Object load(Class clazz, Serializable id) throws DAOException ;
/**
* 保存数据
* @param object 对象数据
*/
public void save(Object object) throws DAOException ;
/**
* 保存对象
* @param object 对象数据
*/
public void saveOrUpdate(Object object) throws DAOException ;
/**
* 更新对象
* @param object 对象数据
*/
public void update(Object object) throws DAOException ;
/**
* 删除对象
* @param clazz 对象类别
* @param id 对象标识
*/
public void delete(Class clazz, Serializable id) throws DAOException ;
/**
* 根据对象取得信息
* @param clazz 对象名称
* @param id 序列化主键
* @return object 查询出的对象
*/
public Object get(Class clazz, Serializable id) throws DAOException ;
/**
* 取得对象总数
* @param hsql hibernate sql
* @param params 数组对象
* @return int 对象总数
*/
//public int getTotalObject(String hsql, Object[] params) ;
/**
* 取得对象总数
* @param hql hibernate sql
* @return Object 对象总数
*/
public Object findByAggregate(String hsql) throws DAOException ;
/**
* 执行Hsql语句
* <pre>
* 性能优化方法
* </pre>
* <ol>
* <li>执行批量操作,比如一次性执行多条SQL</li>
* <li>删除操作,避免先select再delete</li>
* </ol>
*
* @param hsql 查询语句
*/
public void executeHsql(String hsql) throws DAOException ;
/**
* 执行sql语句进行批量操作
*
* @param sql 查询语句
*/
/*public void executeSql(String sql);*/
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -