分手快乐 发表于 2015-1-18 11:47:09

JAVA教程之用Eclipse Hibernate Synchronizer插件...

学习JAVA的目的更多的是培养自身的工作能力,我觉得工作能力的一个核心就是:独立思考能力,因为只有独立思考后,才会有自己的见解
Hibernate是一个开放源代码的O/RMapping(对象干系映照框架),它对JDBC举行了轻量级的对象封装,使Java程序员可使用对象编程头脑来利用数据库。

HibernateSynchronizer是一个Eclipse插件,能够主动天生*.hbm文件、耐久化类和DAOs。懂得HibernateSynchronizer插件的具体信息能够会见:http://www.binamics.com/hibernatesync/。









1、HibernateSynchronizer的功效包含:

l经由过程一个导游设置并天生HibernateConfigurationFile;

l经由过程一个导游同步天生数据库表的*.hbm文件;

l经由过程*.hbm文件同步天生Hibernate耐久化类和DAOs;

l供应HibernateSynchronizereditor编纂*.hbm文件;

l用一种叫做Velocity的言语定制本性化的代码和资本天生模板(一般没有需要);









2、利用HibernateSynchronizer插件的步骤:

1、经由过程Eclipse的软件更新功效安装插件(Eclipse3.X的插件更新网址::http://www.binamics.com/hibernatesync);

2、设置插件的属性。能够分离在事情台级别和项目级别设置。一般利用默许值。可设置的项目包含:

l修正并保留hbm时是不是主动更新值对象(valueobject);

l是不是主动天生DAOs或值对象(valueobject);

l设置天生DAOs和值对象(valueobject)时的包名。

3、经由过程插件天生HibernateConfigurationFile;

4、经由过程插件天生*.hbm(HibernateMappingFile)文件;

5、需要时用插件供应的Editor编纂*.hbm文件;

6、经由过程插件把从头设置HibernateConfigurationFile的mappingresource;

7、经由过程*.hbm同步天生DAOs和值对象(valueobject);









3、浅析HibernateSynchronizer插件天生的代码。

在这个例子中,利用HibernateSynchronizer插件同步了数据库中的两个表:T_Order和T_User。T_User和T_Order是一对多的干系。

在默许设置的情形下,插件天生的包图以下:

















base包中寄存插件天生的五个笼统类,在HibernateSynchronizer“再同步”时会掩盖base包中的类,因而用户不要把客户代码放在base中的类里。换句话说,任什么时候候不要修正这些类。

dao包中寄存的三个类,分离承继自base包中响应的三个类。dao包中的三个类完整是空的完成,客户能够在这里拔出本人的代码。接纳如许的布局,就把客户代码从插件天生的代码平分离出来,即完成了客户对插件天生代码的定制,又不会在插件“再同步”时影响到客户代码。

在默许设置的情形下,插件天生的类图以下:















右边的六个类是DAOs,右侧的四个类是耐久类。

一切的DAOs承继自_BaseRootDAO,这个笼统类封装了大众的Hibernate操纵办法。笼统类_RootDAO间接承继自_BaseRootDAO,客户能够在这里对_BaseRootDAO举行定制,把大众级其余Hibernate操纵放在这里。_BaseRootDAO上级的Base…DAO是耐久类的DAO,它仍旧是笼统类,目标是让它的子类完成定制的办法。

一切的值对象(valueobject)都分为两个条理,笼统的基类(如BaseTOrder、BaseTUser)和完成类(TOrder、TUser)。笼统条理包括HibernateSynchronizer插件天生的耐久类,完成条理能够包括客户的定制代码。









4、利用HibernateSynchronizer插件天生的代码。

在本人的代码中利用HibernateSynchronizer天生的代码十分复杂。









_RootDAO.initialize();







TUserDAOdao=newUserDAO();



TUseruser=dao.load("zhangyu");



user.setMail("e-zhangyu@vip.sina.com");



dao.update(user);











_RootDAO.initialize()是必需的。HibernateSynchronizer天生的耐久对象是尺度的Hibernate耐久对象,包括一组set和get办法。DAOs卖力操纵耐久对象,包含对session和事件办理、load和开释对象、save或update、查询等功效。有了DAOs,客户代码非常简便。









作者简介:

张昱,能够经由过程e-zhangyu@vip.sina.com与作者获得接洽。

C#是盗用了Java的源代码,仿照开发的,原因是Java是开源的啊,盗了也白盗,还有一点,开发C#语言的团队是就是开发Java语言的团队,是微软重金挖过去的啊

再见西城 发表于 2015-1-21 14:22:38

Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台

谁可相欹 发表于 2015-1-29 22:47:26

是一种语言,用以产生「小应用程序(Applet(s))

飘灵儿 发表于 2015-2-5 12:54:09

是一种使网页(Web Page)产生生动活泼画面的语言

仓酷云 发表于 2015-2-6 00:35:40

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

活着的死人 发表于 2015-2-6 03:23:00

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

蒙在股里 发表于 2015-2-15 09:17:39

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

愤怒的大鸟 发表于 2015-2-23 18:55:29

如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。

分手快乐 发表于 2015-3-1 21:18:29

吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧

若相依 发表于 2015-3-10 23:50:11

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

金色的骷髅 发表于 2015-3-15 01:11:22

是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言

乐观 发表于 2015-3-20 03:54:51

应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展

老尸 发表于 2015-3-23 01:29:33

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

因胸联盟 发表于 2015-3-23 06:28:56

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

精灵巫婆 发表于 2015-4-9 22:09:50

不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。

第二个灵魂 发表于 2015-4-24 19:17:31

设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧

小魔女 发表于 2015-4-26 23:18:59

当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢?

若天明 发表于 2015-5-6 18:09:34

Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。

飘飘悠悠 发表于 2015-6-11 20:32:53

Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。

兰色精灵 发表于 2015-6-29 07:58:18

J2SE开发桌面应用软件比起 VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有点深奥,而且一般开发者很难有开发环境。
页: [1]
查看完整版本: JAVA教程之用Eclipse Hibernate Synchronizer插件...