我有3个实体类和更多东西。我想创建一个工具,用户可以在其中创建新的实体类和/或向现有的3个实体类添加其他字段,包括JPA注释(例如,扩展它们)。该工具应使用某种文本格式(如xml)并从该配置文件生成类。
JAXB是否是正确的工具?
由于我对此完全陌生,有人可以指点我这个教程吗?请注意,我不想序列化对象,而是从xml文件创建新类。
答案 0 :(得分:0)
如果你的工具可以使用xml,那么JAXB是生成java类的不错选择。 JAXB可以将xml转换为模式,然后生成类。这是一篇有用的文章,了解JAXB的工作原理,可以帮助您了解它如何解决您的问题:
http://www.javaworld.com/javaworld/jw-06-2006/jw-0626-jaxb.html
答案 1 :(得分:0)
注意:我是EclipseLink JAXB (MOXy)主管,是JAXB (JSR-222)专家组的成员。
EclipseLink JPA提供可扩展的实体,可以通过其XML映射文件添加。通过采用属性名称的通用get / set方法访问虚拟属性。
@Entity
@VirtualAccessMethods
public class Customer{
// Real Properties
...
// Code for Virtual Properties
@Transient
private Map<String, Object> extensions;
public <T> T get(String name) {
return (T) extentions.get(name);
}
public Object set(String name, Object value) {
return extensions.put(name, value);
}
}
了解更多信息