【问题标题】:Unable to use inheritence in Hibernate无法在 Hibernate 中使用继承
【发布时间】:2011-01-04 16:56:23
【问题描述】:

请看下面

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping>
  <class name="com.att_marks.students.Attendance_Btech">
  <id name="id" type="integer" column="id" >
   <generator class="increment"/>
  </id>

  <property name="year">
     <column name="Year" />
  </property>
  <property name="semister">
    <column name="Semister"/>
  </property>
  <property name="section">
    <column name="Section"/>
  </property>
  <property name="period">
    <column name="Period"/>
  </property>
  <property name="subjectCode">
    <column name="Subject_Code"/>
  </property>
  <property name="date">
    <column name="Date"/>
  </property>
  <property name="status">
    <column name="Status"/>
  </property>
  <union-subclass name="com.att_marks.students.Attendance_Btech_ECE" table="attendance_btech_ece">

  </union-subclass>
 </class>
</hibernate-mapping>

我有表名为 admission_btech_ece、 admission_btech_cse、 admission_btech_it 等等。所有这些表都使用与上述的 Attendance_Btech 类相同的架构。我认为这应该可行,但事实并非如此。

【问题讨论】:

  • 您是否收到错误消息或堆栈跟踪?
  • 在这样的语句中出现空指针异常: session.createQuery(query);但问题是直到执行这一点我还没有尝试使用这个类对象,但它仍然抛出异常,如果我从配置文件中删除这个文件,那么一切正常......
  • 你能发布堆栈跟踪吗?它可能与映射没有任何关系(通常在启动时就知道了)。
  • 异常是在这个特定类根本没有使用的地方引发的,当这个 hbm 文件从配置文件中删除时,它工作正常......它只是说 java.lang. lang.NullPointerException

标签: java database hibernate


【解决方案1】:

如果Attendance_Btech_ECEAttendance_Btech 的子类,那么应该可以工作。

【讨论】:

  • 您可以选择添加 extends="Attendance_Btech"
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-08-20
  • 1970-01-01
  • 2012-12-02
  • 2011-04-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多