我想反序列化包含相对于xml文件的文件名的对象。
我正在尝试访问对象的Commit函数中的引用文件,但是我发现没有办法将xml的路径传递给Commit函数。
我可以使用全局,但我不喜欢这个想法。
我可以使用过滤器并要求xml使用过滤器选项。这种方法不是太糟糕但我不愿意。这种方法的另一个问题是在序列化时需要“不过滤”。
答案 0 :(得分:0)
在序列化期间,可以使用地图来收集信息。
@Commit
public void commit(Map session) {
String blah = session.get("xyz")
session.put("abc", "foo");
}
此外,您可以在序列化之前预先实例化对象。
Foo foo = new Foo("my/path");
Persister persister = new Persister();
InputStream in = new FileInputStream("my/path");
persister.read(foo, in);