我有一个带有JPA注释的Java bean / model类,如下所示。该类有一个复合键,如下所示。在DAO.java
中,如何设置此复合键的键?
@EmbeddedId @AttributeOverrides({ @AttributeOverride(name =“ratioFunctionId”,column = @Column(name =“ratio_function_id”,nullable = false,scale = 0)), @AttributeOverride(name =“expressionId”,column = @Column(name =“expression_id”,nullable = false,scale = 0))}) public RatioFunctionExpressionId getId(){ 返回this.id; }
public void setId(RatioFunctionExpressionId id) {
this.id = id;
}
答案 0 :(得分:0)
要为此属性设置值,只需创建一个新实例并指定它:
RatioFunctionExpressionId newId = new RatioFunctionExpressionId();
newId.setRatioFunctionId(aFunctionId);
newId.setExpressionId(anExpressionId);
aRatioFunctionExpression.setId(newId);
请记住,RatioFunctionExpressionId
为@Embeddable
,它不需要自己的ID,因为它本身并不代表实体。它只是为了提供易于组合和模块化的属性定义分组。