zoukankan      html  css  js  c++  java
  • HTTP Status 500

    找不到实体类,是因为数据库对话工厂 sessionFactory出问题了,可能出现问题的地方

    (1)、sessionFactory的配置

    在整合SSH工程中,我们不再使用hibernate.cfl.xml文件进行配置,而是交给了spring的管理,那么在它的核心配置文件中applicationContext.xml中配置sessionFactory如下:

    <!-- 配置LocalSessionFactoryBean,将官方的session的工厂配置到spring -->
        <bean id="sessionFactory"
            class="org.springframework.orm.hibernate5.LocalSessionFactoryBean">
            <property name="dataSource" ref="dataSource" />
            <!-- 注入hibernate相关的属性配置 -->
            <property name="hibernateProperties">
                <props>
                    <prop key="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</prop>
                    <prop key="hibernate.hbm2ddl.auto">update</prop>
                    <prop key="hibernate.show_sql">true</prop>
                    <prop key="hibernate.format_sql">true</prop>
                </props>
            </property>
            <!-- 注入hibernate的映射文件 -->
            <property name="mappingLocations">
                <list>
                    <!--加载domian内的实体类映射文件,主要这里路径是文件路径不是类路径,需要带有/ 。这里我犯错错误!导致加载不上-->
                    <value>classpath:com/oa/domain/*.hbm.xml</value>                
                </list>
            </property>        
        </bean>

    (2)、映射文件问题的XXX.hbl.xml 

     我的实体类和映射都是使用hibernate工具自动生成的,一般自动生成的实体类没有问题,出问题的最多的就是映射文件,因为自动生成的会添加许多现在可能不需要的属性

    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <!-- Generated 2018-9-10 17:20:14 by Hibernate Tools 5.3.1.Final -->
    <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
    <hibernate-mapping >
        <class name="com.oa.domain.User" table="user">//这里自动生成会出现很多问题
            <id name="oaid" type="int">
                <column name="oaid" />
                <generator class="assigned" />
            </id>
            <property generated="never" lazy="false" name="username"
                optimistic-lock="true" type="string" unique="false">
                <column length="40" name="username" />
            </property>
            <property generated="never" lazy="false" name="password"
                optimistic-lock="true" type="string" unique="false">
                <column length="40" name="password" />
            </property>
            <property generated="never" lazy="false" name="code"
                optimistic-lock="true" type="string" unique="false">
                <column length="20" name="code" />
            </property>
        </class>
    </hibernate-mapping>

     (3)、实体类出问题

        实体类配置一般不会出问题,注意对照。

    以上三个步骤中出任何一个问题,都会造成org.hibernate.MappingException: Unknown entity实体类异常

    成功!!!努力!!国图学习纪录!!

  • 相关阅读:
    第一章复习(已完结)
    复习——第二章(施工完成,哪里总结的不全或是有问题欢迎指出)
    实验九
    实验五
    实验四
    实验三
    实验二
    实验一
    汇编语言第二章
    【C# 大写金额转阿拉伯数字】大写金额转数值
  • 原文地址:https://www.cnblogs.com/niusdtz/p/9626720.html
Copyright © 2011-2022 走看看