Вы можете использовать XmlAdapter
для этого варианта использования. Адаптер XML преобразует не отображаемый объект java.sql.Clob
в отображаемый объект, например String
:
ClobAdapter
import java.sql.Clob;
import javax.xml.bind.annotation.adapters.XmlAdapter;
public class ClobAdapter extends XmlAdapter<String, Clob> {
@Override
public Clob unmarshal(String v) throws Exception {
// Convert String to Clob
}
@Override
public String marshal(Clob v) throws Exception {
// Convert Clob to String
}
}
Root
@XmlJavaTypeAdapter
должно быть установлено в свойстве Clob. Эта аннотация, как вы ссылаетесь в XmlAdapter
:
import java.sql.Clob;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
public class Root {
private Clob clob;
@XmlJavaTypeAdapter(ClobAdapter.class)
public Clob getClob() {
return clob;
}
public void setClob(Clob clob) {
this.clob = clob;
}
}
Демо
import javax.xml.bind.JAXBContext;
public class Demo {
public static void main(String[] args) throws Exception {
JAXBContext jc = JAXBContext.newInstance(Root.class);
}
}
Для получения дополнительной информации