Hibernate查询用法总结
1.主键查询的方法
User u = (User)session.get(User.class,1);
//支持懒加载
User u = (User)session.load(User.class,1);
2.HQL查询方法
特别注意的是查询语句必须是实体类的方法名,不能是表名称,必须和sql语句查询区别:
HQL查询和sql查询的区别:
1)sql查询是表以及字段,不区分大小写,也叫作结构化的查询语句;
2)HQL查询是Hibernate提供的面向对象的查询语句,查询的是对象以及对象的属性,区分大小写。
3.完全面向对象的查询,Criteria查询也叫作QBC查询 query by criteria
核心代码:
//Criteria查询也叫做 QBC查询 query by criteria
//完全的面向对象的查询
Criteria criteria = session.createCriteria(User.class);
//添加条件
criteria.add(Restrictions.eq("id", 1));
//查询全部,没有sql语句
List<User> list = criteria.list();
System.out.println(list);
4.本地查询sql语句,适合查询发在的查询,或者不想使用HQL或者criteria查询,可以使用本地sql查询。
缺点:不能跨越数据库,一般不适用,除非遇到非常复杂的sql语句才使用
核心代码:
NativeQuery<?> query = session.createSQLQuery(sql);//设置sql中?的值query.setParameter(0, num);//设置查询字段的数据类型query.addScalar("NUM", StandardBasicTypes.INTEGER);//获取查询结果List<?> list = query.getResultList();
Hibernate查询用法总结相关推荐
- Hibernate 具体用法(自整理)
为什么80%的码农都做不了架构师?>>> 框架的概念是一个提供了可重用的公共结构的半成品 SSH是指:Struts 2 + Spring + Hibernate 框架的强大之处 ...
- Hibernate 查询Criterion数据
Hibernate查询Criterion数据 最近在项目中使用 Spring 和 Hibernate 进行开发,有感于 Criteria 比较好用,在查询方法设计上可以灵活的根据 Criteria 的 ...
- Hibernate查询性能优化技巧
数据库查询性能的提升也是涉及到开发中的各个阶段,在开发中选用正确的查询方法无疑是最基础也最简单的. SQL语句的优化 使用正确的SQL语句可以在很大程度上提高系统的查询性能.获得同样数据而采用不同方式 ...
- Hibernate查询以及优化策略
文章目录 回顾 今天任务 教学目标 Hibernate查询 Hibernate优化策略 ==一. HQL查询== 1. HQL单表查询 1.1 准备项目 1.2 HQL单表基本查询 2. HQL多表查 ...
- php中条件查询语句,thinkphp3.2框架中where条件查询用法总结
本文实例讲述了thinkphp3.2框架中where条件查询用法.分享给大家供大家参考,具体如下: thinkphp3.2 where 条件查询 在连贯操作中条件where的操作有时候自己很晕,所以整 ...
- Linux下Mysql的查询用法
Linux下Mysql的查询用法 一.Mysql的delete删除语法 1.删除数据库 2.删除数据库的表 二.查询数据 1.基本查询 2.条件查询 三.数据库插入数据 1.创建新表 2.插入数据 四 ...
- c3p0 参数 模糊查询_MySQL模糊查询用法大全(正则、通配符、内置函数等)
文章来源:MySQL模糊查询用法大全(正则.通配符.内置函数等) 原文作者:陈哈哈 来源平台:CSDN SELECT * from table where username like '%陈哈哈%' ...
- Hibernate查询缓存全面分析
http://blog.csdn.net/security08/article/details/5670980 这里介绍Hibernate查询缓存对Iterator不起作用,只对List起作用. 缓存 ...
- Restrictions查询用法
Restrictions查询用法 HQL运算符 QBC运算符 含义 = Restrictions.eq() 等于equal <> Restrictions.ne() 不等于not equ ...
最新文章
- Oracle11g密码忘记处理方法
- 手机号中间四位处理为‘****’
- 报表查询——自动刷新数据,双击明细打开关联作业
- 如何删除SQL Server下注册的服务器
- 第一章 计算机系统概述 1.2.1 计算机硬件的基本组成 [计算机组成原理笔记]
- 通过printf从目标板到调试器的输出
- (王道408考研数据结构)第六章图-第四节4:最短路径之迪杰斯特拉算法(思想、代码、演示、答题规范)
- 谁给小鹏P5的勇气?
- VMware 11安装Mac OS X 10.10
- 固态和机械硬盘组raid_联想G400拆机步骤(固态硬盘替换机械硬盘,机械硬盘替换光驱)...
- Python内置容器(2)——字典,迭代器,列表解析
- Python 3 进阶 —— print 打印和输出
- 在IIS上SSL的部署和启动SSL安全
- 科普:什么是人工智能
- 操作系统的作用及基本特性
- win10升级补丁_干掉烦人的win10升级助手gwx
- Pandas里面的加权平均,我猜你不会用!
- 字符串前面添加u,r,b的含义
- 支付二维码整合 - 三码合一支持支付宝、QQ、微信
- 转载:从软件工程师到IT猎头续:告诉你如何写简历
热门文章
- 为什么我的程序在完全循环8192个元素时会变慢?
- 什么是Android上的“上下文”?
- activiti流程变量
- grafana计算不同时间的差值_大数据时代!如何基于Spark Streaming构建实时计算平台...
- GPS/BDS:LAC区域码和CELLID移动基站ID
- linux删除0字节的文件,如何在linux中删除许多0字节的文件?
- php 命令设计模式示例,php设计模式(十九)命令模式-Fun言
- php项目源码发布linux,php代码上传到linux服务器无法正常显示
- web浏览器_微软低头,Chrome 一统浏览器!
- mysql主从同步破坏测试_mysql主从同步 错误测试(1)