仓酷云
标题:
JAVA网页设计Hibernate对多表联系关系查询
[打印本页]
作者:
山那边是海
时间:
2015-1-18 11:15
标题:
JAVA网页设计Hibernate对多表联系关系查询
一旦你有了思想,那你编的程序就有了灵魂,不管是什么语言到了你的手里都会是你的工具而已,他们的价值是能尽快帮助你实现你想要的目标。但是如果你没有了思想,那就像是海里的帆船失去了船帆,是很难到打海的另一边的。 因为公司项目标必要,我对Hibernate对多表联系关系查询研讨了一下,现总结以下,供伴侣参考。
1、Hibernate简介Hibernate是一个JDO工具。它的事情道理是经由过程文件(一样平常有两种:xml文件和properties文件)把值对象和数据库表之间创建起一个映照干系。如许,我们只必要经由过程操纵这些值对象和Hibernate供应的一些基础类,就能够到达利用数据库的目标。比方,利用Hibernate的查询,能够间接前往包括某个值对象的列表(List),而不用向传统的JDBC会见体例一样把了局集的数据逐一装载到一个值对象中,为编码事情勤俭了大批的工夫。Hibernate供应的HQL是一品种SQL言语,它和EJBQL一样都是供应对象化的数据库查询体例,但HQL在功效和利用体例上都十分靠近于尺度的SQL.
2、Hibernate与JDBC的区分Hibernate与JDBC的次要区分以下:
1、Hibernate是JDBC的轻量级的对象封装,它是一个自力的对象耐久层框架,和AppServer,和EJB没有甚么一定的接洽。Hibernate能够用在任何JDBC可使用的场所,从某种意义下去说,Hibernate在任何场所下代替JDBC.
2、Hibernate是一个和JDBC亲切联系关系的框架,以是Hibernate的兼容性和JDBC驱动,和数据库都有必定的干系,可是和利用它的Java程序,和AppServer没有任何干系,也不存在兼容性成绩。
3、Hibernate是做为JDBC的替换者呈现的,不克不及用来间接和EntityBean做对照。
3、Hibernate举行多表联系关系查询Hibernate对多个表举行查询时,查询了局是多个表的笛卡尔积,大概称为“交织”毗连。比方:fromStudent,BookfromStudentasstu,BookasboofromStudentstu,Bookboo注重:让查询中的Student和Book均是表student和book对应的类名,它的名字必定要和类的名字不异,包含字母的巨细写。别号应当从命首字母小写的划定规矩是一个好习气,这和Java对部分变量的定名标准是分歧的。
上面枚举一个完全的例子来讲明Hibernate对多个表举行联系关系查询(个中粗体是我们要出格注重的中央,响应表tBookInfo和BookSelection的布局和其对应的hbm.xml、class文件就纷歧一枚举了,有必要具体懂得的伴侣,请接洽我):
StringsTest="fromtBookInfobook,BookSelectionselwherebook.id=sel.bookId";
Collectionresult=newArrayList();
Transactiontx=null;
try{
Sessionsession=HibernateUtil.currentSession();
tx=session.beginTransaction();
Queryquery=session.createQuery(sql);
result=query.list();
tx.commit();
}catch(Exceptione){
throwe;
}finally{
HibernateUtil.closeSession();
}
ArrayListsList=(ArrayList)result;
Iteratoriterator1=sList.iterator();
while(iterator1.hasNext()){
Object[]o=(Object[])iterator1.next();
tBookInfobookInfo=(tBookInfo)o[0];
BookSelectionbookSelect=(BookSelection)o[1];
System.out.println("BookInfo-Title:"+bookInfo.getTitle());
System.out.println("BookSelection-BookSelectionId:"+bookSelect.getId());
}
windows系统样,他们做了什么事或者留了一些后门程序,谁都不知道,二,java开发是跨平台,任何系统上都可以运行,对于保密型系统和大型系统开发这是必要的
作者:
再见西城
时间:
2015-1-20 18:49
一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从
作者:
灵魂腐蚀
时间:
2015-1-29 14:53
Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。
作者:
山那边是海
时间:
2015-2-6 02:10
是一种为 Internet发展的计算机语言
作者:
若相依
时间:
2015-2-14 23:49
关于设计模式的资料,还是向大家推荐banq的网站 [url]http://www.jdon.com/[/url],他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。
作者:
若天明
时间:
2015-3-4 10:45
所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。
作者:
飘飘悠悠
时间:
2015-3-11 18:20
是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言
作者:
再现理想
时间:
2015-3-13 01:09
是一种为 Internet发展的计算机语言
作者:
小魔女
时间:
2015-3-20 08:43
我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
欢迎光临 仓酷云 (http://ckuyun.com/)
Powered by Discuz! X3.2