我正在使用eclipse indigo进行EE开发来开发SE项目,只是为了从JPA项目支持中受益。
我创建了一个JPA项目,这是我的persistence.xml文件的属性:
<properties>
<property name="eclipselink.persistence-context.reference-mode" value="WEAK" />
<property name="eclipselink.cache.shared.default" value="false"/>
<property name="eclipselink.cache.size.default" value="5000"/>
<property name="javax.persistence.jdbc.driver" value="org.apache.derby.jdbc.EmbeddedDriver" />
<property name="javax.persistence.jdbc.url"
value="jdbc:derby:DB;create=true;" />
<property name="eclipselink.ddl-generation" value="create-tables" />
<property name="eclipselink.ddl-generation.output-mode" value="both" />
</properties>
出现警告:
"eclipselink.cache.shared.default" is a legacy entity caching property. Consider migration to JPA 2.0 and EclipseLink cache settings via annotation or XMLmapping file
我正在使用eclipseLink(2.3.0)的最新版本,here是EL文档的链接,其中有一个将属性设置到persistence.xml文件的示例。
有人知道警告的原因吗?
请注意,我在普通的java项目中使用了相同的属性,并且没有警告,只有在使用JPA项目时才会出现。
答案 0 :(得分:2)
它只是想告知EclipseLink实体缓存的使用。相反,它建议你可以使用缓存,它是JPA 2.0的一部分。此处的其他来源描述了用法:http://en.wikibooks.org/wiki/Java_Persistence/Caching
为什么会这样做,最好在添加此类消息的请求中进行说明:https://bugs.eclipse.org/bugs/show_bug.cgi?id=294077