`

Hibernate组件单向映射

阅读更多

User类中有一个属性 private Profile profile;

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 String email;
	private String phone;
	private String mobile;
	private String address;
	private String postcode;
	
	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">
			<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>

 

分享到:
评论

相关推荐

    Hibernate继承映射

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

    hibernate 参考手册

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

    hibernate4.1中文api

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

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

     11.2.1 用客户化映射类型取代Hibernate组件  11.2.2 用UserType映射枚举类型  11.2.3 实现CompositeUserType接口  11.2.4 运行本节范例程序  11.3 操纵Blob和Clob类型数据  11.4 小结  11.5 思考题 第12章 ...

    Hibernate4 必备包

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

    hibernate_reference使用指南全

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

    Hibernate学习笔记

    在一对一映射中,可以通过标签来实现,主键关联映射可以是单向的也可以是双向的,还可以通过唯一外键关联来实现映射。在映射文件中,可以通过设置lazy属性来控制关联的懒加载策略,这有助于性能优化,因为它可以延迟...

    hibernate_3.5.6_中文帮助文档(有目录)_Final.pdf

    映射定义包括了DOCTYPE声明、Hibernate-mapping元素、类映射、属性映射、标识符映射以及如何映射一对多、多对一、一对一、自然ID、组件和子类关系等。这部分内容是构建持久化类与数据库表之间的映射桥梁,是...

    Hibernate学习.pdf

    - **组件映射**: 将Java对象中的某个属性映射为数据库表中的多个字段。 #### 8. 继承映射 - **继承映射**: 支持多种继承策略,如单表继承、类表继承和子类表继承等。 #### 9. 对象操作 - **查询**: 使用HQL或...

    Hibernate参考指南

    Hibernate的架构主要由以下组件组成: 1. Configuration:负责读取配置信息,建立SessionFactory。 2. SessionFactory:整个应用的全局对象,用于创建Session实例,它是线程安全的,应被所有线程共享。 3. Session:...

    HIBERNATE - 符合Java习惯的关系数据库持久化

    1. **概览**:提供了一个整体视图,展示Hibernate如何处理持久化对象,包括Session、SessionFactory、Transaction等核心组件。 2. **对象状态**:Hibernate管理的对象具有三种状态:瞬时态(Transient)、持久态...

    hibernate3.6 文档(pdf 格式)

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

    Hibernate.pdf

    组件映射和继承映射是指将复杂对象结构映射到数据库表中,连接池支持是指Hibernate可以配置连接池来管理数据库连接,而QBC查询则是一种基于对象标准的查询方式。 Hibernate配置类型和属性配置部分,则包括基本的...

    Hibernate+中文文档

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

    hibernate_reference中文文档.pdf

    这部分讲述了 Hibernate 中组件映射的技术。 - **8.1 依赖对象 (Dependent objects)**:介绍如何映射依赖对象。 - **8.2 在集合中出现的依赖对象 (Collections of dependent objects)**:讨论如何映射集合中的依赖...

Global site tag (gtag.js) - Google Analytics