Java处理层次结构
您好: 我有一个应用程序,其中线程层次结构(持久化实体)建模如下(请注意,这可能是一个深度嵌套的层次结构): 我有一个DTO,它的结构如下Java处理层次结构,java,persistence,hierarchy,Java,Persistence,Hierarchy,您好: 我有一个应用程序,其中线程层次结构(持久化实体)建模如下(请注意,这可能是一个深度嵌套的层次结构): 我有一个DTO,它的结构如下 ThreadDTO { private key; private rootKey; private parentKey; ArrayList<ThreadDTO> childThreads; ... getters ... ... setters ... } ThreadDTO { 私钥; 私钥; 私钥; A
ThreadDTO
{
private key;
private rootKey;
private parentKey;
ArrayList<ThreadDTO> childThreads;
... getters ...
... setters ...
}
ThreadDTO
{
私钥;
私钥;
私钥;
ArrayList子线程;
…获得者。。。
…二传手。。。
}
我想将实体实例转换为DTO。是否有任何标准算法/最佳实践可用于此转换?
如果您有任何反馈,我们将不胜感激。DTO非常烦人,您可以使用它们做的最好的事情是创建一个方法,该方法接受参数中的
线程并复制属性,另一个方法将返回带有属性副本的线程
Adam Bien的另一个解决方案是,安全性更低,但代码中的复制/粘贴也更少。我的问题更多地涉及如何创建嵌套层次结构(即ArrayList的填充),以便顶级ThreadDTO实例包含所有子线程DTO(自引用层次结构)…@newbie,同样,由于您必须手动将Thread的所有内容复制到
ThreadDTO`中,因此您只需浏览列表并获取每个线程的ThreadDTO
。注意循环引用。感谢您的回复。我在寻找一种性能优化的方法来填充ArrayList子线程
ThreadDTO
{
private key;
private rootKey;
private parentKey;
ArrayList<ThreadDTO> childThreads;
... getters ...
... setters ...
}