Hibernate- 组件映射
2018-03-23 15:29
330 查看
一 hbm.xml
二 实例存储
“`
package cn.zm.dao;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
public class Test {
}
java中组合对象,使用<component>元素添加映射方式,属性同样一一对应列表项。 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <!-- 1.设置包名 --> <hibernate-mapping package="user"> <!-- 2.设置要映射的类名name,与表名table --> <class name="cn.zm.dao.UserAccount" table="userAccount"> <!-- 3.设置主键name,类型type ,对应表中字段column (不写则默认相同) --> <id name="uuid" type="java.lang.String"> <!-- 4.主键生成策略 class --> <generator class="assigned"></generator> </id> <!-- 5.普通属性的映射 name属性名,type类型,column对应表中的字段名 --> <component name="p" class="cn.zm.dao.PersonModel"> <property name="userId"></property> <property name="name"></property> </component> <property name="age"></property> </class> <!-- <class name="cn.zm.UserAccount1" table= 4000 "userAccount1"> <property name="age"></property> </class> --> </hibernate-mapping>
二 实例存储
“`
package cn.zm.dao;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
public class Test {
public static void main(String[] args) { /* 1. 读取hibernate.cfg.xml,创建session工厂,是线程安全的。 默认读取文件为hibernate.cfg.xml, 如果要显示指定文件名,则如下: SessionOnFactory sf = new Configuration().configure("javass.cfg.xml").buildSessionFactory(); */ @SuppressWarnings("deprecation") SessionFactory sf = new Configuration().configure().buildSessionFactory(); /* 2. Session是应用程序主要使用的Hibernate接口,相当于JDBC中的Connection+Statement/PreparedStatement, 是线程不安全的。 */ Session s = null; /** * 3. Transaction是 Hibernate的Transaction。 * */ Transaction t = null; //1. 准备数据 UserAccount um = new UserAccount(); um.setUuid("13"); um.setAge("1"); PersonModel pm = new PersonModel(); pm.setUserId("id1"); pm.setName("name1"); um.setP( pm ); try { //2. 开启session s = sf.openSession(); //3 session开启事务 t = s.beginTransaction(); //4. 调用save方法,传入userAccout实例 s.save( um ); //5. 提交事务 t.commit(); }catch( Exception e ) { t.rollback(); } }
}
相关文章推荐
- Hibernate(十二)hibernate查询排序组件映射
- Eclipse快速上手Hibernate--5. 组件映射
- Hibernate组件(Component)映射
- Hibernate映射组件属性xml形式之方式二
- Hibernate征途(五)之继承映射和组件映射
- hibernate参考手册之---组件(Component)映射
- Hibernate实战_笔记26(映射组件)
- Hibernate的组件(Component)映射
- hibernate 组件映射
- Hibernate之嵌套组件映射
- 【Hibernate框架开发之六】Hibernate中Annotation的关系映射&&组件映射!
- Eclipse快速上手Hibernate--5. 组件映射(摘自javaxmj的blog)
- hibernate映射组件属性(组件属性为类但是不是持久化类)
- Hibernate征途(五)之继承映射和组件映射
- Hibernate Annotation组件映射
- hibernate笔记--组件映射方法
- Hibernate映射组件属性(一)
- hibernate 组件(Component)映射
- Hibernate笔记――6.映射组件属性
- Hibernate学习笔记(五)映射组件属性