之前用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文件,搞了很长时间,郁闷一直不能成功建表,文件的包啊,运行环境啊,重新配置了一遍,最终竟是这个问题,
时间: 2024-09-30 23:51:52