`

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-源代码-01

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

    Hibernate小例子

    正如其名,Configuration 类负责管理Hibernate 的配置信息。...这些属性在hibernate配置文件(hibernate.cfg.xml 或hibernate.properties)中加以设 定(参见前面“Hibernate配置”中的示例配置文件内容)。

    Hibernate+中文文档

    3.3. Hibernate配置属性 3.4. Hibernate JDBC和连接(connection)属性 3.5. Hibernate缓存属性 3.6. Hibernate事务属性 3.7. 其他属性 3.8. Hibernate SQL方言 (hibernate.dialect) 3.9. Hibernate日志类别 ...

    hibernate3.2中文文档(chm格式)

    3.3. Hibernate配置属性 3.4. Hibernate JDBC和连接(connection)属性 3.5. Hibernate缓存属性 3.6. Hibernate事务属性 3.7. 其他属性 3.8. Hibernate SQL方言 (hibernate.dialect) 3.9. Hibernate日志类别 ...

    Hibernate 中文 html 帮助文档

    1.2.3. Hibernate配置 1.2.4. 用Ant构建 1.2.5. 启动和辅助类 1.2.6. 加载并存储对象 1.3. 第二部分 - 关联映射 1.3.1. 映射Person类 1.3.2. 单向Set-based的关联 1.3.3. 使关联工作 1.3.4. 值类型的集合 ...

    HibernateAPI中文版.chm

    3.3. Hibernate配置属性 3.4. Hibernate JDBC和连接(connection)属性 3.5. Hibernate缓存属性 3.6. Hibernate事务属性 3.7. 其他属性 3.8. Hibernate SQL方言 (hibernate.dialect) 3.9. Hibernate日志类别 ...

    Hibernate中文详细学习文档

    1.2.3. Hibernate配置 1.2.4. 用Ant构建 1.2.5. 启动和辅助类 1.2.6. 加载并存储对象 1.3. 第二部分 - 关联映射 1.3.1. 映射Person类 1.3.2. 单向Set-based的关联 1.3.3. 使关联工作 1.3.4. 值类型的集合 ...

    Hibernate使用技巧汇总

    两种配置文件: A.hibernate.cfg.xml 和 B.hibernate.properties A中可含映射文件的配置,而B中hard codes加映射文件。 A。Configuration config=new Configuration().config(); B. ...

    hibernate 体系结构与配置 参考文档(html)

    Hibernate配置 1.2.4. 用Ant构建 1.2.5. 启动和辅助类 1.2.6. 加载并存储对象 1.3. 第二部分 - 关联映射 1.3.1. 映射Person类 1.3.2. 单向Set-based的关联 1.3.3. 使关联工作 1.3.4. 值类型的集合 1.3.5...

    实现NHibernate配置的三种实现方法

    手工在程序中加入,配置内容最后将加入到Cfg.Configuration.Properties属性中,此属性为一IDictionary对象,并且为public。 ________________________________________________________ 总共有三个项目,分别...

    ssh整合,不带hibernate.cfg.xml的方式

    继续在 LocalSessionFactoryBean 中配置,使用hibernateProperties属性继续来配置其他的属性,注意值是properties属性文件

    ssh(structs,spring,hibernate)框架中的上传下载

     由于Spring通过代理Hibernate完成数据层的操作,所以原Hibernate的配置文件hibernate.cfg.xml的信息也转移到Spring的配置文件中:  代码 4 Spring中有关Hibernate的配置信息 1. 2. !-- 数据源的配置 //--> 3. ...

    Hibernate_3.2.0_符合Java习惯的关系数据库持久化

    3.3. Hibernate配置属性 3.4. Hibernate JDBC和连接(connection)属性 3.5. Hibernate缓存属性 3.6. Hibernate事务属性 3.7. 其他属性 3.8. Hibernate SQL方言 (hibernate.dialect) 3.9. Hibernate日志类别 ...

    hibernate 教程

    XML配置文件 4. 持久化类(Persistent Classes) 4.1. POJO简单示例 4.1.1. 为持久化字段声明访问器(accessors)和是否可变的标志(mutators) 4.1.2. 实现一个默认的构造方法(constructor) 4.1.3. ...

    最全Hibernate 参考文档

    3.7. XML配置文件 3.8. J2EE应用程序服务器的集成 3.8.1. 事务策略配置 3.8.2. JNDI绑定的SessionFactory 3.8.3. JTA和Session的自动绑定 3.8.4. JMX部署 4. 持久化类(Persistent Classes) 4.1. 一个简单的...

    Hibernate3+中文参考文档

    3.7. XML配置文件 3.8. J2EE应用程序服务器的集成 3.8.1. 事务策略配置 3.8.2. JNDI绑定的SessionFactory 3.8.3. JTA和Session的自动绑定 3.8.4. JMX部署 4. 持久化类(Persistent Classes) 4.1. 一个简单的...

    hibernate3.04中文文档.chm

    2.2.3. Hibernate配置 2.2.4. 用Ant编译 2.2.5. 安装和帮助 2.2.6. 加载并存储对象 2.3. 第二部分 - 关联映射 2.3.1. 映射Person类 2.3.2. 一个单向的Set-based关联 2.3.3. 使关联工作 2.3.4. 值...

    基于SpringMVC+Spring+Hibernate+JQuery+Bootstrap框架的OA系统

    ---“sysconfig.properties”系统配置文件;需要修改“root.dir”属性,设置为系统上传文件时用来存放的根目录 ----系统管理员用户名为:admin;密码为:123456 ----linux类系统需要修改mysql的配置文件...

    Hibernate教程

    2.2.3. Hibernate配置 2.2.4. 用Ant编译 2.2.5. 安装和帮助 2.2.6. 加载并存储对象 2.3. 第二部分 - 关联映射 2.3.1. 映射Person类 2.3.2. 一个单向的Set-based关联 2.3.3. 使关联工作 2.3.4. 值类型的集合...

    JAVA SSH青协志愿服务管理系统源码

    log4j.properties 日志文件 *.properties配置文件 Struts.xml 配置action WebRoot根目录 fckeditor在线编辑器, images img 图片 upload,updown 上传下载, admin common 前台JSP页面 WEB-INF (lib+jsp+*.xml) ...

Global site tag (gtag.js) - Google Analytics