User类: 注意他的name属性
package dao.po;
/**
* User类 (组件映射一例)
*
* user表要保存 User类 与 Name类 的信息
*
* Name类, 他不会单独保存再一张表中,没有Name.hbm.xml
*/
public class User
{
private int id;
private Name name; //是Name类型, 他不会单独保存再一张表中,没有Name.hbm.xml
private String email;
}
package dao.po;
/**
*
* Name类 (组件映射一例)
*
* 他不是po, 不会单独保存再一张表中,没有Name.hbm.xml
*
*/
public class Name
{
private String fristName;
private String lastname;
}
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="dao.po">
<class name="User">
<id name="id">
<generator class="native"/>
</id>
<property name="email" />
<!-- 组件映射 -->
<component name="name">
<property name="fristName" column="frist_name"/>
<property name="lastname" column="last_name"/>
</component>
</class>
</hibernate-mapping>
保存操作:
package dao;
import org.hibernate.Session;
import org.hibernate.Transaction;
import dao.po.Name;
import dao.po.User;
/**
* 组件映射一例
*
*/
public class Component
{
public static void main(final String[] args)
{
add();
}
public static void add()
{
final Name name = new Name();
name.setFristName("周");
name.setLastname("星驰");
final User u = new User();
u.setEmail("email@gmail.com");
u.setName(name); //建立关联
Session session = null;
try
{
session = HibernateUtil.getSeesion();
final Transaction tx = session.beginTransaction();
session.save(u);
tx.commit();
}
finally
{
if (session != null)
{
session.close();
}
}
}
}
分享到:
相关推荐
这涉及到员工的基本信息录入、更新与查询,如姓名、性别、年龄、职位、入职日期等,以便于企业对员工进行分类、统计和分析。此外,还包括员工的个人信息变动记录,如职务晋升、岗位调动等,确保信息的实时性和准确性...
自然语言处理(NLP)是计算机科学领域的一个重要分支,主要研究如何使计算机理解、生成和处理人类自然语言。在这个项目中,我们关注的是利用朴树贝叶斯方法来预测一个人的性别,仅仅基于他们的姓名。这种方法是机器...
面向对象开发方法(Object-Oriented Development Methodology, 简称 OO) 的核心理念在于它模仿人类思维方式来构建软件系统,使得问题域(即需要解决的实际问题)与解决方案的空间(即通过编程实现的解决方案)之间的...
2. **联系人类**:定义一个Contact类,封装联系人的姓名和电话号码等属性,以及相关的方法,如获取、设置信息等。 3. **联系人显示模式**:设计一个界面显示模块,用于呈现联系人信息,可以是列表形式或者其他的...
域名系统(Domain Name System,简称DNS)是互联网中的关键基础设施之一,它提供了一种将人类易于记忆的域名映射为计算机能够识别的IP地址的服务。在TCP/IP网络环境中,DNS的作用尤为重要,它不仅简化了用户对网络...
点击按钮后,系统通过算法从列表中随机选取一个姓名,并可能利用TSpeakermodule之类的语音合成插件将选中的姓名读出来,增加互动性。 随机点名算法通常涉及概率和统计学知识,简单来说,它需要确保每个学生被选中的...
例如,可能会有一个人类(Person)的类,包含姓名(Name)、年龄(Age)属性,以及说话(Speak)这样的方法。 泛型是C#中的另一个重要特性,它允许创建可重用的数据结构和算法,而不必指定具体的类型。这在处理集合...
15.5 抽象类与接口 .195 15.6 小 结 .196 第十六章 组织应用程序 .198 16.1 基 本 概 念 .198 16.2 使用名字空间 .200 16.3 使用指示符 .203 16.4 程 序 示 例 .206 16.5 小 结 .213 第十七章 文 件 ...
YAML (YAML Ain’t Markup Language) 是一种用于人类可读的数据序列化的格式,常用于配置文件中。其特点包括: - **简洁性**:易于编写和阅读。 - **灵活性**:支持复杂的数据结构。 - **广泛支持**:多数编程语言都...
1. **查询操作**:在数据库操作中,"选择"(A)是从关系中选取满足特定条件的记录,而"投影"(B)则是从关系中选取指定的列,即查询学生的姓名和班级是投影操作。 2. **Web开发**:在Web应用中,可以通过HTTP请求的...