Java 休眠限制:两个DB.table.propertyName之间的对象
这是Hibernate之间约束的正常使用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 这就是我想使
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")