首页 > 代码库 > Hibernate中持久化注解的java文件在applicationContext.xml中的配置

Hibernate中持久化注解的java文件在applicationContext.xml中的配置

之前用Hibernate操作数据库,都是写下.hbm.xml配置文件的.这段时间发现注解要比.hbm.xml方便很多时,决定用注解.


之前用.hbm.xml时,在applicationContext.xml里配置是:

<bean id="sessionFactory"
      class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
        <property name="dataSource" ref="dataSource"/>
        <property name="mappingResources">
            <list>
                <!-- 以下列出所有的 PO 映射文件 -->
                <value>com/linuxgroup/model/Message.hbm.xml</value>
                <value>com/linuxgroup/model/Class.hbm.xml</value>
            </list>
        </property>
        <property name="hibernateProperties">
            <!-- 设置 Hibernate 属性 -->
            <value>
                hibernate.dialect=org.hibernate.dialect.MySQLDialect
                hibernate.hbm2ddl.auto=update
            </value>
        </property>
    </bean>

在java中用注解,用的配置文件是:

<bean id="sessionFactory"
          class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
        <property name="dataSource" ref="dataSource"/>

        <!-- 包扫描的方式加载注解类 -->
        <property name="packagesToScan">
            <list>
                <value>com.huihui.model</value>
            </list>
        </property>

        <property name="hibernateProperties">
            <!-- 设置 Hibernate 属性 -->
            <value>
                hibernate.dialect=org.hibernate.dialect.MySQLDialect
                hibernate.hbm2ddl.auto=update
            </value>
        </property>
    </bean>



注意,
<value>com.huihui.model</value>

里的是指加载com.huihui.model下的带注解的java文件,如果时com.huihui.model.*是指model下的子文件夹下的带注解的java文件.


开始时,我理解成在model.*是指model下的所有带注解的java文件,搞了很长时间,郁闷一直不能成功建表,文件的包啊,运行环境啊,重新配置了一遍,最终竟是这个问题,


Hibernate中持久化注解的java文件在applicationContext.xml中的配置