0

jpa と spring を使用していますが、以下のコードでエラーが発生しました。

@PersistenceContext protected EntityManager entityManager;

     entityManager.createQuery("select c from Theatre c");

そして、このエラーを取ります。

java.lang.IllegalArgumentException: org.hibernate.hql.internal.ast.QuerySyntaxException: Theatre is
not mapped [select c from Theatre c]

以下で使用する問題を解決するために、プロジェクトはクラスを認識しておらず、動的プログラミングを作成したいため、他の解決策が必要です

<class>Theatre </class> in "PersistenceUnit"

どんなアイデアでも感謝します

よろしくお願いします

4

1 に答える 1

1

LocalContainerEntityManagerFactoryBean定義で属性packagesToScanを使用できます (Spring 3.1 で使用可能)。このアプローチを使用すると、persistence.xmlを定義する必要がなくなります。構成は次のようになります。

<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
      <property name="dataSource" ref="dataSource" />
      <property name="packagesToScan" value="com.sergialmar.domain" />
      <property name="jpaVendorAdapter">
         <bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter" />
      </property>
      <property name="jpaProperties">
         <props>
            <prop key="hibernate.hbm2ddl.auto">create-drop</prop>
            <prop key="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</prop>
         </props>
      </property>
   </bean>
于 2013-09-05T12:16:30.793 に答える