请告知我从分析中得出的 DTO 模式是什么是数据传输对象模式,您能否在 Hibernate 或任何其他 java 示例中提供任何关于它的示例,谢谢
问问题
1643 次
1 回答
3
DTO 是在 EJB 2.1(统称为 Sun 蓝图目录)中发现的可怕持久性的解决方法之一。它用于从实体 bean 中提取数据并将其传递给数据层。来自该层的数据放置在 DTO 中并放入实体 bean。这仅适用于 bean 管理的持久性。
这就是 DTO 的正式含义。今天,您在将数据从后端传输到前端(在客户端-服务器架构中)时也会发现这一点。
如果您想在 Hibernate 中使用它,请创建一个查询/条件来选择您需要的列,然后使用AliasToBeanResultTransformer
在 DTO 中设置这些列。Hibernate 文档中的一个示例:
List resultWithAliasedBean =
s.createCriteria(Enrolment.class)
.createAlias("student", "st")
.createAlias("course", "co")
.setProjection(
Projections.projectionList()
add( Projections.property("co.description"), "courseDescription" )
)
.setResultTransformer( new AliasToBeanResultTransformer(StudentDTO.class) )
.list();
StudentDTO dto = (StudentDTO)resultWithAliasedBean.get(0);
于 2012-07-31T17:20:51.103 回答