не уверен, что это «кусок пирога», но, поскольку вы можете хранить XML из экземпляра Properties и загружать экземпляр из XML, вы можете иметь свойство @Lob в вашей сущности, содержащее XML, которое будетсохранялось.Что-то вроде:
class MyEntity implements Serializable {
@Transient
Properties props;
@Lob
byte[] xmlProp; //the xml as a byte[]
//ids, getters & setters ommited
}
И затем вы можете реализовать DAO для выполнения тяжелой работы по сохранению и извлечению вашей сущности:
class MyEntityDAO {
public void persist(MyEntity entity){
try {
ByteArrayOutputStream bos = new ByteArrayOutputStream();
entity.getProps().storeToXML(bos, "a simple comment if you like");
byte[] byteStream = bos.toByteArray();
entity.setXmlProp = byteStream;
//save your instance with hibernate...
} catch (IOException e) {
e.printStackTrace();
}
}
public MyEntity retrieveById(Long id){
Properties propFromDB = new Properties();
MyEntity ent = //retrieve the instance with hibernate...
try{
Properties propFromDB = new Properties();
ByteArrayInputStream bais = new ByteArrayInputStream(ent.getXmlProp());
propFromDB.load(bais);
ent.setProp(propFromDB);
return ent;
} catch (IOException ioe){
ioe.printStackTrace();
}
return null;
}
}
Проверьте методы storeToXML и loadFromXML в java.util.Properties API.
Надеюсь, это поможет;