Ped*_*cía 5 spring tomcat hibernate jpa maven
我在maven上使用Spring MVC + JPA/Hibernate配置.当我部署到Tomcat时,我希望Hibernate执行一个import.sql文件,但是无论我把它放在哪里或者我如何配置文件的路径都没关系,它从来没有找到它.
org.hibernate.tool.hbm2ddl.SchemaExport SchemaExport - HHH000227: Running hbm2ddl schema export
org.hibernate.tool.hbm2ddl.SchemaExport SchemaExport - Import file not found: /META-INF/import.sql
Run Code Online (Sandbox Code Playgroud)
在Spring中,我对Hibernate的配置是:
<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
...
<property name="jpaProperties">
<props>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.hbm2ddl.auto">create-drop</prop>
<prop key="hibernate.hbm2ddl.import_files">/META-INF/import.sql</prop>
</props>
</property>
</bean>
Run Code Online (Sandbox Code Playgroud)
我正在使用标准的Maven Web文件夹结构,将我import.sql放在/src/main/webapp/WEB-INF/文件夹中.我也尝试删除import_files属性并将其放在webapp文件夹中无济于事.
我怀疑它可能与映射web.jar网址的tomcat策略有关server_root/web/*.
M. *_*num 13
在import.sql从类路径的根目录读取.在maven项目src/main/webapp中,不是类路径,而是Web内容.类路径由java类src/main/java和其他非java东西组成src/main/resources.
把你import.sql放入src/main/resources遗嘱让hibernate加载它.在构造jar时,将复制此目录的内容,WEB-INF/classesWeb应用程序中的内容是类路径的一部分.
| 归档时间: |
|
| 查看次数: |
7097 次 |
| 最近记录: |