问答详情
源自:1-3 实体和映射的创建

运行成功了但是没有建表...

运行成功了但是没有建表...

提问者:Benotafraid 2016-09-03 20:47

个回答

  • 慕粉0031574727
    2016-12-25 01:53:33

    和我一样的问题~挣了半天,最后解决了

    我的情况是控制台没有错误输出,但是也没有建表信息~~这个问题是由于spring4整合hibernate3的原因,换成最新版的hibernate5后没有问题,控制台正常输出建表语句,但是新的问题又来了

    输出建表语句后mysql中没有表生成,原来是将主键eid和did设置成了String类型,换成integer后解决问题!!

  • godfather1103
    2016-10-03 23:27:15

    这个问题好像是spring和hibernate整合的问题;我这样配置就可以建表,如果使用被注释掉的配置就不能自动建表

    <!--配置hibernate的相关属性-->
    <bean id="sessionFactory"
          class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
        <!--注入连接池-->
        <property name="dataSource" ref="dataSource"/>
        <!--配置hibernate的属性-->
        <property name="configLocation" value="classpath:hibernate.cfg.xml"/>
        <!--<property name="hibernateProperties">-->
        <!--<props>-->
        <!--<prop key="hibernate.hbm2ddl.auto">update</prop>-->
        <!--<prop key="hibernate.dialect">org.hibernate.dialect.MySQLInnoDBDialect</prop>-->
        <!--<prop key="hibernate.show_sql">true</prop>-->
        <!--<prop key="hibernate.format_sql">true</prop>-->
        <!--</props>-->
        <!--</property>-->
        <!--加载hibernate中的映射文件-->
        <property name="mappingDirectoryLocations">
            <list>
                <value>classpath:/io/github/godfather1103/entity</value>
            </list>
        </property>
    </bean>


  • Boler_MGL
    2016-09-26 00:34:26

    是你的web.xml 没有配置,确定有

    <listener>

      <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

      </listener>

      <context-param>

      <param-name>contextConfigLocation</param-name>

      <param-value>classpath:applicationContext.xml</param-value>

      </context-param>

    这样应该就没有问题了

  • 香飘飘丶
    2016-09-03 22:55:44

    你的配置写错了检查一下一对多和多对一的关系映射的name和class是否正确,比如Department.hbm.xml的Set重的name就要对应Department类中Set的id。

    还有MappingResource中的路径是否正确,Value应该是'/'而不是'.',因为会跟.hbm.xml的文件后缀起冲突