仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 716|回复: 9
打印 上一主题 下一主题

[学习教程] 来看hibernate3进修条记(七) Criteria Queries

[复制链接]
飘飘悠悠 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:17:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
而学习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.Hibernate;8.importorg.hibernate.Session;9.importorg.hibernate.SessionFactory;10.importorg.hibernate.cfg.Configuration;11.importorg.hibernate.criterion.Example;12.importorg.hibernate.criterion.Order;13.importorg.hibernate.criterion.ProjectionList;14.importorg.hibernate.criterion.Projections;15.importorg.hibernate.criterion.Property;16.importorg.hibernate.criterion.Restrictions;17.importorg.hibernate.type.Type;18.
  3. 19.importcom.hb3.pack_01.model.User;20.
  4. 21.publicclassBusinessService{22.
  5. 23.publicstaticvoidmain(String[]args){24.25.Configurationconfig=newConfiguration().configure();26.SessionFactorysessionFactory=config.buildSessionFactory();27.Sessionsession=sessionFactory.openSession();28.29.Criteriacriteria=session.createCriteria(User.class);30.criteria.addOrder(Order.asc("age"));31.List<?>users=criteria.list();32.printUserInfo(users);33.34.criteria=session.createCriteria(User.class);35.criteria.add(Restrictions.gt("age",newInteger(22)));36.criteria.add(Restrictions.lt("age",newInteger(27)));37.users=criteria.list();38.printUserInfo(users);39.40.criteria=session.createCriteria(User.class);41.criteria.add(Restrictions.or(42.Restrictions.eq("age",newInteger(23)),43.Restrictions.isNull("age")44.));45.users=criteria.list();46.printUserInfo(users);47.48.criteria=session.createCriteria(User.class);49.criteria.add(Restrictions.sqlRestriction("{alias}.nameLIKE(?)","%ya%",Hibernate.STRING));50.users=criteria.list();51.printUserInfo(users);52.53.criteria=session.createCriteria(User.class);54.Integer[]ages={newInteger(26),newInteger(28)};55.Type[]types={Hibernate.INTEGER,Hibernate.INTEGER};56.criteria.add(Restrictions.sqlRestriction("{alias}.ageBETWEEN(?)AND(?)",ages,types));57.users=criteria.list();58.printUserInfo(users);59.60.criteria=session.createCriteria(User.class);61.criteria.setFirstResult(3);62.criteria.setMaxResults(2);63.users=criteria.list();64.printUserInfo(users);65.66.criteria=session.createCriteria(User.class);67.criteria.setProjection(Projections.rowCount());68.users=criteria.list();69.Iterator<?>iterator=users.iterator();70.while(iterator.hasNext()){71.System.out.println(iterator.next());72.}73.74.criteria=session.createCriteria(User.class);75.criteria.setProjection(Projections.avg("age"));76.users=criteria.list();77.iterator=users.iterator();78.while(iterator.hasNext()){79.System.out.println(iterator.next());80.}81.82.criteria=session.createCriteria(User.class);83.criteria.setProjection(Projections.groupProperty("age"));84.users=criteria.list();85.iterator=users.iterator();86.while(iterator.hasNext()){87.System.out.println(iterator.next());88.}89.90.ProjectionListprojectionList=Projections.projectionList();91.projectionList.add(Projections.groupProperty("age"));92.projectionList.add(Projections.groupProperty("name"));93.projectionList.add(Projections.rowCount());94.criteria=session.createCriteria(User.class);95.criteria.setProjection(projectionList);96.users=criteria.list();97.iterator=users.iterator();98.while(iterator.hasNext()){99.Object[]o=(Object[])iterator.next();100.System.out.println(o[0]+"        "+o[1]+"        "+o[2]);101.}102.103.criteria=session.createCriteria(User.class);104.criteria.add(Property.forName("name").like("%ya%"));105.criteria.addOrder(Property.forName("age").desc());106.users=criteria.list();107.printUserInfo(users);108.109.Useruser=newUser();110.user.setAge(newInteger(26));111.criteria=session.createCriteria(User.class);112.criteria.add(Example.create(user));113.users=criteria.list();114.printUserInfo(users);115.116.117.session.close();118.sessionFactory.close();119.}120.121.publicstaticvoidprintUserInfo(List<?>users){122.123.Iterator<?>iterator=users.iterator();124.System.out.println("id        name/age");125.while(iterator.hasNext()){126.Useruser=(User)iterator.next();127.System.out.println(user.getId()+"        "+user.getName()+"/"+user.getAge());128.}129.}130.}
复制代码
<p>
令人可喜的是java现在已经开源了,所以我想我上述的想法也许有一天会实现,因为java一直都是不断创新的语言,每次创新都会给我们惊喜,这也是我喜欢java的一个原因。
小妖女 该用户已被删除
沙发
发表于 2015-1-18 18:54:37 | 只看该作者
是一种为 Internet发展的计算机语言
海妖 该用户已被删除
板凳
发表于 2015-1-22 23:57:45 | 只看该作者
是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
若天明 该用户已被删除
地板
发表于 2015-1-31 08:06:02 | 只看该作者
当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢?
小女巫 该用户已被删除
5#
发表于 2015-2-5 18:10:53 | 只看该作者
象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。
飘飘悠悠 该用户已被删除
6#
 楼主| 发表于 2015-2-10 04:11:48 | 只看该作者
你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?
活着的死人 该用户已被删除
7#
发表于 2015-2-28 19:22:41 | 只看该作者
还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。
山那边是海 该用户已被删除
8#
发表于 2015-3-10 05:01:50 | 只看该作者
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
精灵巫婆 该用户已被删除
9#
发表于 2015-3-13 04:37:41 | 只看该作者
是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言
冷月葬花魂 该用户已被删除
10#
发表于 2015-3-20 12:51:12 | 只看该作者
Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-15 05:20

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表