Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.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 HQL-使用布尔参数选择新构造函数_Java_Hibernate_Hql - Fatal编程技术网

Java HQL-使用布尔参数选择新构造函数

Java HQL-使用布尔参数选择新构造函数,java,hibernate,hql,Java,Hibernate,Hql,我试图用一个布尔参数调用TestResultTo构造函数,但一直得到一个错误 TestResultTo: public class TestResultDTO extends AbstractDTO { private Boolean test; private Boolean locked; public TestResultDTO() { super(); } public TestResultDTO(Boolean locked,

我试图用一个布尔参数调用TestResultTo构造函数,但一直得到一个错误

TestResultTo:

public class TestResultDTO extends AbstractDTO {

    private Boolean test;
    private Boolean locked;


    public TestResultDTO() {

    super();
    }


    public TestResultDTO(Boolean locked, Boolean test) {

    super();
    this.test = test;
    this.locked = locked;
    }
查询:

SELECT NEW com.xxx.model.dto.widgets.results.TestResultDTO(p.isLocked, IF((p.playerStatus = 'STANDARD'), false, true)) From player p Where p.id = 1
错误:

java.lang.NullPointerException
    at org.hibernate.internal.util.ReflectHelper.getConstructor(ReflectHelper.java:355) 

是否有方法传递硬编码的布尔参数(“true”)?

查询可能如下所示:-

SELECT NEW com.xxx.model.dto.widgets.results.TestResultDTO(p.isLocked, CASE WHEN p.playerStatus = 'STANDARD' then false  else true end) From player p Where p.id = 1 .

作为参考:

我认为你需要使用0或1来表示相同的值。尝试一次。尝试了一次,仍然得到相同的错误为什么你使用new,那么你可以给出一个字段来代替它。这只是一个更大的构造函数的例子。我有几个更复杂的“如果”条件