⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 genericdao.java

📁 Spring多数据源的配置
💻 JAVA
字号:
/*
 * Created on Feb 13, 2007
 *
 */
package com.htxx.service.dao;

import java.io.Serializable;
import java.util.Collection;

/**
 * 通用DAO接口。当BUS使用单DAO时,使用该接口并将<b>BasicDao</b>作为其实现。
 * @author FanGang
 * @see com.htxx.service.dao.BasicDao
 */
public interface GenericDao {

    /**
     * 插入值对象
     * @param vo 值对象
     * @return 主键值
     */
    public Serializable insert(Object vo);

    /**
     * 更新值对象。该方法实现的是hibernate的saveOrUpdate(),因此可以自动识别该值对象是插入还是更新。
     * @param vo 值对象
     */
    public void update(Object vo);

    /**
     * 对集合进行更新
     * @param collection
     */
    public void update(Collection collection);
    
    /**
     * 根据查询条件批量更新,条件放在<b>Condition<b/>对象中。
     * @param clazz 值对象的类
     * @param condition 条件
     * @param proxy 处理更新内容的代理类,调用时采用匿名内部类的形式:
     * <pre>
     * new UpdateProxy(){
     *   public void execute(Object vo){
     *     SomeObj obj = (SomeObj)vo;
     *     obj.setXxx(value);
     *     ...
     *   }
     * }
     * </pre>
     * @see com.htxx.service.dao.Condition
     */
    public void update(Class clazz, Condition condition, UpdateProxy proxy);

    /**
     * 删除值对象
     * @param vo 值对象
     */
    public void delete(Object vo);

    /**
     * 根据主键值删除值对象
     * @param c 值对象的类
     * @param s 主键值
     */
    public void delete(Class c, Serializable s);

    /**
     * 根据查询条件批量删除,条件放在<b>Condition<b/>对象中。
     * @param clazz 值对象的类
     * @param condition 条件
     * @see com.htxx.service.dao.Condition
     */
    public void delete(Class clazz, Condition condition);

    /**
     * 得到一个值对象
     * @param c 值对象的类
     * @param s 主键值
     * @return 值对象
     */
    public Object load(Class c, Serializable s);

    /**
     * 查询count(*),条件放在<b>Condition<b/>对象中。
     * @param clazz 值对象的类
     * @param condition 条件
     * @return count(*)
     * @see com.htxx.service.dao.Condition
     */
    public int getCount(Class clazz, Condition condition);

    /**
     * 按条件分页查询,条件和分页信息放在<b>Condition<b/>对象中,
     * 查询的结果及其相关信息放在<b>ResultSet</b>对象中
     * @param clazz 值对象的类
     * @param condition 条件
     * @return 结果集
     * @see com.htxx.service.dao.Condition
     * @see com.htxx.service.dao.ResultSet
     */
    public ResultSet query(Class clazz, Condition condition);

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -