All Downloads are FREE. Search and download functionalities are using the official Maven repository.

system.db.dao.SelectDaoImp Maven / Gradle / Ivy

The newest version!
package system.db.dao;

import java.util.List;
import system.db.dao.s.SelectDao;
import system.db.sql.SQL;

/**
 *
 * @author wangchunzi
 */
final public class SelectDaoImp implements SelectDao {

    private final SQL sql;
    private final ADUS adus;
    
    public SelectDaoImp(final ADUS adus, final SQL sql) {
        this.sql =sql;
        this.adus=adus;
    }

    
    /**
     * 查询一条记录,根据ID
     *
     * @param  泛型
     * @param c 类型
     * @param id
     * @return T
     */
    @Override
    public  T selectOneByID(Class c, String id) {
        return adus.executeQueryOne(c, sql.selectOneByID(c, id));
    }

    /**
     * 查询一条记录。根据条件
     *
     * @param  泛型
     * @param c 类型
     * @param condition
     * @return T
     */
    @Override
    public  T selectOneByCondition(Class c, String condition) {
        return adus.executeQueryOne(c, sql.selectOneByCondition(c, condition));
    }

    /**
     * 查询表的总记录数
     *
     * @param c 类型
     * @return int
     */
    @Override
    public int selectCount(Class c) {
        return adus.executeQueryCount(sql.selectCount(c));
    }

    /**
     * 查询表的记录数 根据条件
     *
     * @param c 类型
     * @param condition
     * @return int
     */
    @Override
    public int selectCountByCondition(Class c, String condition) {
        return adus.executeQueryCount(sql.selectCountByCondition(c, condition));
    }

    /**
     * 查询所有
     *
     * @param  泛型
     * @param c 类型
     * @return List
     */
    @Override
    public  List select(Class c) {
        return adus.executeQueryVast(c, sql.select(c));
    }

    /**
     * 查询所有,并进行自定义排序
     *
     * @param  泛型
     * @param c 类型
     * @param orderby 对于数据库字段前缀:无!
     * @return List
     */
    @Override
    public  List select(Class c, String orderby) {
        return adus.executeQueryVast(c, sql.select(c, orderby));
    }

    /**
     * 查询所有 根据条件
     *
     * @param  泛型
     * @param c 类型
     * @param condition
     * @return List
     */
    @Override
    public  List selectByCondition(Class c, String condition) {
        return adus.executeQueryVast(c, sql.selectByCondition(c, condition));
    }

    /**
     * 查询所有,根据条件,并进行自定义排序
     *
     * @param  泛型
     * @param c 类型
     * @param condition 条件
     * @param orderby 对于数据库字段前缀:无!
     * @return List
     */
    @Override
    public  List selectByCondition(Class c, String condition, String orderby) {
        return adus.executeQueryVast(c, sql.selectByCondition(c, condition, orderby));
    }

    /**
     * 分页查询
     *
     * @param  泛型
     * @param c 类型
     * @param page
     * @param pageCount
     * @return List
     */
    @Override
    public  List selectVast(Class c, int page, int pageCount) {
        return adus.executeQueryVast(c, sql.selectVast(c, page, pageCount));
    }

    /**
     * 分页查询 并进行排序
     *
     * @param  泛型
     * @param c 类型
     * @param page
     * @param pageCount
     * @param orderby
     * @return List
     */
    @Override
    public  List selectVast(Class c, int page, int pageCount, String orderby) {
        return adus.executeQueryVast(c, sql.selectVast(c, page, pageCount, orderby));
    }

    /**
     * 分页查询 根据条件
     *
     * @param  泛型
     * @param c 类型
     * @param page 
     * @param pageCount
     * @param condition
     * @return List
     */
    @Override
    public  List selectVastByCondition(Class c, int page, int pageCount, String condition) {
        return adus.executeQueryVast(c, sql.selectVastByCondition(c, page, pageCount, condition));
    }

    /**
     * 分页查询 根据条件 并进行排序
     *
     * @param  泛型
     * @param c 类型
     * @param page
     * @param pageCount
     * @param condition
     * @param orderby
     * @return List
     */
    @Override
    public  List selectVastByCondition(Class c, int page, int pageCount, String condition, String orderby) {
        return adus.executeQueryVast(c, sql.selectVastByCondition(c, page, pageCount, condition, orderby));
    }


}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy