0
Seamエンティティにいくつかのメソッドを追加したいと思います。これらのメソッドはデータベースに独自の列を持ちません。彼らは単にいくつかの列をフォーマットして結合します。Seamエンティティのその他のメソッド
@Entity
@Table(name = "event", schema = "public")
public class Event implements java.io.Serializable {
// [...]
@Column(name = "status", nullable = false, length = 13)
@NotNull
@Length(max = 13)
private String status;
public String getStatus() {
return this.status;
}
public void setStatus(String status) {
this.status = status;
}
public String getSpecialStatus() { // not allowed as there is no setter and no column 'specialStatus'
return someValue;
}
// [...]
}
このコードは、次の例外がスローされます。
javax.persistence.PersistenceException: org.hibernate.PropertyNotFoundException: Could not find a setter for property specialStatus in class foobar.entity.Event
私は、次のセッターを追加しようとしました:
private void setSpecialStatus(String status){
throw new NotImplementedException();
}
に例外の変更:
javax.persistence.PersistenceException: org.hibernate.HibernateException: Missing column: specialStatus in public.event
は誰もいを道があるかどうかを知るoこの問題を解決する?エンティティにメソッドを追加することは悪い習慣ですか?もしそうなら、私はそれをどのように実装すべきですか?
ありがとうございました! – SecStone
javaフラグを使用することもできます public transient String xyz; – AndresQ