[英]hibernate for child entity
休眠快速问题-如何使用休眠注释将此类定义为实体-
public class NativeType {
private long id;
private String name;
private int maxPrecision;
private byte maxScale;
private DataStoreProvider provider;
链接为AbstractDataStoreProvider类中的Map集合-
public abstract class AbstractDataStoreProvider implements DataStoreProvider,
Serializable{
private Map<String, NativeType> uniqueNativeTypes;
..
public interface DataStoreProvider {
所以我可以像这样将其存储在数据库表中-
**datastore_provider**
provider_id | provider_name
**native_type**
native_type_id | name | max_precision | max_scale | provider_id
我认为是我,但我无法轻松浏览Hibernate规范。 Java新手,JPA + Hibernate新手。 赞赏指导!
代码样例
我认为您可以使用以下内容-
@Entity
@Table(name = "native_type")
public class NativeType {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "native_type_id")
private Long id;
private String name;
@Column(name = "max_precision")
private int maxPrecision;
@Column(name = "max_scale")
private byte maxScale;
@ManyToOne
@JoinColumn(name="provider_id")
private DataStoreProvider provider;
// rest of the class (getter setter etc.)
}
ID生成
我假设您正在自动生成数据库ID,因此我用@GeneratedValue
批注对其进行了标记。 至于strategy
,我指定了仅适用于本地实验的AUTO
。 对于生产级应用程序,您必须在SEQUENCE
, IDENTITY
和TABLE
之间进行选择。
关系映射
我假设您也将创建一个DataStoreProvider
实体。 在这种情况下,您可以如上所述指定它们之间的关系。
参考
有关更多参考,您可以查阅这本出色的书 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.