如何将未序列化(JAXB)对象存储在像blob这样的数据库中?

时间:2018-08-13 09:10:39

标签: java serialization blob

我有JAXB自动生成的对象:

@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
    "chargesPackage"
})
@XmlRootElement(name = "ImportChargesRequest")
public class ImportChargesRequest
    extends RequestType
{
...
public class RequestType {

    @XmlAttribute(name = "Id", required = true)
    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
    @XmlID
    protected String id;
...

,我需要将此对象(如BLOB)保存在数据库中。但是,当从XSD生成的类-是在没有serialized的情况下生成的类,而我无法序列化/我得到了异常-java.io.NotSerializableException

在这种情况下,如何将原始请求存储在db中?

1 个答案:

答案 0 :(得分:0)

您可以使用XJC来实现其他可序列化的接口,如下所示:how-to-generate-classes-from-xsd-that-implements-serializable。 另一种选择是使用JAXB将对象序列化为XML并将其存储在BLOB列中。