`
zhouchaofei2010
  • 浏览: 1114746 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Hibernate初始化时在OneToOneSecondPass类中出现NullPointerException

 
阅读更多

启动项目  Hibernate随即报错
Caused by: java.lang.NullPointerException
    at org.hibernate.cfg.OneToOneSecondPass.doSecondPass(OneToOneSecondPass.java:135)

 

 

原因:

 

主类方,无外键方

@OneToOne( mappedBy="carveEReviewproject" ,targetEntity=CarveEReviewcomment.class )
 public CarveEReviewcomment getCarveEReviewcomment() {
  return this.carveEReviewcomment;
 }

 

中mappedBy写错了,写成了mappedBy="carveEReviewcomment“,  这里的mappedBy需要从类(有外键一方)carveEReviewcomment对象中对该主类对象的引用

 

-------------------

其他可能原因:

 

OneToOne并使用外键生成器的时候需要持久化对象声明的顺序.被依赖的需要先声明

这个异常是出现在我一个类依赖另一个类来生成主键的时候产生
这时候应该注意的是mapping class的声明顺序,
例如下面,如果Role类依赖User的某个属性(例如我的情况是Role使用foreign key generator根据User的主键生成Role的主键)
这时候就需要先声明User然后声明Role,否则会出现上面的异常.
<hibernate-configuration>
<session-factory>
<mapping class="model.User" />
<mapping class="model.Role" />
</session-factory>
</hibernate-configuration>

 

 

 

分享到:
评论

相关推荐

    java数组初始化详解

    需要注意的是,在 Java 中,数组变量必须在使用前进行初始化,否则将会抛出 NullPointerException。 二维数组的初始化 在 Java 中,二维数组可以通过多种方式进行初始化。 1. 声明数组变量:`int[][] a;`,这只...

    java.lang.NullPointerException的可能原因及处理.docx

    Java.lang.NullPointerException 是 Java 语言中最常见的异常之一,它的出现通常是由于编程不当或对象未被正确初始化所致。在本文中,我们将探讨 Java.lang.NullPointerException 的可能原因及处理方法。 原因一:...

    NullPointerException如何解决.md

    例如,在一个Person类中,可以通过初始化name变量来避免在getGreeting方法中出现NullPointerException。 其次,如果无法或不想初始化变量,可以在尝试访问对象之前进行空值检查。这通常涉及到一个简单的if语句来...

    全面解析Java中的NullPointerException及其预防策略

    Java编程中空指针异常(NullPointerException, NPE)是在使用未初始化或已被赋值为null的对象时发生的一种运行时异常。这种异常会导致程序运行失败,进而影响到程序的稳定性和可靠性。要有效预防和处理...

    深入解析Java中的变量未初始化问题及解决方案

    在Java编程中,变量未初始化是一个常见的问题,它可能导致程序抛出`NullPointerException`,或是产生不可预测的结果。Java中的变量分为局部变量和成员变量(包括静态变量和实例变量)。对于成员变量,Java提供了默认...

    Java类初始化顺序

    实例初始化块在创建对象时执行,而静态初始化块在类被加载到JVM时执行,通常是类第一次被访问时。静态初始化块仅执行一次,而每个新实例都会执行实例初始化块。 3. **初始化成员变量**: 成员变量的初始化分为两种...

    java 空指针异常(NullPointerException)

    - **初始化变量**:确保在使用前,所有对象引用都有对应的实例。 - **非空检查**:在访问对象的属性或方法之前,先判断对象是否为null。 - **使用Optional**:Java 8引入的`Optional&lt;T&gt;`可以帮助避免空指针异常,它...

    hibernate 排错 宝典1

    在开发过程中,可能会遇到`java.lang.NullPointerException`异常,这通常发生在尝试访问尚未初始化的对象时。具体到Hibernate场景下,可能是DAO实例、SessionFactory实例或其他依赖注入的对象未正确初始化。 **原因...

    java错误大全(包括基本异常和开源框架出现的异常)

    这可能是因为未初始化变量,或者在数据库连接配置中出现问题,如Hibernate的`hibernate.cfg.xml`文件。 3. **类路径问题:**当类找不到时,可能是由于类路径(ClassPath)设置不正确,导致无法加载所需的类或库,...

    java.lang.NullPointerException(解决方案).md

    java.lang.NullPointerException是Java编程语言中常见的运行时异常之一,它通常会在尝试访问或修改一个空(null)对象引用的成员时抛出。这种异常非常直观,即尝试对一个未被赋值的对象进行操作。为了避免这种异常的...

    NullPointerException解决办法.md

    9.推荐的编程实践:为了避免NullPointerException,编程时应当尽量减少未初始化的变量使用。对于从数据库或外部资源获取的对象,应当先进行非空验证再进行操作。此外,良好的编程习惯还包括对输入参数进行校验,以及...

    java.lang.NullPointerException

    Java.lang.NullPointerException 是 Java 语言中一种常见的异常,它发生在 Java 应用程序尝试使用 null 对象引用时。这种异常通常是由于程序员错误地认为对象已经被初始化或赋值,而实际上对象仍然是 null。 在本文...

    Java_Jdbc_Hibernate_Struts2_Android_Web异常及其处理办法

    要解决这个问题,开发者应该检查变量是否已初始化,并在使用前确保它们非空。可以使用`if (object != null)`来避免空指针异常。 2. `ArrayIndexOutOfBoundsException`: 当尝试访问数组的不存在索引时抛出。解决方法...

    java中常见的NullPointerException异常.pdf

    Java中常见的NullPointerException异常 Java中常见的NullPointerException异常是Java编程中最常见的一种异常。这种异常发生在程序试图访问或操作一个为null的对象时。下面是可能发生NullPointerException的几种情况...

    【IT十八掌徐培成】Java基础第03天-03.数组的定义-初始化-越界异常-Null异常.zip

    在Java中,有两种主要的初始化方式:静态初始化和动态初始化。静态初始化是在声明时就指定每个元素的初始值,如下所示: ```java int[] myArray = {1, 2, 3, 4, 5}; // 静态初始化 ``` 动态初始化则只指定数组长度...

    深入介绍Java对象初始化

    在这个例子中,`Default`类的静态初始化块会在类首次被加载时执行,而实例初始化块则在每次创建`Default`对象时执行。 最后,Java的继承机制也会影响对象初始化。子类会先执行父类的构造器,然后再执行自己的构造器...

    NullPointerException(解决方案).md

    使用Optional类,可以将可能为null的对象封装起来,并通过方法链的形式进行操作,这样可以避免在代码中出现大量的null检查语句,使代码更加简洁易读。当使用Optional对象时,可以利用ifPresent()方法来安全地执行...

    java.lang.NullPointerException解决方案(亲测可用).md

    在Java编程中,遇到运行时错误`...通过定位错误源、确保对象初始化以及使用`Optional`类等策略,可以有效地预防和解决Java中常见的`NullPointerException`。在开发过程中,遵循这些实践可以提高代码的健壮性和可靠性。

Global site tag (gtag.js) - Google Analytics