【spring框架28】spring之packagesToScan
阿新 • • 發佈:2018-12-17
spring的spring.jar的jar包內,在org.springframework.orm.hibernate3.annotation下,有一個AnnotationSessionFactoryBean類,其中有一個屬性叫做"packagesToScan",有個方法叫setpackagesToScan(),也就是說我可以再spring裡面將這個屬性給設定上。
packagesToScan是"包掃描"的意思,哪些包spring可以給我們掃描一下,看看有哪些實體類,這一項在我們在配置檔案中配置hibernate的實體類的時候可以這麼配,只要給出具體的掃描範圍就可以了,不需要將實體類一個一個的寫出來
不用packagesToScan在beans.xml中:
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean"> <property name="dataSource" ref="dataSource"/> <property name="annotatedClasses"> <list> <value>cn.edu.hpu.model.User</value> <value>cn.edu.hpu.model.Log</value> </list> </property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect"> org.hibernate.dialect.MySQLDialect </prop> <prop key="hibernate.show_sql">true</prop> </props> </property> </bean>
用packagesToScan的時候:
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean"> <property name="dataSource" ref="dataSource"/> <property name="packagesToScan"> <list> <value>cn.edu.hpu.model</value> </list> </property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect"> org.hibernate.dialect.MySQLDialect </prop> <prop key="hibernate.show_sql">true</prop> </props> </property> </bean>
這樣cn.edu.hpu.model的實體類全部會掃描出來,就不用一個一個寫了。