在Hibernate框架中,为了更好的配合数据库,将类型分为value type和entity type。
entity type特征
1.有identifier(标识符)作为类对象的唯一标识。
2.一般可以被解析为一张table(表)。
3.通过identifier(标识符)可以被引用。
value type特征
1.无identifier(标识符),每一个类对象都是唯一的。
2.不会被解析成一张表。
3.不会被引用,value type会被存储在entity type中。
附上Hibernate手册中对于value type和entity type的解释。
This is an example of an association between two equally important classes : two entities. As mentioned earlier, there are other classes and types in a typical model, usually "less important". Some you have already seen, like an int or a java.lang.String. We call these classes value types, and their instances depend on a particular entity. Instances of these types do not have their own identity, nor are they shared between entities. Two persons do not reference the same firstname object, even if they have the same first name. Value types cannot only be found in the JDK , but you can also write dependent classes yourself such as anAddress or MonetaryAmount class. In fact, in a Hibernate application all JDK classes are considered value types. You can also design a collection of value types. This is conceptually different from a collection of references to other entities, but looks almost the same in Java.
时间: 2024-10-01 03:55:39