persistence.xml配置文件修改存放路徑問題的解決辦法

今天整合Spring、struts2和Spring Data JPA的時候遇到以下問題,現記錄以供參考。


<!-- 定義實體管理工廠bean -->
<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalEntityManagerFactoryBean">
<property name="persistenceUnitName" value="demo" />
<property name="persistenceXmlLocation" value="classpath:persistence.xml" />
</bean>

按以上代碼配置實體管理工廠時將會拋出異常,大意就是找不到persistence.xml文件。

因爲我的persistence.xml文件是放在與src同級的resource文件夾內的,而默認會去src下META-INF文件夾加載該配置文件。

現解決辦法有兩種:

1、將persistence.xml文件移至src/META-INF/下,若不存在該文件夾則手動創建;

2、將

org.springframework.orm.jpa.LocalEntityManagerFactoryBean
改爲
org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean

如果要了解實現原理,請自行查看源碼。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章