`

Hibernate双向映射组件

阅读更多

和单向的类似,只不过多加了一个关联User关联Frofile,Profile同时也关联User

User类

import java.io.Serializable;
import com.lbx.hibernate.model.Profile;

/**
 * 组件双向关联
 * @author Administrator
 *
 */

@SuppressWarnings("serial")
public class User implements Serializable{
	
	private int id;
	private String username;
	private String password;
	private Profile profile;
	
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getUsername() {
		return username;
	}
	public void setUsername(String username) {
		this.username = username;
	}
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
	public Profile getProfile() {
		return profile;
	}
	public void setProfile(Profile profile) {
		this.profile = profile;
	}
	
}

 

Profile类

import java.io.Serializable;

@SuppressWarnings("serial")
public class Profile implements Serializable{
	
	private User user;
	private String email;
	private String phone;
	private String mobile;
	private String address;
	private String postcode;
	
	public User getUser() {
		return user;
	}
	public void setUser(User user) {
		this.user = user;
	}
	public String getEmail() {
		return email;
	}
	public void setEmail(String email) {
		this.email = email;
	}
	public String getPhone() {
		return phone;
	}
	public void setPhone(String phone) {
		this.phone = phone;
	}
	public String getMobile() {
		return mobile;
	}
	public void setMobile(String mobile) {
		this.mobile = mobile;
	}
	public String getAddress() {
		return address;
	}
	public void setAddress(String address) {
		this.address = address;
	}
	public String getPostcode() {
		return postcode;
	}
	public void setPostcode(String postcode) {
		this.postcode = postcode;
	}
	
}

 User.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="com.lbx.hibernate.model">
	
	<class name="User" table="user" lazy="true">
		
		<id name="id" type="int">
			<column name="id" scale="0" />
			<generator class="increment" /> 
		</id>
		
		<property name="username" type="java.lang.String" />
		<property name="password" type="java.lang.String" />
		
		<component name="profile" class="com.lbx.hibernate.model.Profile">
			<parent name="user"/>
			<property name="email"  type="string" />
			<property name="phone"  type="string" />
			<property name="mobile"  type="string" />
			<property name="address"  type="string" />
			<property name="postcode" type="string" />
		</component>
		
	</class>
	
</hibernate-mapping>

 

分享到:
评论

相关推荐

    Spring + Hibernate + Spring mvc +Ajax 整合

    在给定的"Spring + Hibernate + Spring mvc +Ajax 整合"项目中,可能包含以下几个关键组件: 1. **实体类(Entity)**:这些类代表数据库中的表,使用Hibernate注解如@Entity、@Id等,用于对象关系映射。 2. **...

    Hibernate继承映射

    【Hibernate继承映射】是Java开发中...以上就是关于Hibernate继承映射、一对一关系、组件映射以及HQL的基础知识,这些概念和实践技巧在Java企业级开发中非常常见,熟练掌握能有效提高数据操作的效率和代码的可维护性。

    购物车实例(struts+hibernate)

    Hibernate则是一个强大的对象关系映射(ORM)框架,用于简化数据库操作。在购物车系统中,Hibernate用来处理数据的持久化,将Java对象与数据库中的记录关联起来。开发者可以通过定义实体类和映射文件,让Hibernate...

    hibernate 参考手册

    2. **关联映射**:讲述了如何映射对象之间的关联关系,包括单向关联、双向关联、集合类型的映射,以及如何通过配置文件管理这些关系。 3. **EventManager web 应用程序**:通过实际案例,展示了如何将Hibernate集成...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part2

     14.6 映射组件类型集合  14.7 小结  14.8 思考题 第15章 映射实体关联关系  15.1 映射一对一关联  15.1.1 按照外键映射   15.1.2 按照主键映射  15.2 映射单向多对多关联  15.3 映射双向多对多关联关系  ...

    hibernate4.1中文api

    - **Hibernate配置**: 配置`hibernate.cfg.xml`文件来设置数据库连接信息、指定映射文件位置等。 - **构建与Maven**: 使用Maven作为项目构建工具,添加Hibernate依赖到`pom.xml`文件中。 - **启动和助手**: 创建...

    Hibernate4 必备包

    Hibernate4 支持各种关联映射,包括单向、双向以及自关联。通过注解或XML配置文件,可以定义实体间的关联规则。 10. **事件监听器** Hibernate4 提供了事件和监听器机制,允许在特定的持久化操作前后执行自定义...

    hibernate_reference使用指南全

    Hibernate 是一个开源的对象关系映射 (ORM) 框架,它为 Java 应用程序提供了一种将 Java 对象映射到关系型数据库表中的机制。本章节将详细介绍如何从零开始创建一个简单的 Hibernate 应用程序。 **1.2 第一个 ...

    Hibernate+中文文档

    8. 组件(Component)映射 8.1. 依赖对象(Dependent objects) 8.2. 在集合中出现的依赖对象 (Collections of dependent objects) 8.3. 组件作为Map的索引(Components as Map indices ) 8.4. 组件作为联合...

    Hibernate4.3.4.Final-中文文档

    关联映射章节则深入分析了一对一、一对多、多对一、多对多等各种关联类型及其双向映射。 组件映射和继承映射部分,讲解了如何将对象分解为依赖对象、依赖对象的集合,以及如何利用组件实现更复杂的映射策略,如使用...

    hibernate3.6 文档(pdf 格式)

    - **映射文件**:使用 Hibernate 映射文件(.hbm.xml 文件)定义 Java 对象和数据库表之间的关系。 - **Hibernate 配置**:设置 Hibernate 的配置文件(hibernate.cfg.xml),定义数据库连接、方言、缓存策略等。 - ...

    韩顺平老师Hibernate教程PPT(完整)

    Hibernate支持一对一、一对多、多对一和多对多四种关联关系的映射,包括单向和双向关联,以及懒加载和立即加载策略。 十、性能优化 为了提高性能,可以采用批处理、延迟加载、缓存策略等手段。比如,使用BatchSize...

Global site tag (gtag.js) - Google Analytics