`
拉登的足球
  • 浏览: 70942 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
最近访客 更多访客>>
社区版块
存档分类
最新评论

3.annotation在Hibernate中的用法

阅读更多
使用java annotation 的机制来替代部分 pojo.hbm.xml中的配置

通过:

applicationContext.xml中的

<bean id="sessionFactory"
   class="org.springframework.orm.hibernate3.annotation.
               AnnotationSessionFactoryBean
">
</bean>




使用hibernate.cfg.xml文件

applicationContext.xml中的

<bean id="sessionFactory"
   class="org.springframework.orm.hibernate3.annotation.
               AnnotationSessionFactoryBean">
<!—- 注意路径 -->
<property  name="configLocation"
value="/WEB-INF/classes/hibernate.cfg.xml"/>
</bean>

    hibernate.cfg.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<!— 数据库的url -->
<property name="hibernate.connection.url">
jdbc:mysql://localhost/training
</property>
<!— 数据库的驱动 -->
<property name="hibernate.connection.driver_class">
com.mysql.jdbc.Driver
</property>
<!— 数据库的登陆用户名 -->
<property name="hibernate.connection.username">root</property>
<!— 数据库的登陆密码 -->
<property name="hibernate.connection.password"></property>
<!— 数据库的方言(特性) -->
<property name="dialect">
org.hibernate.dialect.MySQLInnoDBDialect
</property>
<!— 是否在控制台显示SQL语句-->
<property name="show_sql">true</property>
<!— 声明Pojo.hbm.xml文件 -->
<mapping resource="com/syy/model/pojo/User.hbm.xml"/>
<mapping resource="com/syy/model/pojo/Teacher.hbm.xml"/>
<mapping class="com.syy.model.pojo.Teacher"/>
</session-factory>
</hibernate-configuration>


不使用hibernate.cfg.xml 文件

applicationContext.xml中的

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<!— 数据库的驱动 -->
        <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
<!— 数据库的URL -->
<!— 红色代表出来中文乱码问题 -->
        <property name="url" value="jdbc:mysql://localhost/training?useUnicode=true&amp;characterEncoding=GBK"/>
<!— 数据库登陆的用户名-->
        <property name="username" value="root"/>
<!— 数据库登陆的密码 -->
        <property name="password" value=""/>
<!— 最大活动数maxActive -->
        <property name="maxActive" value="100"/>
<!— 等待的最长时间maxActive -->
        <property name="maxWait" value="1000"/>
<!— 建立preparedStatement的池 poolPreparedStatements -->
        <property name="poolPreparedStatements" value="true"/>
        <!—默认自动提交 poolPreparedStatements -->
<property name="defaultAutoCommit" value="true"/>
    </bean>
   
<!—与hibernate.cfg.xml文件中的sessionFactory标签作用一致-->
    <bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
        <!-- property name="configLocation" value="/WEB-INF/hibernate.cfg.xml"/-->
        <property name="dataSource" ref="dataSource"/>
<!— 与hibernate.cfg.xml文件中的mapping标签作用一致 -->
<property name="annotatedClasses">
    <list>
    <value>com.syy.model.pojo.User</value>
    </list>
</property>
        <property name="hibernateProperties">
<!-- org.hibernate.dialect.OracleDialect    org.hibernate.dialect.MySQL5InnoDBDialect -->
            <value>
//
                hibernate.dialect=org.hibernate.dialect.MySQL5Dialect
/*
你可以使用hibernate.query.substitutions在Hibernate中定义新 的查询符号. 例如:
hibernate.query.substitutions true=1, false=0
将导致符号true和false在生成的SQL中被翻译成整数常量.
*/
                hibernate.query.substitutions=true 'Y', false 'N'
//hibernate.cache.use_query缓存query
                hibernate.cache.use_query=true
//hibernate.cache.use_second_level_cach使用二级缓存
                hibernate.cache.use_second_level_cache=true    
//hibernate.cache.provider_class缓存的提供类          hibernate.cache.provider_class=org.hibernate.cache.EhCacheProvider
                hibernate.show_sql=true
            </value>
            <!—如果使用的是 PostgreSQL 数据库加上以下信息异常将更好的展示-->
            <!-- hibernate.jdbc.batch_size=0 -->
        </property>
    </bean>

分享到:
评论

相关推荐

    javax.annotation-3.1.2.2-sources.jar.zip

    《深入解析Java注解及其应用》 在Java编程领域,注解...在学习和使用javax.annotation-3.1.2.2-sources.jar的过程中,我们可以深入研究源码,进一步挖掘其内在机制,为我们的编程实践带来更多的启示和帮助。

    hibernate annotation hibernate3

    Hibernate 3中的注解机制使得开发者能够更直观地在Java类中描述数据库模型,减少了XML配置文件的使用,提升了开发效率。通过熟练掌握这些注解,开发者可以更好地运用Hibernate进行数据持久化操作,实现高效、灵活的...

    hibernate 中文文档 and _annotation.chm

    3. 注解(Annotation)在Hibernate中的应用: - @Entity:标记一个Java类为数据库中的一个表,表示该类是实体类。 - @Table:指定实体类对应的数据库表名。 - @Id:标识类中的主键字段,可以配合@GeneratedValue...

    Hibernate-Annotation中文教程.pdf

    3.尽管通常使用 &lt;mapping&gt; 元素来声明持久性类,您还是需要在 Hibernate 配置文件(通常是 hibernate.cfg.xml)中声明持久性类。 在使用 Hibernate Annotation 时,需要注意以下几点: * Hibernate Annotation 库...

    Hibernate Annotation 中文文档

    这篇文档主要讨论的是Hibernate Annotation的使用方法,以及它如何替代传统的XML配置文件(*.hbm.xml)进行对象-关系映射。 **1. Hibernate Annotation简介** Hibernate Annotation是Hibernate框架的一个扩展,它...

    hibernate annotation 中文文档

    《Hibernate Annotation 中文文档》是Java开发者们的重要参考资料,它详细介绍了如何在Hibernate框架中使用注解进行对象关系映射(ORM)。Hibernate是一款强大的开源Java持久化框架,它简化了数据库与Java对象之间的...

    Hibernate-Annotation中文教程.docx

    3.尽管通常使用 &lt;mapping&gt; 元素来声明持久性类,您还是需要在 Hibernate 配置文件(通常是 hibernate.cfg.xml)中声明持久性类。 使用 Hibernate 注解在 Spring 框架中的应用: 1. 近期的许多 Java 项目都使用了轻...

    hibernate_annotation_中文帮助文档

    《Hibernate Annotations中文帮助文档》是针对Java开发人员的一份详细指南,主要讲解如何使用Hibernate ORM框架中的注解来实现数据库对象的映射。该文档涵盖了从基础到高级的各种概念,帮助开发者更高效地管理和操作...

    Hibernate Annotation入门

    而Hibernate Annotation是Hibernate的一个重要特性,它通过在Java类和字段上添加注解来简化数据库表和实体类之间的映射配置。这篇博文将带你了解如何使用Hibernate Annotation进行开发。 首先,我们需要理解Java...

    springboot集成hibernate

    在本文中,我们将深入探讨如何将Spring Boot框架与Hibernate ORM集成,特别是在不使用JPA(Java Persistence API)的情况下。Spring Boot以其便捷的自动配置和简化Java应用开发而广受欢迎,而Hibernate作为Java领域...

    hibernate-annotation-3.4.0.GA

    在3.4.0.GA版本中,Hibernate引入了注解支持,使得开发人员能够更方便地在类和属性上直接标注,无需依赖XML配置文件,提高了开发效率。本文将详细探讨Hibernate注解3.4.0.GA版本中的关键概念和用法。 一、实体注解@...

    hibernate-annotation 所需要的jar包

    在Java开发中,Hibernate与Annotation的结合使用极大地简化了数据持久化的复杂性,使得开发人员无需编写大量的SQL代码。下面将详细介绍Hibernate-Annotation所涉及到的知识点。 1. **Hibernate框架**: Hibernate是...

    Hibernate Annotation 学习笔记

    1. 隐式映射:在上面的例子中,我们没有显式指定每个属性的映射,这是因为Hibernate Annotation采用了一种“配置例外”(configuration by exception)的理念。除主键和实体标识外,其他属性默认按照Java Bean的规则...

    最全的Hibernate Annotation API文档

    在Hibernate中,注解(Annotation)是一种声明式的方法,用于配置实体类、属性以及它们与数据库表之间的映射关系。本文将深入探讨“最全的Hibernate Annotation API文档”中的关键知识点。 一、实体类(Entity) 在...

    hibernate的resource使用

    在Java开发中,特别是在企业级应用中,使用框架如Hibernate和Spring是非常常见的。本文将详细讲解如何在Spring框架中利用`@Resource`注解进行依赖注入,以及它与Hibernate的关系。 `@Resource`注解是由Java EE标准...

    Hibernate 中文 html 帮助文档

    19.5.3. Bag和list是反向集合类中效率最高的 19.5.4. 一次性删除(One shot delete) 19.6. 监测性能(Monitoring performance) 19.6.1. 监测SessionFactory 19.6.2. 数据记录(Metrics) 20. 工具箱指南 20.1...

    spring3、 hibernate4 配置声明式事务管理(annotation方式)

    本篇将详细介绍如何在Spring 3和Hibernate 4中配置声明式事务管理,采用注解方式。 一、Spring的事务管理 Spring提供了两种事务管理方式:编程式事务管理和声明式事务管理。编程式事务管理需要在代码中显式地调用...

    hibernate annotation spring 中文参考文档

    在IT行业中,Hibernate、Spring和Hibernate Annotations是三个非常重要的框架,尤其在Java企业级应用开发中扮演着核心角色。这些框架极大地简化了数据库操作、对象关系映射(ORM)以及应用程序的依赖注入和管理。 ...

    Struts1.x Spring2.x Hibernate3.x DWR2.x整合工具文档v1.00

    **2.3 OpenSessionInViewFilter使用方法** 为了提高性能,通常会在Spring中使用`OpenSessionInViewFilter`来管理Hibernate的Session。这样可以在整个请求周期内保持Session打开状态,从而避免多次打开和关闭Session...

Global site tag (gtag.js) - Google Analytics