仓酷云

标题: 了解下JAVA的hibernate3进修条记(八) DetachedCriteria [打印本页]

作者: 逍遥一派    时间: 2015-1-18 11:17
标题: 了解下JAVA的hibernate3进修条记(八) DetachedCriteria
多谢指点,其实我对.net网页编程和ruby也不是很了解,对与java也只是刚起步的阶段,只是在学习中有了点想法就写出来了,现在俺本科还没毕业,所以对大型项目基本上也没有什么经验。
仍然接着后面的例子:http://www.bianceng.cn/Programming/Java/201101/23637.htm
示例代码以下:
  1. 1.packagecom.hb3.pack_01;2.3.importjava.util.Iterator;4.importjava.util.List;5.
  2. 6.importorg.hibernate.Criteria;7.importorg.hibernate.Session;8.importorg.hibernate.SessionFactory;9.importorg.hibernate.cfg.Configuration;10.importorg.hibernate.criterion.DetachedCriteria;11.importorg.hibernate.criterion.Restrictions;12.
  3. 13.importcom.hb3.pack_01.model.User;14.
  4. 15.publicclassBusinessService{16.
  5. 17.publicstaticvoidmain(String[]args){18.19.Configurationconfig=newConfiguration().configure();20.SessionFactorysessionFactory=config.buildSessionFactory();21.22.23.DetachedCriteriadetchedCriteria=DetachedCriteria.forClass(User.class);24.detchedCriteria.add(Restrictions.ge("age",newInteger(20)));25.26.Sessionsession=sessionFactory.openSession();27.Criteriacriteria=detchedCriteria.getExecutableCriteria(session);28.29.List<?>users=criteria.list();30.Iterator<?>iterator=users.iterator();31.System.out.println("id        name/age");32.while(iterator.hasNext()){33.Userur=(User)iterator.next();34.System.out.println(ur.getId()+"        "+ur.getName()+"/"+ur.getAge());35.}36.37.session.close();38.sessionFactory.close();39.}40.}
复制代码
Criteria和Session绑定的,但DetachedCriteria则分歧。
这是在Hibernate3中新增的类,目标是为了可以反复利用Criteria。其利用办法请参看后面对Criteria的先容:
http://blog.csdn.net/kunshan_shenbin/archive/2008/09/02/2866977.aspx

关于第二点:俺问问你,如果是企业级项目的话,诸如RMI,EJB,等一些关键技术,这些难道都不需要学么?如果光是使用jsp,servlet,javabean的话。
作者: 小女巫    时间: 2015-1-20 19:39
其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。
作者: 兰色精灵    时间: 2015-1-26 22:27
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
作者: 飘灵儿    时间: 2015-2-5 00:55
Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)
作者: 只想知道    时间: 2015-2-5 18:10
你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。
作者: 若相依    时间: 2015-2-10 02:59
Java是一种计算机编程语言,拥有跨平台、面向对java
作者: 活着的死人    时间: 2015-2-11 13:53
Pet Store.(宠物店)是SUN公司为了演示其J2EE编程规范而推出的开放源码的程序,应该很具有权威性,想学J2EE和EJB的朋友不要 错过了。
作者: 愤怒的大鸟    时间: 2015-2-13 05:12
还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。
作者: 莫相离    时间: 2015-2-14 21:03
是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
作者: 因胸联盟    时间: 2015-3-4 10:29
Java 编程语言的风格十分接近C、C++语言。
作者: 冷月葬花魂    时间: 2015-3-9 22:09
象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。
作者: 透明    时间: 2015-3-11 09:29
Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。
作者: 仓酷云    时间: 2015-3-13 04:37
关于设计模式的资料,还是向大家推荐banq的网站 [url]http://www.jdon.com/[/url],他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。
作者: 山那边是海    时间: 2015-3-20 12:50
我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2