根据Where 参数 查询记录总数
//        1.拼接SQL语句
// 2.获取Session(hibernateTemplate.getSessionFactory().getCurrentSession()),调用CreateQuery获取Query
// 3.调用query.uniqueResult()获取返回值
    @Override
public int getPageSize(String orgName, String evaPeriodCode, String evaDate) {
StringBuffer sql=new StringBuffer("select count(*) from EvaVirResult where 1=1 ");
if(StringUtils.isNotEmpty(orgName)){
sql.append(" and ORG_NAME ='").append(orgName).append("'");
}
if(StringUtils.isNotEmpty(evaPeriodCode)){
sql.append(" and EVA_PERIOD_CODE ='").append(evaPeriodCode).append("'");
}
if(StringUtils.isNotEmpty(evaDate)){
sql.append(" and EVA_DATE LIKE '%").append(evaDate).append("%'");
}
Query query=super.getCurrentSession().createQuery(sql.toString());
Object total=query.uniqueResult();
return !com.ciic.system.utils.string.StringUtils.isValid(total)?Integer.parseInt(total.toString()):0;
}

-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

分页查询符合条件的虚拟标杆
//        1.hibernate查询对象
// 2.添加分页条件
    @Override
public List<EvaVirResult> getVirtualModels(String orgName, String evaPeriodCode, String evaDate, int start, int pageSize) {
Criteria criteria = getCurrentSession().createCriteria(EvaVirResult.class);
if(!StringUtils.isEmpty(orgName)) {
criteria.add(Restrictions.eq("orgName", orgName));
}
if(!StringUtils.isEmpty(evaPeriodCode)){
criteria.add(Restrictions.eq("evaPeriodCode",evaPeriodCode));
}
if(!StringUtils.isEmpty(evaDate)){
criteria.add(Restrictions.like("evaDate","%"+evaDate+"%"));
}
criteria.setFirstResult(start*pageSize);
criteria.setMaxResults(pageSize);
return criteria.list();
}

-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

啦啦啦

啦啦啦

Hibernate -- Dao层 -- CURD -- 随记的更多相关文章

  1. sping整合hibernate之二:dao层开发

     在上一篇日志中将hibernate的会话工厂sessionFactory注入到了spring的容器中,但这样还不够,因为hibernate的增删改查是要使用事务机制的, 所以还要在spring中配置 ...

  2. hibernate+pageBean实现分页dao层功能代码

    今天闲来无事,摆弄了一下分页,突然发现很多代码长时间不用就生梳了,虽然有些基础,但没有一篇整合的.这里还是简单示例,主要是以后自己翻着看不用百度找啊找找不到一篇想要的 1.PageBean实体类,一页 ...

  3. SSH框架整合中Hibernate实现Dao层常用结构

    一.疑惑 一直以来,我在使用SSH框架的时候经常会发现后者有疑虑到底使用hibernate的那种方法或者如何配置hibernate来操作数据库,经过 一段时间的学习下面我来总结一下,常用的dao层配置 ...

  4. Hibernate -- 项目结构模型改造, 加 Utils 和 Dao层

    示例代码: App.java 模拟客户端 /** * 模拟客户端 */ public class App { @Test public void saveCustomer(){ CustomerDao ...

  5. SpringMVC + Hibernate + MySQL 的简易网页搭建(Dao层 实现篇)

    首先在搭建一个网站后台前,需要明确出一个合理的网页搭建的结构框架,即从DB  ==>  Dao层 ==>Service层 ==>Control层 ==>View层(该层严格意义 ...

  6. SSH 项目中 用Hibernate底层 简单的封装DAO层

    废话不多少了,主要是使用hibernate的查询方法,自己封装了DAO层,供service来方便使用. 首先:必须要继承的 public class CommonDao extends Hiberna ...

  7. Hibernate的Dao层通用设计

    hibernate作为一款优秀的数据库持久化框架,在现实的运用中是非常广泛的.它的出现让不熟悉sql语法的程序员能开发数据库连接层成为一种可能,但是理想与现实永远是有差距的.开发过程中如果只使用hql ...

  8. Java中Action层、Service层、Modle层和Dao层的功能区分

    一.Java中Action层.Service层.Modle层和Dao层的功能区分: 首先,这是现在最基本的分层方式,结合了SSH架构. modle层就是对应的数据库表的实体类.(即domain) Da ...

  9. SSH框架中POJO层, Dao层,Service层, Action层的功能理解

    pojo层就是对应的数据库表的实体类(如User类). dao层,一般可以再分为***dao接口和***daoImpl实现类,如userDao接口和userDaoImpl实现类,接口负责定义数据库cu ...

随机推荐

  1. 四种常见 Git 工作流比较

    BY 童仲毅(geeeeeeeeek@github) 这是一篇在原文(BY atlassian)基础上演绎的译文.除非另行注明,页面上所有内容采用知识共享-署名(CC BY 2.5 AU)协议共享. ...

  2. centos npm 安装后 command not found

    ok,

  3. mysql 5.7 离线安装

    删除原有的mariadbrpm -qa|grep mariadbrpm -e --nodeps mariadb-libs 安装rpm -ivh mysql-community-common-5.7.2 ...

  4. Go语言之高级篇beego框架之模型(Models)

    一.模型(Models) 1.beego-orm的相关特性 支持 Go 的所有类型存储 -轻松上手,采用简单的 CRUD 风格 -自动 Join 关联表 跨数据库兼容查询 允许直接使用 SQL 查询/ ...

  5. VirtualBox安装增强功能报错

    VirtualBox默认不支持调整分辨率,想调整分辨率需要安装增强功能,点击菜单->设备->安装增强功能 我在安装的时候报错了,提示: 这个时候注意虚拟机的桌面,其实这个时候已经加载了虚拟 ...

  6. 2014年新一代的报表利器 Qlik Sense Desktop 初步体验

    点击进入 QlikView/QlikSense 社区  交流群:432998033 Qlik Sense Desktop 的案例展示 先上几个刚刚边看边学完成的几个报表案例效果 (如果图片显示不正常, ...

  7. linux实现共享内存同步的四种方法

    https://blog.csdn.net/sunxiaopengsun/article/details/79869115 本文主要对实现共享内存同步的四种方法进行了介绍. 共享内存是一种最为高效的进 ...

  8. SqlDateTime overflow / SqlDateTime 溢出

    Error - SqlDateTime overflow. Must be between 1/1/1753 12:00:00 AM and 12/31/9999 11:59:59 PM SqlDat ...

  9. s3cmd用法总结

    概述 S3是亚马逊AWS提供的简单存储服务(可以理解为有公网域名的大容量高可用存储) S3配合CloudFront服务可作为CDN使用,它提供多节点全球发布 安装 方法一: yum install s ...

  10. C++11 并发指南四(<future> 详解三 std::future & std::shared_future)

    上一讲<C++11 并发指南四(<future> 详解二 std::packaged_task 介绍)>主要介绍了 <future> 头文件中的 std::pack ...