0

该属性存在哪些值,eclipselink.weaving它们的含义是什么?

在 Spring 中,我们可以使用 Java 配置或 XML 配置来创建 entityManager,以下示例是针对 XML 的:

<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
    <property name="jpaProperties">
        <props>
            <prop key="eclipselink.weaving">false</prop>
            ...
        </props>
    </property>
   ...
</bean>

我们有以下选择:

  • static- 静态编织以在构建时编织所有适用的类文件,以便您可以交付预编织的类文件。

是什么false意思?我们可以将哪些选项传递给eclipselink.weaving属性?

编辑:我想在编译时配置编织。我正在使用这个 Maven 插件

<groupId>com.ethlo.persistence.tools</groupId>
<artifactId>eclipselink-maven-plugin</artifactId>

我应该使用什么值falseor static

4

1 回答 1

1

eclipselink.weaving属性状态 3 值的 Javadoc :

  • "true" - 要求编织完成。如果实体未编织,将抛出异常
  • "false" - 强制不进行编织
  • "static" - 要求使用静态编织实用程序来编织实体

True aka Dynamic 意味着有一个代理将在 JVM 中编织实体。请参阅文档以在容器外部进行设置。Static 告诉 EclipseLink 您已经在类加载器中的 java 类上完成了自己的编织(请参阅wiki了解如何设置它),而 false 关闭任何需要编织类的选项(更改跟踪、一对一懒惰等等)。

于 2021-11-25T16:57:38.207 回答