2012-03-18 11 views
14

Witam Buduję aplikację hibernacji. Czy naprawdę potrzebuję konfiguracji od dołu?Dlaczego "annotatedClasses" jest potrzebna, jeśli istnieje @Entity?

<property name="annotatedClasses"> 
     <list> 
      <value>org.fixus.springer.model.User</value> 
     </list> 
    </property> 

mam ustawione adnotacji napędzane w moim korzeni context.xml

<mvc:annotation-driven /> 
<context:component-scan base-package="org.fixus.springer" /> 
<context:component-scan base-package="org.fixus.springer.model" /> 

Teraz nie powinno hibernacji automatycznie wziąć wszystko z tego Pakiety z dopiskiem @Entity i przekonwertować go na stole? Jak na razie bez adnotowanych klas, nie utworzy tabeli z jednostki:

Odpowiedz

27

Użyj docs, Luke!

[...] Przykładowa AnnotationSessionFactoryBean definicji Bean

<bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean"> 
    <property name="dataSource" ref="dataSource"/> 
    <property name="annotatedClasses"> 
     <list> 
      <value>test.package.Foo</value> 
      <value>test.package.Bar</value> 
     </list> 
    </property> 
</bean> 

lub podczas skanowania na ścieżce klasy autodetekcję klas jednostki:

<bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean"> 
    <property name="dataSource" ref="dataSource"/> 
    <property name="packagesToScan" value="test.package"/> 
</bean> 

Jak widać masz do wyboru def wszystkie klasy jawnie lub tylko pakiet do skanowania. <context:component-scan/> nie rozpoznaje adnotacji Hibernate/JPA, a zatem nie ma żadnego efektu.

Powiązane problemy