`
zhouchaofei2010
  • 浏览: 1106803 次
  • 性别: 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 的可能原因及处理方法。 原因一:...

    Java类初始化顺序

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

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

    通过确保对象在使用前被正确初始化、在操作对象前进行null检查、使用Optional类以及进行代码审查和静态代码分析等方法,我们可以有效地避免和解决这类错误。正确的处理NullPointerException不仅保证了程序的正确性,...

    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

    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的继承机制也会影响对象初始化。子类会先执行父类的构造器,然后再执行自己的构造器...

    Java中避免NullPointerException的方法总结

    这种方式可以避免 NullPointerException,因为成员变量已经初始化了默认值。 8. 实现一个表示 null 的类 在 Java 中,可以实现一个表示 null 的类来避免 NullPointerException。例如: ```java public class ...

    【北大青鸟内部教程】jsp中关于Hibernate延时加载的问题

    这种策略可以避免在初始化对象时加载大量不必要的数据,从而降低内存消耗和提高程序响应速度。在Hibernate中,一对多、多对一和多对多关系通常可以配置为延时加载。 在JSP中使用Hibernate,开发者可能会遇到以下几...

    java中常见的NullPointerException异常[归类].pdf

    在 Java 编程中,NullPointerException 是一种常见的异常,发生在程序尝试访问或操作空对象时。该异常的出现是由于程序员没有正确地处理对象的空值引用的结果。下面我们将讨论 Java 中常见的 NullPointerException ...

    java 出现NullPointerException的原因及解决办法

    java 出现NullPointerException的原因及解决办法 日常开发过程中,最常见的异常莫过于NullPointerException,之前的时候,只是知道去找到报错的位置,然后去解决它,最近有空学习C语言,就去深究了下...

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

    变量未初始化是Java编程中的一个常见问题,它可能导致程序错误和不稳定。通过显式初始化、使用构造器或初始化块、利用assert关键字、Optional类、代码审查、静态分析工具和单元测试等方法,我们可以有效地避免和解决...

    详解Java中NullPointerException异常的原因详解以及解决方法

    在Java编程语言中,`NullPointerException` 是一个常见的运行时异常,它发生在试图访问或操作一个值为null的对象引用时。这个异常表示程序试图通过一个null引用调用方法或访问字段,而实际上该引用并没有指向任何...

    java代码-JAVA中String数组初始化,一维数组和二维数组初始化

    3. **空指针异常**:如果试图访问未初始化的数组,或者数组元素为null时直接调用方法,会抛出`NullPointerException`。 通过理解并熟练掌握数组的初始化和操作,开发者可以更有效地在Java程序中处理和存储数据。在...

Global site tag (gtag.js) - Google Analytics