`

Hibernate Annotations开发经验

    博客分类:
  • java
阅读更多
大家介绍Hibernate Annotations,可能好多人还不了解Hibernate Annotations,先讨论一下 hbm.xml 与 Hibernate Annotations的优缺点,看看那种情况最适合我们,
xml 配置文件的优点,个人认为主要优点就是当你改变底层配置时 不需要改变和重新编译代码,只需要在xml 中更改就可以了,例如 Hibernate.cfg.xml 当你要更改底层数据库时,只要更改配置文件就可以了.Hibernate会为你做好别的事情.

那么xml的缺点呢,个人认为有以下几点:
◆描述符多,不容易记忆,掌握 要深入了解还有看DTD文件
◆无法做自动校验,需要人工查找
◆读取和解析xml配置要消耗一定时间,导致应用启动慢,不便于测试和维护
◆当系统很大时,大量的xml文件难以管理
◆运行中保存xml配置需要消耗额外的内存
◆在O/R Mapping的时候需要在java文件和xml配置文件之间交替,增大了工作量

其中第一 二点 借助于先进的IDE 可能不是什么问题. 但是对初学者还是个问题

下面我们看看 Hibernate Annotations的特性吧! 可以解决xml遇到的问题,有以下优点
◆描述符减少。以前在xml配置中往往需要描述java属性的类型,关系等等。而元数据本身就是java语言,从而省略了大量的描述符
◆编译期校验。错误的批注在编译期间就会报错。
◆元数据批注在java代码中,避免了额外的文件维护工作
◆元数据被编译成java bytecode,消耗的内存少,读取也很快,利于测试和维护

关于映射文件是使用 hbm.xml 文件还是使用 Hibernate Annotations 我们来看看2者的性能吧. 先声明一下,个人认为映射文件一旦配置好就不会在很大程度上改变了.所以使用xml文件并不会带来很大的好处.如果你认为映射文件在你的项目中也经常变化,比如一列String数据,今天你使用 length="16" 明天你认为该数据的长度应该更长才能满足业务需求 于是改为length="128" 等等类似的问题 . 如果你经常有这方面的变动的话,,你应该使用 xml文件 因为Hibernate Annotations 无法很好的满足你的要求.

=========================================================

有人要说Annotations 编写太麻烦是否,能有工具自动生产pojo对象就好了,之前我也一直为这个问题苦恼,最近在网上研究了一下HibernateTools,发现它在3.2.0版本里面可以实现我们愿望,我把研究的心得发给大家,希望对大家开发有帮助.

第一步下载HibernateTools,我已经下载完毕,放到svn上面 地址如下:

https://61.190.38.66/svn/hskboss/hsk_database/branches/docs/99 _其他/HibernateTools-3.2.0.beta6a.zip

第二步安装得到的文件解压得到features和plugins文件夹,在eclipse安装目录里新建addPlugins文件夹, 同时在addPlugins文件夹下建立Hibernatetools文件夹, 将两个文件夹(features和plugins)复制到Hibernatetools目录下,然后在eclipse目录下建立links文件夹,在links文件夹下建立 hibernatetools.link文件, 打开该文件输入 Hibernatetools的绝对目录。

我的文件夹如下所示
D:\java\plateform\eclipse_jee\eclipse\addPlugins\hibernatetools
D:\java\plateform\eclipse_jee\eclipse\links
links文件夹的hibernatetools.link文件内容如下
path=D:/java/plateform/eclipse_jee/eclipse/addPlugins/hibernatetools
这样重新启动eclipse即可
   第三步 :配置jdbc,并生产pojo

新建一个工程MyHibernate,然后然后选择File-New-Hibernate Configuration File(cfg.xml),打开创建Hibernate配置向导,我这里配置了一个SQL Server2000数据库,选中Create a console configuration 复选项,以此配置文件创建Hibernate控制台配置。


创建Hibernate Console Configuration向导有Main、Option、Classpath、Mappings、Common五个选项卡,如果你在工程中已经引入了JDBC驱动则,直接点击Finish完成即可,以后在完成其他配置。



完成后,你就可以在Hibernate Configuration视图窗口看到配置项,已经链接到数据,并把你数据库中的表列出来,如果在这一步你没有成功的话,请检查你是否以正确安装的Hibernate Tools和JBoos Tools这个很重要;另外如果提示找不到JDBC驱动的话,说明你工程的classpath中没有JDBC驱动jar包,加载正确的驱动即可。



如果你不能看到上图所示的Hibernate Configurations窗口,说明你没有打开这个View,选择Windows-Show View-Other,然后选择Hibernate Configurations即可打开这个窗口,窗口的位置无关紧要,你喜欢放在那里就把他托过去。



下面将介绍如何使用Hibernate Code Generation来产生数据库表映射Java对象,首先要在数据库中创建表,并设置号字段名和主键(主键很重要,关于主键的选择建议你使用与业务无关的ID作为主键);打开Hibernate视图找到Hibernate运行图标下的Hibernate Code Generation Configurations,如果找不到这个图标说明没有在Hibernate视图下。


配置一个新的配置项,输入配置项的名称MyHibernateCode,选择Hibernate Configuration(即已配好的Hibernate控制台配置),在Output directory中输入反向代码输出目录(注意这个目录一般只需项目的源代码src),然后复选Reverse engineer from JDBC connection,在Package中输入包名(你要存放到src下那个包中),最后单击Setup-Create New打开Reverse engineer配置向导,选择配置存储位置(我放到了src目录下),最后选择要反向工程的表,如图;




如果你的Database schema中没有项目,查看你选择Console configuration是否正确,单击下面“Refresh”应该就出来了,最后单击Finish完成返回,


然后单击Exporters选项卡,选择导出项目,这里选择了Domain code(.java) 和Hibernate XML Mappings(.hbm.xml),因为使用的JDK版本较高因此复选Use Java 5 syntax项。Refresh和Common项可不进行设置,最后单击Run运行,产生代码。


产生的代码和配置文件,如图示;代码自动产生后还需要你根据自己的业务逻辑检查一下,并按你的DAO架构完成,Hibernate Tools到这里已经帮你完成的大量编码工作

 
  • 大小: 44.4 KB
  • 大小: 26.1 KB
  • 大小: 42 KB
  • 大小: 24.3 KB
  • 大小: 23.5 KB
  • 大小: 39.5 KB
  • 大小: 35.3 KB
  • 大小: 34.7 KB
分享到:
评论

相关推荐

    hibernate-annotations-3.4.0.GA

    《Hibernate Annotations 3.4.0.GA:深入理解与应用》 Hibernate是Java领域中广泛应用的对象关系映射(ORM)框架,它极大地简化了数据库操作,使得开发者可以使用面向对象的方式来处理数据。而Hibernate ...

    webwork hibernate annotations 三合一中文开发文档

    webwork2.1.7 中文开发文档 Hibernate Annotations参考文档-3.20中文开发文档 Hibernate_3.2.0_Reference_zh_CN中文开发文档

    HibernateAnnotations 中文版

    **Hibernate Annotations 中文...理解并熟练掌握 Hibernate 注解,对于提升 Java 应用程序的开发效率和质量具有重要意义。在实际项目中,根据业务场景灵活运用这些注解,可以有效优化数据库操作,提高系统的整体性能。

    hibernate annotations

    Hibernate Annotations是Hibernate框架的一个重要组成部分,它允许开发人员通过在Java实体类上使用注解来定义数据模型,从而避免了传统的XML配置文件。这种做法提高了代码的可读性和维护性。 **核心概念** 1. **...

    hibernate annotations 中文参考手册

    ### Hibernate Annotations 中文参考手册概览 #### 版本说明 根据提供的信息,这份文档的版本为3.2.0CR1。此版本标志着Hibernate框架中的一个特定阶段,特别是关于如何利用注解(Annotations)来简化Java对象与...

    hibernate 和hibernate_annotations(中文API).pdf帮助文档

    总结,Hibernate是一个功能丰富的ORM框架,通过Hibernate Annotations,我们可以更方便地进行对象的持久化,减少与数据库交互的复杂性,提高开发效率。这个中文API文档对于理解和使用Hibernate将大有裨益,无论是...

    hibernate annotations 3.4.0.GA API

    《Hibernate Annotations 3.4.0.GA API详解》 Hibernate是Java开发中广泛使用的对象关系映射...深入理解Hibernate Annotations,不仅可以提高开发效率,还能帮助我们更好地管理和维护数据库与Java对象之间的映射关系。

    hibernate-annotations

    《Hibernate Annotations 3.4.0.GA:深入解析企业级Java开发的持久化利器》 Hibernate,作为Java领域中最著名的对象关系映射(ORM)框架之一,极大地简化了数据库与Java应用程序之间的交互。其中,Hibernate ...

    hibernate-annotations-3.4.0(参考文档,doc/../index.html)

    在实际开发中,利用Hibernate Annotations可以快速构建数据访问层,减少XML配置,提高开发效率。例如,通过注解定义一个用户实体,包括ID、用户名、密码等属性,以及与其他实体的关联关系,再配合SessionFactory和...

    hibernate-annotations.jar

    综上所述,`hibernate-annotations.jar`是Hibernate框架的核心组件之一,它通过Java注解简化了数据库映射,使得开发更为高效。在实际项目中,结合其他Hibernate组件,可以构建出强大的数据访问层,大大提高开发效率...

    hibernate-annotations 相关jar包

    综上所述,Hibernate Annotations是Hibernate框架的重要扩展,通过注解的方式简化了对象-关系映射的配置,提高了开发效率,是Java开发者必备的技能之一。在实际项目中,合理运用Hibernate Annotations可以有效提升...

    hibernate annotations 中文文档

    《Hibernate Annotations 中文文档》是针对Hibernate框架注解配置的详细指南,旨在帮助开发者更深入地理解和使用Hibernate的注解功能。Hibernate是一个流行的Java对象关系映射(ORM)框架,它允许开发人员将数据库...

    Hibernate3.2 Annotations中文文档

    **Hibernate 3.2 Annotations中文文档** Hibernate是一个流行的开源对象关系映射(ORM)框架,它使得Java开发者能够更方便地在数据库上操作对象。在Hibernate 3.2版本中,引入了Annotations特性,这是一种更加简洁...

    Hibernate-annotations-3.4最新版本

    **正文** 《深入理解Hibernate-annotations-3.4.0:简化对象持久化的注解神器》 在现代软件开发中,...通过理解和熟练掌握Hibernate-annotations,开发者可以更高效地进行数据库操作,提升项目开发的质量和速度。

    hibernate-annotations-3.4.0.GA+hibernate-distribution-3.3.2.GA-dist

    《深入理解Hibernate 3.3.2与Annotations 3.4.0:核心特性与实践应用》 Hibernate作为Java领域中的一个强大ORM(对象关系映射)框架,为开发者提供了在Java应用程序中操作数据库的强大工具。它允许我们将数据库操作...

    hibernate-annotations-3.4.0.jar

    Hibernate Annotations是Hibernate框架的一个扩展,引入了JPA(Java Persistence API)的注解,使得开发人员无需编写XML配置文件即可进行对象持久化。`3.4.0`版本是Hibernate Annotations的一个稳定版本,它包含了...

    hibernate_annotations.rar

    【hibernate_annotations.rar】这个压缩包文件主要涵盖了关于Hibernate框架中注解的使用和理解。Hibernate是一款流行的Java对象关系映射(ORM)框架,它允许开发者使用面向对象的方式来操作数据库,极大地简化了数据...

    hibernate-annotations-3.0-alpha3.zip

    总之,"hibernate-annotations-3.0-alpha3.zip"这个压缩包提供了一个完整的Hibernate Annotations开发环境,涵盖了从基本概念到实际应用的各个环节。无论是初学者还是经验丰富的开发者,都可以从中获得宝贵的知识,...

Global site tag (gtag.js) - Google Analytics