`
endual
  • 浏览: 3565407 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

hibernate配置文件一些属性的介绍(转)

阅读更多
原创  hibernate总结 收藏

对象关系映射:
Hibernate访问持久话类属性的策略:
在对象-关系映射文件中,<property>元素的access属性用于指定Hibernate访问持久化类的属性的方式:
   Property:默认值,表明Hibernate通过相映的setXXX()和getXXX()方法来访问类的属性,可以更灵活的封装
   持久化类,提高域模型的透明性.
   field:表明Hibernate运用java反射机制直接访问类的属性,如果类没有为某个属性,如:name提供setName()
   和getName()方法,就可以把属性设为field,使Hibernate能直接访问name属性.如:
    <property name="name" access="field"/>,除了以上两种方法,还可以自定义持久化类的属性的访问方式,这
    需要创建有个实现net.sf.hibernate.property.PropertyAccessor接口的类,然后把类的完整名字赋予<property>元素的access属性.

<property>元素的formula属性指定一个SQL表达式,该表达式可以引用表的字段,调用SQL函数或者包含子查询语句,如:LineItem类中有一个
  unitPrice属性,而在表LINEITEMS表中没有对应的UNIT_PRICE字段,可以通过下面方式映射unitPrice属性L
       <property name="unitPrice" formula="BASE_PRICE*QUANTITY"/>

用于控制insert和update语句的映射属性
     <property>元素的insert属性:如果为false,在insert语句中不包含该字段,表明该字段永远不能被插入.
     <property>元素的update属性:如果为false,在update语句中不包含该字段,表明该字段永远不能被更新.
     <class>元素的mutable属性:如果为false,等于所有的<property>元素的update属性为false,表示整个实例不能被更新.
     <property>元素的dynamic-insert属性:如果为true,表示当保存一个对象的时候,会动态生成insert语句,只有这个字段取值不为null,才会把
         他包含到insert语句中.
     <property>元素的update属性:如果为true,表示当更新一个对象的时候,会动态生成update语句,只有这个字段取值不为null,才会把
          他包含到update语句中
     <class>元素的dynamic-insert属性:如果为true,等于所有的<property>元素的dynamic-insert属性为true,表示当保存一个对象时,会动态生成insert
          语句,insert语句中仅包含所有取值不为null的字段.
     <class>元素的dynamic-update属性:如果为true,等于所有的<property>元素的dynamic-update属性为true,表示当更新一个对象时,会动态生成update
          语update语句中仅包含所有取值不为null的字段.

创建命名策略:

    实现Hibernate的NamingStrategy接口:
    例如:
       import net.sf.hibernate.cfg.NamingStrategy;
       import not.sf.hibernate.util.StringHelper;
       public classMyNamingStrategy implements NamingStrategy
       {
           public String classToTableName(String calssName)
            {
                 ///////unqualify()是StringHelper类提供的实用方法,参数是一个类名,返回值是一个
                 不带包名的类名.
                 return StringHelper.unqualify(className).toUpperCase()+'s';
            }  
             //////////////类的属性名字映射为字段名字的方法
            public String propertyToColumnName(String propertyName)
            {
                  return propertyName.toUpperCase();
            }
            public String columnName(String columnName)
            {
                  return columnName;
            }
            public String propertyToTableName(String className,String propertyName)
            {
                 return classToTableName(className)+'_'+propertyToColumnName(propertyName);
            }
       }
   为了让Hibernate采用以上的命名方案,需要在Hibernate初始化阶段设置Configuration对象的NamingStrategy属性:
   如:  Configuration config=new Configuration();
         config.setnamingStratagy(new MyNamingStrategy());

设置命名Schema(通过配置方式来指定简单的命名策略)
       如:<hibernate-mapping default-schema="QQ">
                 <class name="mypack.Customer" table="CUSTOMERS">
                 </class>
           </hibernate-mapping>
           那么Hibernate会把Customer类映射表成为QQ_CUSTOMERS
 
分享到:
评论

相关推荐

    hibernate配置文件详解

    下面我们将详细介绍 Hibernate 配置文件的结构和内容。 一、hibernate.cfg.xml 文件 hibernate.cfg.xml 文件是 Hibernate 的基本配置文件,它包含了 Hibernate 与数据库的基本连接信息。在 Hibernate 工作的初始...

    Hibernate配置文件加载后修改配置信息

    本文介绍了如何利用反射机制来修改Hibernate配置文件中的数据库连接信息,并通过自定义`ConnectionProvider`实现了对敏感信息的加密处理。这种做法不仅增强了应用程序的安全性,还提高了配置信息的管理效率。开发者...

    hibernate配置文件

    接下来,我们将详细介绍Hibernate配置文件的相关知识点。 ### Hibernate配置文件概述 Hibernate是一个强大的对象关系映射(Object Relational Mapping, ORM)工具,用于将Java应用程序中的对象模型映射到数据库中...

    hibernate--5.Hibernate配置文件详解

    标题"hibernate--5.Hibernate配置文件详解"暗示我们将探讨的是Hibernate 5版本的配置细节。这个版本引入了一些新特性和改进,同时也保持了对前一版本的兼容性。配置文件是Hibernate的核心部分,它定义了与数据库的...

    代码自动生成工具 hibernate配置文件工具 MagicalTools

    《代码自动生成工具 Hibernate配置文件工具 MagicalTools 深度解析》 在现代软件开发过程中,提高效率和减少重复劳动是至关重要的。为此,开发者们不断寻求自动化工具的帮助,以简化繁琐的任务,如代码编写、配置...

    ssh整合带hibernate配置文件

    在这个场景下,"ssh整合带hibernate配置文件"的标题表明我们要讨论如何在SSH架构中配置Hibernate,特别是在Spring框架内进行事务管理。 首先,让我们了解SSH框架的核心组件: 1. **Spring**:这是一个全面的Java...

    Hibernate程序的配置文件

    本知识点主要聚焦于Hibernate的配置文件,它是使用Hibernate进行数据库交互的基础。 首先,我们需要理解Hibernate的核心配置文件——`hibernate.cfg.xml`。这个文件是Hibernate与数据库建立连接的桥梁,它包含了...

    oracle的hibernate配置文件

    `hibernate1.cfg.xml`是Hibernate配置的核心文件,它定义了数据源、连接池、持久化类、缓存策略等关键信息。以下将逐个解析这些重要部分。 1. 数据源配置: 在`hibernate1.cfg.xml`中,首先需要配置数据源。对于...

    hibernate--5.Hibernate配置文件详解-2

    标题"hibernate--5.Hibernate配置文件详解-2"暗示我们将继续上一节的内容,进一步深入理解Hibernate配置文件的各个方面。通常,Hibernate的配置文件以`hibernate.cfg.xml`的形式存在,它是项目初始化和连接数据库的...

    Hibernate的配置文件

    在这个场景中,我们关注的是Hibernate的配置文件——`hibernate.cfg.xml`。这个文件是Hibernate应用的核心,它定义了数据源、SessionFactory、实体类映射等关键信息,使得Java对象可以直接与数据库进行交互。 首先...

    Hibernate配置文件

    **Hibernate配置文件详解** Hibernate,一个强大的Java持久化框架,为开发者提供了对象关系映射(ORM)服务,简化了数据库操作。在Hibernate中,`hibernate.cfg.xml`是核心配置文件,它定义了数据库连接、实体管理...

    Hibernate配置文件和jar包

    一、Hibernate配置文件 1. hibernate.cfg.xml:这是Hibernate的核心配置文件,用于定义数据源、持久化类、SessionFactory等相关设置。例如,你需要在其中指定数据库连接的URL、用户名、密码,以及JDBC驱动等信息。...

    Hibernate核心配置文件对照表

    `hibernate.properties`是Hibernate的核心配置文件,用于设定与数据库连接、缓存策略、事务管理等相关的重要参数。下面我们将详细探讨这个配置文件中的关键知识点。 1. **数据库连接配置** - `hibernate....

    《Hibernate 各类映射文件与配置文件模板》HibernateMappingConfig.zip

    《Hibernate各类映射文件与配置文件模板》是一个包含多种Hibernate映射和配置示例的压缩包,用于帮助开发者理解和使用Hibernate框架。Hibernate是Java领域的一个流行的对象关系映射(ORM)框架,它允许开发者用面向...

    hibernate配置文件元素详解.txt

    ### Hibernate配置文件元素详解 #### 一、概述 在SSH(Spring+Struts+Hibernate)框架中,Hibernate作为持久层框架扮演着非常重要的角色。它能够实现对象关系映射(ORM),将Java对象映射到数据库表上。为了正确地...

    hibernate 配置文件JAR包

    下面我们将深入探讨Hibernate配置文件JAR包中的关键知识点。 1. **hibernate.cfg.xml**:这是Hibernate的核心配置文件,包含了数据库连接参数、事务管理、缓存配置等信息。例如,`driver_class`指定数据库驱动,`...

    hibernate完整配置文件

    Hibernate是Java领域中一款广泛应用的关系对象映射框架,它允许开发者用面向对象...这个“hibernate完整配置文件”压缩包应该包含了所有必要的配置和示例,是初学者和有经验的开发者深入理解Hibernate配置的宝贵资源。

    根据hibernate配置文件生成数据库.zip

    本压缩包“根据hibernate配置文件生成数据库.zip”包含了一些关键资源,帮助开发者理解如何使用Hibernate工具hbm2ddl自动生成数据库结构。以下是对这些资源的详细解释: 1. **使用Hibernate的工具hbm2ddl根据你的...

Global site tag (gtag.js) - Google Analytics