Hibernate常用方法之_查询
1、使用session的get方法
public User getUser(int id){
Session session = null;
User user = null;
try {
session = HibernateUtils.getSession();
/*根据主键获取一条记录*/
user = (User) session.get(User.class,id);
}finally {
if (session != null){
session.close();
}
}
return user;
}
2、使用HQL语言查询 Query
public User getUserBynName(String name){
User user = null;
Session session = null;
try {
session = HibernateUtils.getSession();
/*这里查的是User对象,不是user表,支持多态*/
String hql = " FROM User as user WHERE user.name = :name ";
Query query = session.createQuery(hql);
query.setString("name",name);
/*只返回一条记录,否则报错*/
user = (User) query.uniqueResult();
}finally {
if (session != null){
session.close();
}
}
return user;
}
public List<User> getUsersByName(String name){
List<User> users = null;
Session session = null;
try {
session = HibernateUtils.getSession();
/*这里查的是User对象,不是user表,支持多态*/
String hql = " FROM User as user WHERE user.name LIKE :name ";
Query query = session.createQuery(hql);
query.setString("name",name+"%");
query.setFirstResult(10);
query.setMaxResults(5);
users = query.list();
}finally {
if (session != null){
session.close();
}
}
return users;
}
3、使用条件查询 Criteria
public User getUserByNameCri(String name){
Session session = null;
User user = null;
try {
session = HibernateUtils.getSession();
/*条件查询*/
Criteria criteria = session.createCriteria(User.class);
/*添加约束条件*/
criteria.add(Restrictions.eq("name",name));
user = (User) criteria.uniqueResult();
}finally {
if (session != null){
session.close();
}
}
return user;
}
Hibernate常用方法之_查询的更多相关文章
- Hibernate常用方法之_删除
1.使用session的delete方法 public void deleteUser(User user){ Session session = null; Transaction transact ...
- Hibernate常用方法之_修改
1.使用session的saveOrUpdate方法 public void updateUser(User user){ Session session = null; Transaction tr ...
- Hibernate常用方法之_插入
1.使用session的save方法进行插入 public void saveUser(User user){ Session session = null; Transaction transact ...
- Hibernate框架笔记04HQL_QBC查询详解_抓取策略优化机制
目录 1. Hibernate的查询方式 1.1 方式一:OID查询 1.2 方式二:对象导航查询 1.3 方式三:HQL方式 1.4 方式四:QBC查询 1.5 方式五:SQL查询 2. 环境搭建 ...
- hibernate将本地SQL查询结果封装成对象
hibernate将本地SQL查询结果封装成对象 不知道大家有没有碰过这种情况,迫于很多情况只能用native SQL来查询(如:复杂统计等),然而使用native查询后,结果会被放到object里, ...
- [转载]Hibernate如何提升数据库查询的性能
目录(?)[-] 数据库查询性能的提升也是涉及到开发中的各个阶段在开发中选用正确的查询方法无疑是最基础也最简单的 SQL语句的优化 使用正确的查询方法 使用正确的抓取策略 Hibernate的性能优化 ...
- hibernate使用原生SQL查询返回结果集的处理
今天没事的时候,看到公司框架里有一个用原生SQL写的函数,说实在以前自己也干过这事,但好久都没有用,都忘得差不多了,现在基本都是用的hql语句来查询结果.hibernate中使用createSQLQu ...
- Hibernate 插入,修改,删除,查询语句
/* *具体操作hibernate的类 *增加,删除,修改,按ID查询,模糊查询,查询全部 **/ public class PersonOperate { //在hibernate中所有操作都是由S ...
- 13.hibernate的native sql查询(转自xiaoluo501395377)
hibernate的native sql查询 在我们的hibernate中,除了我们常用的HQL查询以外,还非常好的支持了原生的SQL查询,那么我们既然使用了hibernate,为什么不都采用hi ...
随机推荐
- jstl的<c:set 的问题
在使用jstl提供的set标签对javabean进行处理的时候发现直接打bean的名字会错 <jsp:useBean id="kkk" class="com.log ...
- 使用jQuery实现数字逆时针旋转
要实现数字逆转,最主要是分析我们页面的元素结果,结合选择器充分利用起来! 例如:以下lable中每一个id和值的安排具有一定结构的意义需要用心分析: jQuery代码:
- 如何理解NaN?
NaN这个特殊的Number与所有其他值都不相等,包括它自己: NaN===NaN: //false 唯一能判断NaN的方法是通过isNaN()函数: isNaN(NaN); //tr ...
- js-scroll判断页面是向上滚动还是向下滚动
原理:那当前的scrollTop和之前的scrollTop对比 如果变大了,表示向下滚动(scrollTop值变大): 如果变小了,表示向上滚动(scrollTop值变小). 方法一:js代码: $( ...
- 微信小程序引用iconfont图标字体解决方案;
1)首先,登录阿里巴巴iconfont.cn 2)新建项目 3)点击icon收藏 4)加入到test项目中 5)下载到本地解压 6)生成代码 7)复制iconfont.css到xxx.wx ...
- webBrowser 应用编程函数总结
/*============================说明部分================================= 实现一下函数需包含头文件 #include <Winine ...
- Python特别low的一个文字游戏
闲来无事 ,调侃舍友的游戏 import os class Role(): def __init__(self,name,sex,fighting): self.name=name self.sex= ...
- django开发傻瓜教程-3-celery异步处理
Ref: https://www.jianshu.com/p/6f8576a37a3e https://blog.csdn.net/Demo_3/article/details/78119951 ht ...
- struts2学习
struts2是一种基于mvc模式的轻量级web框架,它本质上相当于一个servlet,在mvc设计模式中,struts2作为控制器(Controller)来建立模型与视图的数据交互,struts2采 ...
- is和==,编码补充
一,is和==的区别: 1, 通过一个ID()可以查看到一个变量表示的值在内存中的地址. s = 'alex' print(id(s)) # 4326667072 s = "alex& ...