读书人

Hibernat 的列变换表达式方式

发布时间: 2012-08-26 16:48:05 作者: rapoo

Hibernat 的列转换表达式方式

Hibernate 允许你自定义一些sql 表达式来存取列,但这些用于简单的属性

?

@Entityclass CreditCard {   @Column(name="credit_card_num")   @ColumnTransformer(      read="decrypt(credit_card_num)",       write="encrypt(?)")   public String getCreditCardNumber() { return creditCardNumber; }   public void setCreditCardNumber(String number) { this.creditCardNumber = number; }   private String creditCardNumber;}

?

?如果一个属性占用了好几列

@Entityclass User {   @Type(type="com.acme.type.CreditCardType")   @Columns( {      @Column(name="credit_card_num"),      @Column(name="exp_date") } )   @ColumnTransformer(      forColumn="credit_card_num",       read="decrypt(credit_card_num)",       write="encrypt(?)")   public CreditCard getCreditCard() { return creditCard; }   public void setCreditCard(CreditCard card) { this.creditCard = card; }   private CreditCard creditCard;}
?

读书人网 >软件架构设计

热点推荐