如何以与实现无关的方式在 JPA 中创建 Clob
我正在使用Ejb3和JPA(目前基于Hibernate和Oracle 10g)
我有一个包含 clob 的实体
@Entity
@Table(name = "My_TAB")
public class ExampleEntity implements java.io.Serializable {
private Clob someText;
public void setSomeText(Clob someText) {
this.someText= someText;
}
@Column(name = "COLUMN_NAME")
public Clob getSomeText() {
return this.someText;
}
然后我想保存这种类型的实体。
目前,我正在做以下工作,效果很好
ExampleEntity exampleEntity = new ExampleEntity();
exampleEntity.setSomeText(Hibernate.createClob(aStringValue));
someOtherDao.save(exampleEntity);
然而,这将我的代码与Hibernate联系在一起!到目前为止,我特别避免了Hibernate扩展,只使用了JPA注释。代码之所以有效,是因为Hibernate确实是我当前的实现。
有没有某种JPA API允许我以通用方式创建一个clob?因此,如果以后我决定切换到Toplink / EclipseLink或其他东西,我就不必改变任何东西了吗?