를 더 이상 사용되지 않습니다 .and() 나는 같은 종류를 "종류 조건에서 방법 (부울)는 지원되지 않습니다"있어요 경고. jooq를 사용하는 IAM 3.8.3. 아무도 이것에 대해 나에게 브리핑 할 수 있습니까?JOOQ은 :와 JOOQ, dsl.select()를 사용하는 동안 유형 조건에서 방법 (부울)는
0
A
답변
1
나는 동일한의 사용이 나를 위해 일한다
.where(AePlan.AE_PLAN.PLAN_ID**.equals**(planId)
.and(AePlan.AE_PLAN.PHARMACYNETWORK_ID.**equals**(pharmacyNW_Id))
처럼 내가 대신 동일한의 equals 메소드를 사용했는데, 그것을 가지고!
1
그 방법 (및 많은 다른 유사한 방법)은 #4763이라는 이슈와 함께 jOOQ 3.8에서 더 이상 사용되지 않으며 경험 한 바대로 documented yourself in your own answer입니다.
많은 사람들이 실수로 그들은 정말 boolean
상수를 생산했다 때 유효한 jOOQ Condition
를 생산하고 있다는 믿음의 Object.equals()
방법보다는 (예를 들어 있기 때문에 실수로 IDE의 자동 완성의)를 Field.equal()
방법을 사용했다. 어떤 Condition.and(Boolean)
"편리한 메소드 '가 아니었다면
, 당신은 단순히 컴파일 오류를 입수하고 실수를 해결 한 것이다. 그러나 Condition.and(Boolean)
방법, 당신의 코드를 컴파일하고 잘 실행되지만 쿼리는 의도 일을하지 않습니다.
보조 노트에서 Field.eq()
과 같은 두 자리 약어를 사용하면이 문제를 피할 수 있습니다.
+0
안녕하세요 덕분에 루카스 ... 정말 당신의 응답을 주셔서 감사합니다! 그리고 네, 단지 IDE의 자동 수정 때문입니다. – Shantanu
은 아마 당신에 대한 답을 찾을 수 있습니다 [이] (https://www.jooq.org/notes) 페이지 –