편집자는 여러 매개 변수를 전달하는 Mybatis 문제를 해결하기 위해 세 가지 솔루션을 공유합니다. 특정 소개는 다음과 같습니다.
첫 번째 솔루션
DAO 층의 기능적 방법
공개 사용자 selectUser (문자열 이름, 문자열 영역);
해당 Mapper.xml
<select id = "selectUser"resultmap = "baseresultmap"> user_user_t에서 * select * user_name = #{0} 및 user_area = #{1} </select>그중 #{0}은 DAO 계층의 첫 번째 매개 변수를 나타내고 #{1}은 DAO 계층의 두 번째 매개 변수를 나타내며 더 많은 매개 변수를 일관되게 추가 할 수 있습니다.
두 번째 솔루션
이 방법은 MAP를 사용하여 여러 매개 변수를 전달합니다.
DAO 층의 기능 방법
공개 사용자 selectUser (MAP Parammap);
해당 Mapper.xml
<select id = "selectUser"resultmap = "baseresultmap"> user_user_t에서 * select * user_name = #{username, jdbctype = varchar} 및 user_area = #{userArea, jdbctype = varchar} </select>서비스 계층 호출
개인 사용자 xxxselectuser () {map parammap = new hashmap (); parammap.put ( "username", "특정 매개 변수 값에 해당"); Parammap.put ( "userArea", "특정 매개 변수 값에 해당"); user user = xxx. selectuser (Parammap);}나는 개인적 으로이 방법이 직관적이지 않다고 생각하며 인터페이스 방법을 볼 때 매개 변수가 무엇인지 직접 알 수 없습니다.
세 번째 솔루션
DAO 층의 기능 방법
공개 사용자 selectUser (@param ( "username") StringName,@param ( "userArea") 문자열 영역);
해당 Mapper.xml
<select id = "selectUser"resultmap = "baseresultmap"> user_user_t에서 * select * user_name = #{username, jdbctype = varchar} 및 user_area = #{userArea, jdbctype = varchar} </select>개인적 으로이 방법이 더 좋다고 생각하며 개발자가 DAO 레이어 방법을 볼 때 어떤 매개 변수를 전달 해야하는지 알 수 있습니다. 더 직관적입니다. 개인적 으로이 솔루션을 추천합니다.
위는 편집자가 도입 한 여러 매개 변수를 전달하는 Mybatis에 대한 솔루션입니다. 나는 그것이 모두에게 도움이되기를 바랍니다!