我很想通过 JPA 使用 GAE SQL 云,但如果出现问题,我将退回到使用 JPA 的数据存储。
我可以预见,如果我的域对象被注释为实体 A 拥有实体 B,然后实体 B 与实体 C、D 和 E 有关系,那么除非延迟加载,否则向 JPA 询问实体 A 可以加载实体 B 到 E。
因为我打算使用 JAX-RS,所以当 JAXB 编组器启动时,这不会导致延迟加载来水合整个对象图吗?
控制暴露内容的最佳做法是什么?
我目前正在考虑编写一个 DAO 层,明确表示“获取所有用户,但不获取他们的孩子”,或“获取所有具有登录历史记录的用户”。我是否可以使用 JPA / JAX-RS 进行这种级别的控制,或者我最好使用 SQL 查询和 JDBC 来编写它?