Mybatis 전단 지 매개 변수 와 라벨 을 동시에 사용 하 는 문제 및 해결 방법
// Mapper.java
EmerEvent selectByAlarmId(Integer alarmId);
// Mapper.xml
<select id="selectByAlarmId" resultMap="BaseResultMap" parameterType="java.lang.Integer">
select
<include refid="Base_Column_List" />
from event
<where>
<if test="alarmId != null">
and alarm_id = #{alarmId,jdbcType=Integer}
</if>
</where>
</select>
하나의 인자 만 전 달 했 기 때 문 입 니 다:alarmId,설정 파일 에 대응 하 는 sql 에서 if 탭 을 사용 한 다음 오류 보고:nested exception is org.apache.ibatis.reflection.ReflectionException: There is no getter for property named 'alarmId' in 'class java.lang.Integer'
해결 방법:
1.mapper 설정 파일 의 sql 구문 에 있 는 if 판단 을 제거 합 니 다.
<select id="selectByAlarmId" resultMap="BaseResultMap" parameterType="java.lang.Integer">
select
<include refid="Base_Column_List" />
from event
where alarm_id = #{alarmId,jdbcType=Integer}
</select>
2.if 탭 을 사용 하려 면 인자 alarmId 를 대상 이나 맵 에 밀봉 하면 됩 니 다.총결산
위 에서 말 한 것 은 소 편 이 소개 한 Mybatis 전단 지 의 매개 변수 와
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
MySQL/마이바티스 | 동적 쿼리 사용A라는 서비스에 해당하는 테이블을 조인하고 조회하는 데 사용됩니다. 나중에 공통화를 위해 B 및 C 서비스도 추가됩니다. A, B, C 서비스는 모두 단일 쿼리에서 작동할 수 있도록 공통화되어야 합니다. 테이블에 각...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.