我正在Hibernate应用程序中进行一些更新。其中使用了Struts和Spring。 我们在配置文件(.cfg文件)中输入.hbm文件。但是当使用带有hibernate应用程序的spring时,我们在应用程序context.xml中执行条目。 但我无法在整个申请中找到移民条目。 是否有其他类我们配置.hbm文件
我在这里定义任务:link text 我正在更新应用程序。在这许多hbm文件中都存在。我还创建了一个新的.hbm.xml文件。现在我想配置这个新的.hbm文件。但在整个应用程序中,我找不到配置所有.hbm文件的配置文件。
答案 0 :(得分:2)
声明Hibernate映射文件:
Configuration
例如:
Configuration cfg = new Configuration()
.addResource("Item.hbm.xml")
.addResource("Bid.hbm.xml");
例如:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory name="">
<!-- Database connection settings -->
<property name="connection.driver_class">${jdbc.driver}</property>
<property name="connection.url">${jdbc.url}</property>
<property name="connection.username">${jdbc.user}</property>
<property name="connection.password">${jdbc.password}</property>
...
<mapping resource="com/acme/Foo.hbm.xml"/>
<mapping resource="com/acme/Bar.hbm.xml"/>
...
</session-factory>
</hibernate-configuration>
例如:
<beans>
<bean id="myDataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="org.hsqldb.jdbcDriver"/>
<property name="url" value="jdbc:hsqldb:hsql://localhost:9001"/>
<property name="username" value="sa"/>
<property name="password" value=""/>
</bean>
<bean id="mySessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource" ref="myDataSource"/>
<property name="mappingResources">
<list>
<value>product.hbm.xml</value>
</list>
</property>
<property name="hibernateProperties">
<value>
hibernate.dialect=org.hibernate.dialect.HSQLDialect
</value>
</property>
</bean>
</beans>
由于您使用的是Spring,因此很可能使用上述方法。
由于你拥有消息来源,我担心如果不显示更多内容(这可能是不可能的话),你将无法得到任何更具体的帮助。如果需要,可以进行文本搜索,不能隐藏任何内容。
答案 1 :(得分:0)
@Autowired
private ResourceLoader rl;
public Resource[] loadResources() {
Resource[] resources = null;
try {
resources = ResourcePatternUtils.getResourcePatternResolver(rl)
.getResources("classpath:/hibernate/*.hbm.xml");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return resources;
}