我目前正在使用以下组件开发分布式应用程序:
1.tier:数据库-服务器-> MySQL 5.5
2.tier:应用服务器-> Glassfish 3.1.2.2
3.tier:独立 Fat-Client -> Java-SE (JRE 6)
我使用 JPA 2.0 (eclipse-link) 作为持久性提供程序,目前使用序列化在第二层和第三层之间传递 @Entity bean。我使用静态编织是为了从 JPA 支持的延迟获取中受益。
我的问题是,由于 2nd/3rd 层之间的序列化延迟获取将不起作用!这会导致大量的网络流量,因为我的一个实体 bean 的每次序列化都要求在通过网络发送之前获取与其他实体/表的所有关系。
在这样的设置中,我如何从 JPA 延迟获取中受益?是否有不需要引入轻量级 DTO/DAO 的解决方法(这会给我的项目增加巨大的复杂性)?
非常感谢您提前提供的帮助!