📄 propertymap.java
字号:
package org.hibernate.test.annotations.any;import java.util.HashMap;import java.util.Map;import javax.persistence.Column;import javax.persistence.Entity;import javax.persistence.GeneratedValue;import javax.persistence.Id;import javax.persistence.JoinColumn;import javax.persistence.JoinTable;import javax.persistence.Table;import org.hibernate.annotations.AnyMetaDef;import org.hibernate.annotations.Cascade;import org.hibernate.annotations.ManyToAny;import org.hibernate.annotations.MapKey;import org.hibernate.annotations.MetaValue;@Entity@Table( name = "property_map" )public class PropertyMap { private Integer id; private String name; private Map<String, Property> properties = new HashMap<String, Property>(); public PropertyMap(String name) { this.name = name; } public PropertyMap() { super(); } @Id @GeneratedValue public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } @ManyToAny( metaColumn = @Column( name = "property_type" ) ) @AnyMetaDef( idType = "integer", metaType = "string", metaValues = { @MetaValue( value = "S", targetEntity = StringProperty.class ), @MetaValue( value = "I", targetEntity = IntegerProperty.class ) } ) @Cascade( org.hibernate.annotations.CascadeType.ALL ) @JoinTable( name = "map_properties", joinColumns = @JoinColumn( name = "map_id" ), inverseJoinColumns = @JoinColumn( name = "property_id" ) ) @MapKey( columns = { @Column( name = "map_key" ) } ) public Map<String, Property> getProperties() { return properties; } public void setProperties(Map<String, Property> properties) { this.properties = properties; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -