根据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. C# Dictionary<TKey,TValue>如何添加键重复的内容

    这里以Dictionary<string,string>为例 当我们实例化Dictionary<string,string>集合时,其中有一个重载构造方法如下: // // 摘 ...

  2. Revit API创建房间

    start [Transaction(TransactionMode.Manual)] [Regeneration(RegenerationOption.Manual)] );             ...

  3. IntelliJ IDEA2018.1、2017.3破解教程

    (1)下载破解补丁 把下载的破解补丁放在你的idea的安装目录下的bin的目录下面(如下图所示),本文示例为G:\idea\IntelliJ IDEA 2017.3.4 破解补丁下载:http://i ...

  4. tomcat管理页面403 Access Denied的解决方法

    安装tomcat,配置好tomcat环境变量以后,访问manager app页面,出现403 Access Denied错误,解决的方法如下: 首先在conf/tomcat-users.xml文件里面 ...

  5. .Net Core Base64加密解密

    一.Base64说明 1..Net Core中的Base64位加密解密和.Net Framework使用方式相同 2. Convert 类中提供了Base64位转码方法 Base64是网络上最常见的用 ...

  6. JavaScript 编码规范(中文/Airbnb公司版)

    Airbnb 是一家位于美国旧金山的公司,本文是其内部的 JavaScript编码规范,写得比较全面,在 Github 上有 16,686 + Star,3,080 + fork,前端开发人员可参考. ...

  7. JAVA消息服务JMS规范及原理详解

    JAVA消息服务JMS规范及原理详解 一.简介 JMS即Java消息服务(Java Message Service)应用程序接口,是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应 ...

  8. 树莓派3中没有/dev/video0的解决方法(使用OpenCV编程调用树莓派摄像头的方法)

    一.问题 使用下列方法调用OpenCV编程调用树莓派摄像头时总是失败,提示调用Grabber的start()时失败. import org.bytedeco.javacpp.opencv_core; ...

  9. Mongodb对集合(表)和数据的CRUD操作

    一.集合(对应数据库的表) 1.查看当前库里的所有集合 show collections 2.新建集合 显式创建 db.createCollection("user") 隐式创建 ...

  10. Intro to Jedis – the Java Redis Client Library

    转自:http://www.baeldung.com/jedis-java-redis-client-library 1. Overview This article is an introducti ...