Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/332.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/5/sql/86.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 休眠限制:两个DB.table.propertyName之间的对象_Java_Sql_Hibernate_Restriction - Fatal编程技术网

Java 休眠限制:两个DB.table.propertyName之间的对象

Java 休眠限制:两个DB.table.propertyName之间的对象,java,sql,hibernate,restriction,Java,Sql,Hibernate,Restriction,这是Hibernate之间约束的正常使用 Criterion critDate = Restrictions.between("fromDatePropName", model.getFromDate(), model.getToDate()) ; 但是我想在hibernate中使用两个或多个propertyName来约束Object 例如:我希望日期'2011-10-01'介于tableName.fromDatePropName和tableName.toDatePropName 这就是我想使

这是Hibernate之间约束的正常使用

Criterion critDate = Restrictions.between("fromDatePropName", model.getFromDate(), model.getToDate()) ;
但是我想在hibernate中使用两个或多个
propertyName
来约束
Object

例如:我希望日期
'2011-10-01'
介于
tableName.fromDatePropName
tableName.toDatePropName

这就是我想使用一种方法的方式:

例:

可视示例:

以下是使用以下命令生成的SQL:

Criterion critDate = Restrictions.between("fromDatePropName", model.getFromDate(), model.getToDate()) ;
Criterion critDate = Restrictions.between(  "toDatePropName", model.getFromDate(), model.getToDate()) ;

...
AND tableName.fromDatePropName  between DATE '2011-10-01' and DATE '2011-10-31' 
AND tableName.toDatePropName    between DATE '2011-10-01' and DATE '2011-10-31' 
...
但这是我想要生成的SQL:

Criterion critDate = Restrictions.between(model.getDate(), "fromDatePropName", "toDatePropName") ;

...
AND DATE'2011-10-01'  between tableName.fromDatePropName and tableName.toDatePropName
...
谢谢你的回答。

这不应该是:

限制。介于(“日期”、model.getFromDate()、model.getToDate())之间。

在javadoc中,属性名是第一个参数,并且与标准根所在的实体相关

如果确实要指定限制,例如要求根实体的属性位于同一实体的两个其他属性之间,则可以使用and方法,而不是
Restrictions.between()

这不应该是:

限制。介于(“日期”、model.getFromDate()、model.getToDate())之间。

在javadoc中,属性名是第一个参数,并且与标准根所在的实体相关

如果确实要指定限制,例如要求根实体的属性位于同一实体的两个其他属性之间,则可以使用and方法,而不是
Restrictions.between()


这些财产来自哪里?它们是您要比较的实体的属性吗?这些属性来自哪里?它们是您要比较的实体的属性吗?
Criterion critDate = Restrictions.between(model.getDate(), "fromDatePropName", "toDatePropName") ;

...
AND DATE'2011-10-01'  between tableName.fromDatePropName and tableName.toDatePropName
...
Restrictions.geProperty("date", "fromDate")
Restrictions.leProperty("date", "toDate")