Java 同一列的多个条件
我有一列具有相同的值,但其他列不同。我想写搜索这个条件。我该怎么做?我得到了重复的条件异常Java 同一列的多个条件,java,hibernate,Java,Hibernate,我有一列具有相同的值,但其他列不同。我想写搜索这个条件。我该怎么做?我得到了重复的条件异常 if(!StringUtils.isEmpty(src)){ criteria.createCriteria("params").add(Restrictions.eq("tagName", OptionalParams.TagName.SOURCE)).add(Restrictions.ilike("name", "Version")).add
if(!StringUtils.isEmpty(src)){
criteria.createCriteria("params").add(Restrictions.eq("tagName",
OptionalParams.TagName.SOURCE)).add(Restrictions.ilike("name", "Version")).add(Restrictions.ilike("value", src,MatchMode.START));
}
if(!StringUtils.isEmpty(tgt)){
criteria.createCriteria("params").add(Restrictions.eq("tagName", OptionalParams.TagName.TARGET))
.add(Restrictions.ilike("name", "Version")).add(Restrictions.ilike("value", tgt,MatchMode.START));
}
57273 Version 0 1.2.0 9dbb
57275 Version 1 1.2.3 9dbb
非常感谢您的帮助。这可能会对您有所帮助
Criteria criteria = session.createCriteria("params");
if(!StringUtils.isEmpty(src)){
criteria.add(Restrictions.eq("tagName",
OptionalParams.TagName.SOURCE)).add(Restrictions.ilike("name", "Version")).add(Restrictions.ilike("value", src,MatchMode.START));
}
if(!StringUtils.isEmpty(tgt)){
criteria.add(Restrictions.eq("tagName", OptionalParams.TagName.TARGET))
.add(Restrictions.ilike("name", "Version")).add(Restrictions.ilike("value", tgt,MatchMode.START));
}
您得到异常是因为,您在同一对象上的同一事务中编写了两次条件。另外,createCriteria(*.class)
应将参数作为类
有关更多详细信息,请查看文章“您尝试了什么”!例如,你的问题中的查询更新,这里无法读取我已经更新了问题。。。请看一看