逍遥一派 发表于 2015-1-18 11:17:44

了解下JAVA的hibernate3进修条记(八) DetachedCriteria

多谢指点,其实我对.net网页编程和ruby也不是很了解,对与java也只是刚起步的阶段,只是在学习中有了点想法就写出来了,现在俺本科还没毕业,所以对大型项目基本上也没有什么经验。
仍然接着后面的例子:http://www.bianceng.cn/Programming/Java/201101/23637.htm
示例代码以下:

1.packagecom.hb3.pack_01;2.3.importjava.util.Iterator;4.importjava.util.List;5.
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.
13.importcom.hb3.pack_01.model.User;14.
15.publicclassBusinessService{16.
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:45

其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。

兰色精灵 发表于 2015-1-26 22:27:00

让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。

飘灵儿 发表于 2015-2-5 00:55:22

Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)

只想知道 发表于 2015-2-5 18:10:53

你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。

若相依 发表于 2015-2-10 02:59:39

Java是一种计算机编程语言,拥有跨平台、面向对java

活着的死人 发表于 2015-2-11 13:53:39

Pet Store.(宠物店)是SUN公司为了演示其J2EE编程规范而推出的开放源码的程序,应该很具有权威性,想学J2EE和EJB的朋友不要 错过了。

愤怒的大鸟 发表于 2015-2-13 05:12:24

还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。

莫相离 发表于 2015-2-14 21:03:47

是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能

因胸联盟 发表于 2015-3-4 10:29:53

Java 编程语言的风格十分接近C、C++语言。

冷月葬花魂 发表于 2015-3-9 22:09:48

象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。

透明 发表于 2015-3-11 09:29:49

Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。

仓酷云 发表于 2015-3-13 04:37:41

关于设计模式的资料,还是向大家推荐banq的网站 http://www.jdon.com/,他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。

山那边是海 发表于 2015-3-20 12:50:27

我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
页: [1]
查看完整版本: 了解下JAVA的hibernate3进修条记(八) DetachedCriteria