其他功能目前还正常 涉及到ClassRoom就开始了出现这种问题 一般在哪里找错误呢?  application.xml 和 xxx.hbm.xml ?
我这2处都找了  没发现什么问题啊。在 application.xml 中已经有这个映射了啊
....
....
.... <bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="dataSource" />
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.MySQLDialect
</prop>
</props>
</property>
<property name="mappingResources">
<list>
<value>emp/dao/Menu.hbm.xml</value>
<value>emp/dao/Major.hbm.xml</value>
<value>emp/dao/Essay.hbm.xml</value>
<value>emp/dao/Prize.hbm.xml</value>
<value>emp/dao/User.hbm.xml</value>
<value>emp/dao/Url.hbm.xml</value>
<value>emp/dao/Tea.hbm.xml</value>
<value>emp/dao/Course.hbm.xml</value>
<value>emp/dao/ClassRoom.hbm.xml</value>  <!-- OK! -->
<value>emp/dao/Dept.hbm.xml</value>
<value>emp/dao/Research.hbm.xml</value>
<value>emp/dao/Role.hbm.xml</value>
<value>emp/dao/FurStudy.hbm.xml</value>
<value>emp/dao/Stu.hbm.xml</value>
</list>
</property>
</bean>.....
....
..然后是 ClassRoomhbm.xml<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!-- 
    Mapping file autogenerated by MyEclipse Persistence Tools
-->
<hibernate-mapping>
    <class name="emp.dao.ClassRoom" table="tb_classroom" catalog="db_role">  <!-- 这里包名设置也是正确的  --> 
        <id name="classId" type="java.lang.Integer">
            <column name="classID" />
            <generator class="native"></generator>
        </id>
        <many-to-one name="major" class="emp.dao.Major" fetch="select"  lazy="false">
            <column name="majorID" />
        </many-to-one>
        <property name="className" type="java.lang.String">
            <column name="className" length="32" />
        </property>
        <set name="courses" inverse="true" lazy="false">
            <key>
                <column name="classID" />
            </key>
            <one-to-many class="emp.dao.Course" />
        </set>        
        <set name="stus" inverse="true" lazy="false">
            <key>
                <column name="classID" />
            </key>
            <one-to-many class="emp.dao.Stu" />
        </set>
    </class>
</hibernate-mapping>

解决方案 »

  1.   

    怎么贴啊?好像不能发图片呢简单说说吧application。xml 就在src下ClassRoom类在 src下的 emp.dao中
      

  2.   

    然后 ClassRoom.hbm.xml 也在 emp.dao中
      

  3.   

    在Eclipse里面有个opentype按钮,打开它,输入emp.dao.ClassRoom。确定这个类是不是书写正确。
      

  4.   

    我自己发现了。。
    在ClassRoomDAO的findById中 类前面都没有emp.dao.真是怪异啊, 机器自动翻转的, 怎么会丢了呢?