集合映射配置
来源:互联网 发布:手机铃声制作软件 mac 编辑:程序博客网 时间:2024/06/05 20:32
Product.java
package com.model;import java.util.ArrayList;import java.util.HashSet;import java.util.List;import java.util.Set;public class Product {private int id;private String name;private Set<String> colors = new HashSet<String>();private List<ColorPrice> colorPrices = new ArrayList<ColorPrice>();public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public Set<String> getColors() {return colors;}public void setColors(Set<String> colors) {this.colors = colors;}public List<ColorPrice> getColorPrices() {return colorPrices;}public void setColorPrices(List<ColorPrice> colorPrices) {this.colorPrices = colorPrices;}}
ColorPrice.java
package com.model;public class ColorPrice {private String color;private double price;public ColorPrice(){}public ColorPrice(String color,double price){this.color = color;this.price = price;}public String getColor() {return color;}public void setColor(String color) {this.color = color;}public double getPrice() {return price;}public void setPrice(double price) {this.price = price;}}
Product.hbm.xml
<?xml version="1.0"?><!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd"><!-- ORM映射文件 --> <hibernate-mapping package="com.model"><class name="Product" table="product"><id name="id" column="id"><generator class="native" /></id><property name="name"></property><set name="colors" table="p_color"><key column="pId"></key><element type="string" column="color"></element></set><bag name="colorPrices" table="p_c_p"><key column="pId"></key><composite-element class="ColorPrice"><property name="color"></property><property name="price"></property></composite-element></bag></class></hibernate-mapping>
单元测试:
@Testpublic void t(){Session session = HibernateUtil.getInstance().getSession();session.beginTransaction();Set<String> set = new HashSet<String>();set.add("red");set.add("blue");Product p = new Product();p.setName("p");p.setColors(set);List<ColorPrice> l = new ArrayList<ColorPrice>();l.add(new ColorPrice("d",3));p.setColorPrices(l);session.save(p);/*Product p = (Product) session.load(Product.class, 1);p.getColors().remove("red");*/session.getTransaction().commit();session.close();}
- 集合映射配置
- Hibernate_集合类映射配置
- Set集合的常用映射配置
- Hibernate中配置集合映射(1)
- Hibernate中配置集合映射(2)
- Hibernate中配置集合映射(3)
- 映射文件中配置集合属性
- 集合映射
- 集合映射
- 集合映射
- 集合映射
- 集合映射
- 集合映射
- 集合映射
- 集合映射
- 集合映射
- Hibernate4学习总结(2)--配置形式的集合映射,关联关系映射
- 组件映射和集合映射
- JDBC注册驱动程序三种方式
- 自增字段 auto_commit的研究分析
- windows远程Putty+Xming使用方法
- 大数据:“人工特征工程+线性模型”的尽头
- nginx源码学习(二) 内存池结构 ngx_pool_t
- 集合映射配置
- java_web学习第十一天(jdbc数据库驱动------数据库连接池)
- C#下16进制和BCD码转换代码
- 大数据量的算法
- 高仿launcher和墨迹左右拖动效果
- Linux 下lamp的安装和配置 【编译安装】
- CPU+GPU异构计算编程简介
- oracle profile 配置文件
- crontab