问题在标题中。有什么办法来说明一个实体类的字段不是一个持久属性?
一些解释:我无法实现必要的映射。但是我可以在DAO中使用查询来获取所有必要的数据。所以,我想手动将这些数据插入到DAO findAll()方法中的实体中。
但JPA将所有实体的字段视为持久属性,并将它们添加到生成的sql查询中。当然,我得到一个异常,查询无法执行。所以,我需要说明'这个字段将被手动设置,跳过它'。
P.S.这个解决方案对我来说听起来很难看,但我无法找到更好的解决方案,因为我有'不可变的'数据库模式,我需要将它映射到我的实体上。
+1用于提及'transient'关键字,这是Hibernate肯定的荣誉,我相信JPA。在真正合适的时候使用低级语言功能,而不是注释,这是很有意义的。 – 2010-01-05 13:07:07