从实体类自动更新/复制/继承DTO javadocs

从实体类自动更新/复制/继承DTO javadocs,java,javadoc,Java,Javadoc,在我们的系统中,我们从数据库中获取ORM管理的实体bean(使用hibernate),然后将它们复制到DTO bean上,发送到UI DTO上的大多数属性与实体上的属性具有相同的名称,但返回类型通常不同,因为引用的任何相关实体都必须转换为仅存储ID或另一个DTO 在我理想的梦境中,当我为实体编辑javadocs时,DTO中相同命名方法上的javadocs将被更新以匹配。这可以通过构建工具或eclipse插件来完成 有人在外面看到过类似的东西吗?当然有可能。我建议,您需要的是一个源代码解析器 写两

在我们的系统中,我们从数据库中获取ORM管理的实体bean(使用hibernate),然后将它们复制到DTO bean上,发送到UI

DTO上的大多数属性与实体上的属性具有相同的名称,但返回类型通常不同,因为引用的任何相关实体都必须转换为仅存储ID或另一个DTO

在我理想的梦境中,当我为实体编辑javadocs时,DTO中相同命名方法上的javadocs将被更新以匹配。这可以通过构建工具或eclipse插件来完成


有人在外面看到过类似的东西吗?

当然有可能。我建议,您需要的是一个源代码解析器

写两个,一个读JavaDocs,另一个写它们。在这两种情况下,您可能会从开始和过度骑行开始


使所有这些都可以从主类访问,并在构建期间通过maven()或ant()调用该主类。

我认为您想要的可能不合理

DTO不应映射到实体。如果都一样,为什么需要DTO

实体名称通常映射到表名,字段映射到列。如果您获得了实体的字段名,那么您可以轻松地在ORM系统中访问表对象。这是不安全的

此外,DTO应该是灵活的,以适应UI需求和其他层的需求。因此,它涉及到数据传输、转换、组合,比实体更少的字段,更多

例如,您可以将4个实体或视图数据合并到一个DTO中,以进行远程web服务调用。由于粗粒度处理,这是一个性能问题


总之,如果它是企业级JavaEE应用程序,那么DTO是非常必要的。不要复制名称或拥有一个非常依赖的实体,而是从该实体派生出来。

谢谢,这是唯一的答案,理论上应该有效。谢谢。我们在谈论什么方法?如果它是DTO,那么它可能是一个数据结构,没有任何业务逻辑。