代码之家  ›  专栏  ›  技术社区  ›  Sean Nguyen

如何配置Spring从jar加载hibernate映射?

  •  1
  • Sean Nguyen  · 技术社区  · 14 年前

    我的hibernate映射在一个jar文件中,例如:abc-1.0.1.jar。映射文件是:abc-1.0.1.jar/user.hbm.xml。

    我无法让spring正确加载它(我也不想把jar版本放在映射中)。这是我的配置:

    <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
            <property name="dataSource"><ref local="DS"/></property>
            <property name="hibernateProperties">
               <ref bean="hibernateProperties" />
            </property>     
            <property name="mappingJarLocations" value="classpath*:abc-*.jar"></property>
        </bean>
    

    加载时没有错误,但设置资源是空数组。你能帮我弄明白那是错的吗?

    谢谢,

    2 回复  |  直到 12 年前
        1
  •  3
  •   Neeme Praks Tim Pote    14 年前

    好像你想用 mappingLocations ( JavaDoc )财产,而不是 mappingJarLocations . 在这种情况下,您只需指定 classpath:user.hbm.xml :

    <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
        <property name="dataSource"><ref local="DS"/></property>
        <property name="hibernateProperties">
           <ref bean="hibernateProperties" />
        </property>
        <property name="mappingLocations" value="classpath:/user.hbm.xml"/>
    </bean>
    
        2
  •  0
  •   sellerjd    13 年前

    可以使用通配符:

    <property name="mappingJarLocations" value="WEB-INF/lib/abc-*.jar"/>