文档详情

Hibernate注解使用以及Spring整合.doc

发布:2016-07-27约1.26万字共12页下载文档
文本预览下载声明
(1) 简介: 在过去几年里,Hibernate不断发展,几乎成为Java数据库持久性的事实标准。它非常强大、灵活,而且具备了优异的性能。在本文中,我们将了解如何使用Java 5 注释来简化Hibernate代码,并使持久层的编码过程变得更为轻松。 传统上,Hibernate的配置依赖于外部 XML 文件:数据库映射被定义为一组 XML 映射文件,并且在启动时进行加载。 ??? 在最近发布的几个Hibernate版本中,出现了一种基于 Java 5 注释的更为巧妙的新方法。借助新的 Hibernate Annotation 库,即可一次性地分配所有旧映射文件——一切都会按照您的想法来定义——注释直接嵌入到您的Java 类中,并提供一种强大及灵活的方法来声明持久性映射。 即利用hibernate注解后,可不用定义持久化类对应的*.hbm.xml文件,直接以注解方式写入在持久化类中来实现。 Hibernate annotation使用了ejb JPA的注解,所以,下面安装配置hibernate annotation环境时,需要导入ejb的包。许多网上的资料都是jpa hibernate annotation方面的资料。 (2) 安装 Hibernate Annotation 第一步, 环境与jar包: 要使用 Hibernate Annotation,您至少需要具备 Hibernate 3.2和Java 5。可以从 Hibernate 站点下载 Hibernate 3.2 和 Hibernate Annotation库。除了标准的 Hibernate JAR 和依赖项之外,您还需要 Hibernate Annotations .jar 文件(hibernate-annotations.jar)、Java 持久性 API (lib/ejb3-persistence.jar)。 添加hibernate3.2.jar,hibernate-annotations- 3.3.0.jar,hibernate-commons-annotations.jar和ejb3-persistence.jar 。这样就可以使用hibernate的annotation了。 如果您正在使用 Maven,只需要向 POM 文件添加相应的依赖项即可,如下所示: ??? ... ??? dependency ????? groupIdorg.hibernate/groupId ????? artifactIdhibernate/artifactId ????? version3.2.1.ga/version ??? /dependency ??? dependency ????? groupIdorg.hibernate/groupId ????? artifactIdhibernate-annotations/artifactId ????? version3.2.0.ga/version ??? /dependency ??? dependency ????? groupIdjavax.persistence/groupId ????? artifactIdpersistence-api/artifactId ????? version1.0/version ??? /dependency 第二步, 获取 Hibernate 会话工厂。尽管无需惊天的修改,但这一工作与使用 Hibernate Annotations有所不同。您需要使用 AnnotationConfiguration 类来建立会话工厂: sessionFactory = new AnnotationConfiguration().buildSessionFactory();? 第三步, 尽管通常使用 mapping 元素来声明持久性类,您还是需要在 Hibernate 配置文件(通常是 hibernate.cfg.xml)中声明持久性类: !DOCTYPE hibernate-configuration PUBLIC ??? -//Hibernate/Hibernate Configuration DTD 3.0//EN ??? /hibernate-configuration-3.0.dtd ??????? hibernate-configuration ????????? session-factory ??????????? mapping class=com.onjava.modelplanes.domain.PlaneType/ ??????????? mapping class=com.onjava.modelplanes.domain.ModelPlane/ ????????? /
显示全部
相似文档