`

hibernate配置文件中的properties属性

阅读更多

假如现在有班级Class类与学生student类,但是在映射时,学生表关联的外键不是班级表的主键id,而是年级(grade)与班号(numb)这两个联合作外键,这样就要用到hibernate里的properties属性了。

 

Class.java类如下:

 

package cn.ehoo.hibernate.domain;
/**
 *@author whp
 *@Email whp@ehoo.cn
 *@Aug 15, 2011
 *
 */
public class Class {
	private Long id;
	private String grade;
	private String number;
	public String getGrade() {
		return grade;
	}
	public void setGrade(String grade) {
		this.grade = grade;
	}
	public String getNumber() {
		return number;
	}
	public void setNumber(String number) {
		this.number = number;
	}
	public Long getId() {
		return id;
	}
	public void setId(Long id) {
		this.id = id;
	}
	
	
}

 

Class.hbm.xml文件如下:

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC 
	"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
	"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="cn.ehoo.hibernate.domain">
	<class name="Class" table="class">
		<id name="id" type="long">
			<generator class="native" />
		</id>
		<properties name="name" unique="true" update="false">
			<property name="grade" />
			<property name="number" />
		</properties>

	</class>
</hibernate-mapping>

 

 

 

Student.java类如下:

 

package cn.ehoo.hibernate.domain;
/**
 *@author whp
 *@Email whp@ehoo.cn
 *@Aug 15, 2011
 *
 */
public class Student {
	private Long id;
	private String name;
	private Class cla;
	public Class getCla() {
		return cla;
	}
	public void setCla(Class cla) {
		this.cla = cla;
	}
	public Long getId() {
		return id;
	}
	public void setId(Long id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	
}

 

Student.hbm.xml文件如下:

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC 
	"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
	"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="cn.ehoo.hibernate.domain">
	<class name="Student" table="student">
		<id name="id" type="long">
			<generator class="native" />
		</id>
		<many-to-one name="cla" class="Class" property-ref="name">
			<column name="grade"></column>
			<column name="number"></column>
		</many-to-one>
	</class>
</hibernate-mapping>

 

 

分享到:
评论

相关推荐

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

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

    对Hibernate配置文件中的映射元素详解

    在本文中,我们将深入探讨Hibernate配置文件中的映射元素,这些元素是将对象关系映射到数据库的关键部分。首先,我们需要了解映射文件的基本结构,它通常是一个XML文档,遵循特定的DTD(文档类型定义)。 `...

    Hibernate配置文件中映射元素详解

    【Hibernate配置文件中映射元素详解】 在对象关系映射(ORM)框架Hibernate中,对象与数据库表之间的关联是通过一个XML配置文件来定义的。这个XML文件包含了映射元素,用于描述Java类如何转化为数据库中的表。映射...

    Hibernate的配置文件

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

    Hibernate核心配置文件对照表

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

    Hibernate配置文件.pdf

    总结起来,Hibernate配置文件是连接Java应用程序和数据库的关键,它们定义了数据库连接参数,确定了数据类型处理方式,并指明了对象和表的映射。使用`hibernate.properties`或`hibernate.cfg.xml`,开发者可以轻松地...

    6 用Properties补充hibernate.cfg.xml配置

    在Hibernate的配置中,`hibernate.cfg.xml`文件是核心配置文件,用于设定数据库连接、实体类映射等关键参数。本文将探讨如何使用`Properties`类来补充`hibernate.cfg.xml`的配置,以实现更加灵活和模块化的设置。 ...

    hibernate的dtd 包含hibernate.properties

    在这个主题中,我们主要关注的是Hibernate的配置文件`hibernate.properties`以及它的DTD(Document Type Definition)文件,包括`hibernate-configuration-3.0.dtd`和`hibernate-mapping-3.0.dtd`。 首先,`...

    在Hibernate中配置Proxool连接池

    总的来说,在Hibernate中配置Proxool连接池涉及的主要步骤包括:在Spring配置文件中声明SessionFactory并指定Proxool的相关属性;在单独的Proxool配置文件中定义数据库连接参数;最后确保这些配置与实际的数据库连接...

    Hibernate 课件_配置文件详解

    通过以上介绍,我们不仅了解了Hibernate配置文件的基本结构和关键属性,还深入探讨了JDBC参数、连接池配置以及POJO类与数据库映射的实现机制。这对于深入理解和掌握Hibernate的工作原理至关重要。希望这些知识点能...

    hibernate的dtd文件

    接下来,`hibernate-configuration-3.0.dtd`是Hibernate配置文件的DTD文件,它定义了`hibernate.cfg.xml`的结构和元素。`hibernate.cfg.xml`是另一种常用的Hibernate配置方式,相比`hibernate.properties`,它提供了...

    Hibernate配置数据源.

    根据描述中的内容,我们可以将Hibernate中配置数据源的方式大致分为三种:直接在Hibernate配置文件中定义、通过外部配置文件指明数据源以及利用现有的容器管理的数据源。 #### 四、配置方法详解 ##### 1. 在...

    hibernate配置properties

    ### Hibernate配置Properties详解 在Java开发环境中,Hibernate作为一款优秀的对象关系映射(ORM)框架,为开发者提供了高效且简洁的方式来进行数据库操作。而在Hibernate的实际应用过程中,合理的配置显得尤为重要...

    hibernate 配置 C3P0 连接池

    具体做法是在配置文件中添加或修改以下属性: ``` # 指定使用C3P0连接池 hibernate.connection.provider_class=org.hibernate.connection.C3P0ConnectionProvider # C3P0连接池的最大连接数 hibernate.c3p0.max_...

    hibernate 数据源配置文件

    接下来,我们需要在Spring的配置文件(例如`applicationContext-data.xml`)中读取这些属性,并创建相应的数据源实例。示例代码如下: ```xml xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:...

    hibernate-源代码-01

    ● 一种是properties 属性文件格式的配置文件,它使用键值对的形式存放信息,默认文件名称 为 hibernate.properties;另一种是XML 格式的配置文件, XML 配置文件的默认名称为 hibernate.cfg,xml。 上述两种格式的...

    Hibernate 映射文件自动生成

    在实际开发中,Hibernate映射文件通常包含以下元素: 1. **实体类(Entity)**:代表数据库中的一个表,用Java类表示。 2. **标识符(Identifier)**:用于唯一标识实体的对象,对应表的主键。 3. **属性...

    Spring-Boot中application配置文件的所有属性(包括官网的原版以及翻译后的中文版)

    下面将详细介绍Spring Boot中`application.properties`配置文件中的常见属性及其功能。 1. **服务器配置** - `server.port`: 指定应用服务器监听的端口号,默认为8080。 - `server.address`: 设置服务器绑定的IP...

    hibernate4.1.4中hibernate+Proxool无法实现加载Proxool的配置文件解决办法及jar包

    4. **Proxool配置文件**:有时候,Proxool需要一个单独的配置文件(如`proxool.properties`),如果你使用了这个文件,确保它被正确地加载并且包含有效的配置。 5. **编码问题**:如果配置文件是UTF-8编码,但系统...

Global site tag (gtag.js) - Google Analytics