Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
当从数据库java hibernate检索对象时,构造函数中的东西是否也被调用_Java_Spring_Hibernate - Fatal编程技术网

当从数据库java hibernate检索对象时,构造函数中的东西是否也被调用

当从数据库java hibernate检索对象时,构造函数中的东西是否也被调用,java,spring,hibernate,Java,Spring,Hibernate,我想知道,如果我的构造函数中有: public class Foo { private final String param1; private final String param2; foo() { this.param1 = "param1"; } } 现在我想知道,如果我从数据库中检索对象,那么是否会调用同一个构造函数,或者它只在第一次发生,只有是的,Hibernate会为它创建和填充的每个实体实例调用no-arg构造函数。但是,您上面的代码不是J

我想知道,如果我的构造函数中有:

public class Foo {
    private final String param1;
    private final String param2;

    foo() { this.param1 = "param1";  }     
}

现在我想知道,如果我从数据库中检索对象,那么是否会调用同一个构造函数,或者它只在第一次发生,只有

是的,Hibernate会为它创建和填充的每个实体实例调用no-arg构造函数。但是,您上面的代码不是Java代码。

很抱歉,我刚刚处理了错误的代码,但是如果我在no arg构造函数中设置了一些属性。那就要执行了。比如a的旧值=3。然后,新值将变为2Hibernate将调用构造函数,因此显然,构造函数中的所有代码都将被执行。调用构造函数后,它将使用来自数据库的值填充创建的实例。所以,如果a是一个持久字段,并且它在数据库中的值是2341,那么在构造函数(2)中分配的值将被2341覆盖。你为什么不自己测试一下呢?谢谢,伙计,事实上我心里有这个疑问,但现在它被清除了。我现在要考试