- 浏览: 411115 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (244)
- struts2 (15)
- ognl (1)
- hibernate (17)
- gwt (17)
- GROOVY (2)
- GRAILS学习 (7)
- SPRING (4)
- AJAX (2)
- JQUERY (6)
- XML (1)
- DWR (3)
- 线程 (0)
- SVN (0)
- json (1)
- anotation (0)
- 反射 (2)
- rapidframework (0)
- OA工作流 (2)
- 事务 (0)
- mysql (0)
- oracle (26)
- EXTJ (0)
- 求职 (2)
- 随笔 (22)
- 注释 (1)
- java综合 (30)
- 设计模式 (1)
- JSP SERVLET (2)
- 插件 (7)
- 应用 (3)
- HTML (5)
- flex (13)
- android (8)
- javascript (14)
- Exception (0)
- Linux (2)
- 计算机常识 (3)
- EXCEL (2)
- 正则表达式 (1)
- 开源工具 (2)
- 测试 (1)
- 生活 (7)
- 房子 (0)
- 购房大学 (4)
- UML (1)
- 服务器 (1)
- 发展 (1)
- 英语 (1)
- 项目管理 (1)
- 摘 (1)
- 网站 (1)
最新评论
-
a347911:
架构师教程:https://note.youdao.com/s ...
架构师之路--- 一个四年 JAVA 程序员的工作经历 转 -
hzxlb910:
对我帮助很大。
架构师之路--- 一个四年 JAVA 程序员的工作经历 转 -
xly_971223:
引用因此,while (!isInterrupted())也可 ...
Java 终止线程方法 -
zdglt88:
其实这个datagrid挺简单的,没有难度
Jquery easy ui 之datagrid简介 -
完善自我:
抓住重点,支持一下!
Jquery easy ui 之datagrid简介
HQL 注意事项:
1.请把以前sql中的表名换成类名,把字段名换成属性名。注意我不是说HQL里的类名都是表名。类名>表名
2.这里就看一个select 类的例子,一便说明一下多态
person是man和woman的父类吧,在HQL中可以这样写:
from Person p
这就表示查出所有人了。
3.当然sql中的select from where group by having order by这些,HQL也是支持的了。
4.取一条记录query.uniqueResult()
5.取多个记录query.list()
6.分页。在执行查询之前
query.setFirstResult(0)
query.setMaxResult(2)
注意在这里的0是开始下标。2是从开始下标的一页的记录数
7.绑定参数
?---------------------query.setString(1)
:name---------------query.setString(name,"jiaxiao")
:entity---------------query.setEntity(entity,jnew Person())
8.内连接
from Company c inner join c.employees e;
相当于select c.*,e.* from company c, c.employees e where c.id=e.compid(+)
返回的是一个object[]
还可以级联
from A a left join a.b b leftc join b.c c
隐式查询:
from Province p where p.City.name="guanyuan";
此外还有子查询,组函数等
from Company c where 1< ( select count(*) from c.employees e);
投影查询:
select new 包名.类名(e.name,c.name) from company c left join c.employee e
这个类为一个普通的POJO只有 e.name,c.name两个属性
集合过滤
select c from Company c left join Employee e
sess.createFilter(c.getEmployee(),"where e.name='xx'");
条件查询
Java代码 复制代码
1. //条件查询,参数索引值从0开始,索引位置。通过setString,setParameter设置参数
2. String hql = "from Users where name=? and passwd=?";
3. Query query = session.createQuery(hql);
4. //第1种方式
5. // query.setString(0, "name1");
6. // query.setString(1, "password1");
7. //第2种方式
8. query.setParameter(0, "name1",Hibernate.STRING);
9. query.setParameter(1, "password1",Hibernate.STRING);
10. List<Users> list = query.list();
11. for(Users users : list){
12. System.out.println(users.getId());
13. }
//条件查询,参数索引值从0开始,索引位置。通过setString,setParameter设置参数
String hql = "from Users where name=? and passwd=?";
Query query = session.createQuery(hql);
//第1种方式
// query.setString(0, "name1");
// query.setString(1, "password1");
//第2种方式
query.setParameter(0, "name1",Hibernate.STRING);
query.setParameter(1, "password1",Hibernate.STRING);
List<Users> list = query.list();
for(Users users : list){
System.out.println(users.getId());
}
Java代码 复制代码
1. //条件查询,自定义索引名(参数名):username,:password.通过setString,setParameter设置参数
2. String hql = "from Users where name=:username and passwd=:password";
3. Query query = session.createQuery(hql);
4. //第1种方式
5. // query.setString("username", "name1");
6. // query.setString("password", "password1");
7. //第2种方式,第3个参数确定类型
8. query.setParameter("username", "name1",Hibernate.STRING);
9. query.setParameter("password", "password1",Hibernate.STRING);
10. List<Users> list = query.list();
11. for(Users users : list){
12. System.out.println(users.getId());
13. }
//条件查询,自定义索引名(参数名):username,:password.通过setString,setParameter设置参数
String hql = "from Users where name=:username and passwd=:password";
Query query = session.createQuery(hql);
//第1种方式
// query.setString("username", "name1");
// query.setString("password", "password1");
//第2种方式,第3个参数确定类型
query.setParameter("username", "name1",Hibernate.STRING);
query.setParameter("password", "password1",Hibernate.STRING);
List<Users> list = query.list();
for(Users users : list){
System.out.println(users.getId());
}
Java代码 复制代码
1. //条件查询,通过setProperties设置参数
2. String hql = "from Users where name=:username and passwd=:password";
3. Query query = session.createQuery(hql);
4. //MyUser类的2个属性必须和:username和:password对应
5. MyUser myUser = new MyUser("name1","password1");
6. query.setProperties(myUser);
7. List<Users> list = query.list();
8. for(Users users : list){
9. System.out.println(users.getId());
10. }
Code
List list=session.createQuery(“select new User(user.name,user.age) from User user ”).list();
for(int i=0;i
User user=(User)list.get(i);
user.setName(“gam”);
session.saveOrUpdate(user);//
Hibernate中持久化类的对象可以划分为三种状态,分别是瞬态,持久态,脱管态。
1. 瞬态(Transient),也叫临时态。处于这种状态的对象具备的特征如下:
a) 不在Session的缓存中,不与任何的Session实例相关联。
b) 在数据库中没有与之相对应的记录。
2. 持久态(Persistent),处于这种状态的对象具备的特征如下:
a) 在Session的缓存中,与Session实例相关联。
b) 在数据库中存在与之相对应的记录。
3. 脱管态(Detached),也叫游离态。处于这种状态的对象具备的特征如下:
a) 不在Session的缓存中,不与任何的Session实例相关联。
b) 在数据库中存在与之相对应的记录。(前提条件是没有其他Session实例删除该条记录)。
1.请把以前sql中的表名换成类名,把字段名换成属性名。注意我不是说HQL里的类名都是表名。类名>表名
2.这里就看一个select 类的例子,一便说明一下多态
person是man和woman的父类吧,在HQL中可以这样写:
from Person p
这就表示查出所有人了。
3.当然sql中的select from where group by having order by这些,HQL也是支持的了。
4.取一条记录query.uniqueResult()
5.取多个记录query.list()
6.分页。在执行查询之前
query.setFirstResult(0)
query.setMaxResult(2)
注意在这里的0是开始下标。2是从开始下标的一页的记录数
7.绑定参数
?---------------------query.setString(1)
:name---------------query.setString(name,"jiaxiao")
:entity---------------query.setEntity(entity,jnew Person())
8.内连接
from Company c inner join c.employees e;
相当于select c.*,e.* from company c, c.employees e where c.id=e.compid(+)
返回的是一个object[]
还可以级联
from A a left join a.b b leftc join b.c c
隐式查询:
from Province p where p.City.name="guanyuan";
此外还有子查询,组函数等
from Company c where 1< ( select count(*) from c.employees e);
投影查询:
select new 包名.类名(e.name,c.name) from company c left join c.employee e
这个类为一个普通的POJO只有 e.name,c.name两个属性
集合过滤
select c from Company c left join Employee e
sess.createFilter(c.getEmployee(),"where e.name='xx'");
条件查询
Java代码 复制代码
1. //条件查询,参数索引值从0开始,索引位置。通过setString,setParameter设置参数
2. String hql = "from Users where name=? and passwd=?";
3. Query query = session.createQuery(hql);
4. //第1种方式
5. // query.setString(0, "name1");
6. // query.setString(1, "password1");
7. //第2种方式
8. query.setParameter(0, "name1",Hibernate.STRING);
9. query.setParameter(1, "password1",Hibernate.STRING);
10. List<Users> list = query.list();
11. for(Users users : list){
12. System.out.println(users.getId());
13. }
//条件查询,参数索引值从0开始,索引位置。通过setString,setParameter设置参数
String hql = "from Users where name=? and passwd=?";
Query query = session.createQuery(hql);
//第1种方式
// query.setString(0, "name1");
// query.setString(1, "password1");
//第2种方式
query.setParameter(0, "name1",Hibernate.STRING);
query.setParameter(1, "password1",Hibernate.STRING);
List<Users> list = query.list();
for(Users users : list){
System.out.println(users.getId());
}
Java代码 复制代码
1. //条件查询,自定义索引名(参数名):username,:password.通过setString,setParameter设置参数
2. String hql = "from Users where name=:username and passwd=:password";
3. Query query = session.createQuery(hql);
4. //第1种方式
5. // query.setString("username", "name1");
6. // query.setString("password", "password1");
7. //第2种方式,第3个参数确定类型
8. query.setParameter("username", "name1",Hibernate.STRING);
9. query.setParameter("password", "password1",Hibernate.STRING);
10. List<Users> list = query.list();
11. for(Users users : list){
12. System.out.println(users.getId());
13. }
//条件查询,自定义索引名(参数名):username,:password.通过setString,setParameter设置参数
String hql = "from Users where name=:username and passwd=:password";
Query query = session.createQuery(hql);
//第1种方式
// query.setString("username", "name1");
// query.setString("password", "password1");
//第2种方式,第3个参数确定类型
query.setParameter("username", "name1",Hibernate.STRING);
query.setParameter("password", "password1",Hibernate.STRING);
List<Users> list = query.list();
for(Users users : list){
System.out.println(users.getId());
}
Java代码 复制代码
1. //条件查询,通过setProperties设置参数
2. String hql = "from Users where name=:username and passwd=:password";
3. Query query = session.createQuery(hql);
4. //MyUser类的2个属性必须和:username和:password对应
5. MyUser myUser = new MyUser("name1","password1");
6. query.setProperties(myUser);
7. List<Users> list = query.list();
8. for(Users users : list){
9. System.out.println(users.getId());
10. }
Code
List list=session.createQuery(“select new User(user.name,user.age) from User user ”).list();
for(int i=0;i
User user=(User)list.get(i);
user.setName(“gam”);
session.saveOrUpdate(user);//
Hibernate中持久化类的对象可以划分为三种状态,分别是瞬态,持久态,脱管态。
1. 瞬态(Transient),也叫临时态。处于这种状态的对象具备的特征如下:
a) 不在Session的缓存中,不与任何的Session实例相关联。
b) 在数据库中没有与之相对应的记录。
2. 持久态(Persistent),处于这种状态的对象具备的特征如下:
a) 在Session的缓存中,与Session实例相关联。
b) 在数据库中存在与之相对应的记录。
3. 脱管态(Detached),也叫游离态。处于这种状态的对象具备的特征如下:
a) 不在Session的缓存中,不与任何的Session实例相关联。
b) 在数据库中存在与之相对应的记录。(前提条件是没有其他Session实例删除该条记录)。
发表评论
-
hibernate抓取策略
2012-04-20 09:58 1267Hibernate3 定义了如下几种抓取策略: 连接抓取( ... -
BLOB和CLOB的区别以及在ORALCE中的插入和查询操作
2012-04-09 12:59 1547ORACLE中的大对象: LONG: 可变长的字符串数据,最 ... -
Spring中关于SqlRowSet的Invalid scale size. Cannot be less than zero异常处理
2012-03-28 13:10 3750在使用Spring中使用JdbcTemplate.queryF ... -
hibernate open session in view 抛出异常解决方法
2012-03-23 20:52 1159http://www.blogjava.net/dreamst ... -
jdbcTemplate使用总结1
2011-09-20 15:16 1341SqlRowSet rs = jdbcTemplate.que ... -
java.lang.String 与string
2011-06-24 15:58 1001个人认为string应该是java.lang.String与数 ... -
hibernate一对多sort和order by
2011-04-15 09:23 15461. 從資料庫的觀點 ... -
Hibernate对集合排序
2011-04-15 09:19 1689Hibernate对集合中的元素支持两种排序方式: Ø 在数 ... -
Hibernate之deleted object would be re-saved by cascade 异常的解决
2011-02-24 11:31 908以下是我在网上找到的, 我用了第二种方法,奇怪的是: 我在ac ... -
hql 多表查询
2011-01-20 18:19 1114String sql = "select test1 ... -
拼接字符串的学习
2010-12-22 21:58 919package com.ccid.str; import j ... -
[原创]多条件模糊查询的通用代码
2010-12-22 18:31 1475str_query1 = "se ... -
Hibernate中使用Hql查询出一定时间段的记录【 Date 比较】
2010-12-22 18:30 19980// 初步过滤出符合条件的区域ID String sql = ... -
Hibernate 中 UUID.HEX的实现机制??
2010-11-26 10:13 3557Hibernate主键生成方式 Key ... -
为什么我们要研究Hibernate ?-----转载自J道
2010-10-08 15:56 1038最近论坛上关于Hibernate ... -
HQL中修改对象属性的句子
2010-05-20 15:54 2062def newInstance = Organization. ...
相关推荐
hibernate学习笔记 hibernate学习笔记 hibernate学习笔记 hibernate学习笔记 hibernate学习笔记 hibernate学习笔记 hibernate学习笔记 hibernate学习笔记
Hibernate学习笔记_特别详细 Hibernate学习笔记_特别详细
学习hibernate框架时,整理的笔记,对hibernate框架有全面的介绍
Java相关课程系列笔记之十四Hibernate学习笔记
Hibernate学习笔记Hibernate学习笔记Hibernate学习笔记Hibernate学习笔记
hibernate 学习笔记精要hibernate 学习笔记精要hibernate 学习笔记精要hibernate 学习笔记精要
达内HIBERNATE学习笔记,达内HIBERNATE学习笔记,达内HIBERNATE学习笔记,达内HIBERNATE学习笔记,
这套笔记是我学习Hibernate,进行相关技术点训练时记录下来的,其中包括技术点说明与相关事例,拿出来与大家分享。
hibernate学习笔记 hibernate
Hibernate学习笔记!
hibernate学习笔记文档
马士兵hibernate学习笔记,方便学习hibernate