java - 使用 Spring 3+Hibernate JPA 时发现 JPA 注释类

标签 java hibernate spring jpa persistence

我有一个使用 Spring 3 + Hibernate JPA 堆栈的 Web 应用程序。

我想知道是否有办法让 Hibernate 自动发现带@Entity 注释的类,这样我就不必在 persistence.xml 文件中列出它们。 我的 @Entity 注释类“实时”在一个单独的 jar 中,位于我的 Web 应用程序的 WEB-INF/lib 中。

这是我的 Spring 配置文件中的一个片段:

<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
   <property name="persistenceUnitName" value="mypersistence"/>
   <property name="dataSource" ref="dataSource"/>
   <property name="jpaVendorAdapter">
       <bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
           <property name="showSql" value="true"/>
           <property name="generateDdl" value="true"/>
           <property name="databasePlatform" value="org.hibernate.dialect.DerbyDialect"/>
       </bean>
   </property>
</bean>

<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName" value="org.apache.derby.jdbc.ClientDriver"/>
    <property name="url" value="jdbc:derby://localhost:1527/library;create=true"/>
    <property name="username" value="app"/>
    <property name="password" value="app"/>
</bean>

<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
    <property name="entityManagerFactory" ref="entityManagerFactory"/>
</bean>

<bean id="persistenceAnnotation" class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor"/>

最佳答案

您可以将 persistence.xml 文件放入实体所在的 jar 中。然后不需要指定任何内容,它会自动运行。

关于java - 使用 Spring 3+Hibernate JPA 时发现 JPA 注释类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4872705/

相关文章:

mysql - Spring JPA 无法更新名称包含连字符的 MySQL 数据库

java - Quartz 找不到与 Spring 的交易

java - @Transactional 在 Spring Boot 中不起作用

java - 找不到类 org.hibernate.proxy.pojo.bytebuddy.ByteBuddyInterceptor 的序列化程序

java - 当 Log4j 不应该执行此操作时,它会在控制台上输出

java - registerKeyboardAction(...) 和 getInputMap().put(...) + getActionMap().put(...) 有什么区别?

java - 使用增量整数命名 fileOutputStream

java - 使用应用程序实现更改用户角色场景

hibernate - 通过 PostgreSQL 数据库上的简单 java 查询获取 nextval 序列值

Java JDialog 不显示 JTable