mybatis selecOne함수 관련하여 2개의 파라미터를 넘겨 사용하는 방버이 있을까요?
- 작성자 :
- n*********l
- 작성일 :
- 2020-12-15 15:40:41
- 조회수 :
- 3,641
- 구분 :
- 개발환경
- 진행상태 :
- 완료
Q
안녕하십니까
전자정부 프레임워크 관련하여 초보가 질문드립니다.
아래와 같은 MyBatis Mapper 클래스를 생성하였습니다.
첫번째 파라미터는 tableName : 테이블명
두번째 파라미터는 id : 글번호입니다.
혹시 아래와 비슷한 방법으로 VO를 만들지 않고 selectOne에서 2개의 파라미터를 넘기는 방법이 있을까요?
있다면 알려주시면 감사하겠습니다.
@Repository("boardMapper")
public class BoardMapper extends EgovAbstractMapper {
public BoardVO selectBoard(String tableName, int id) throws Exception{
return selectOne("boardMapper.selectBoard", tableName, id);
}
}
전자정부 프레임워크 관련하여 초보가 질문드립니다.
아래와 같은 MyBatis Mapper 클래스를 생성하였습니다.
첫번째 파라미터는 tableName : 테이블명
두번째 파라미터는 id : 글번호입니다.
혹시 아래와 비슷한 방법으로 VO를 만들지 않고 selectOne에서 2개의 파라미터를 넘기는 방법이 있을까요?
있다면 알려주시면 감사하겠습니다.
@Repository("boardMapper")
public class BoardMapper extends EgovAbstractMapper {
public BoardVO selectBoard(String tableName, int id) throws Exception{
return selectOne("boardMapper.selectBoard", tableName, id);
}
}
A
안녕하세요.
표준프레임워크 센터입니다.
MyBatis의 문서를 참조하시면 sqlSession에서 구현 메소드들을 보면 QueryId와 VO객체를 넘길 수 있게끔 되어 있습니다.
https://mybatis.org/mybatis-3/java-api.html
보통 코드리팩토링에서 나오는 이야기가 파라미터 개수를 줄이도록 권장하고 있듯
원시타입등의 정보들을 단순 나열하기 보다는 객체로 구조화 시켜서 넘길 것이 좀 더 나은 방법이라 생각됩니다.
명시적으로 표현할 필요성이 있을때 VO객체에 명시적으로 setter를 이용해 표현을 하셔도 되고
프로젝트에서 필요하시다면 확장/재정의를 통해 쓰셔도 되지만 거기에 대한 가이드는 따로 제공해 드리고 있지 않습니다.
감사합니다.
표준프레임워크 센터입니다.
MyBatis의 문서를 참조하시면 sqlSession에서 구현 메소드들을 보면 QueryId와 VO객체를 넘길 수 있게끔 되어 있습니다.
https://mybatis.org/mybatis-3/java-api.html
보통 코드리팩토링에서 나오는 이야기가 파라미터 개수를 줄이도록 권장하고 있듯
원시타입등의 정보들을 단순 나열하기 보다는 객체로 구조화 시켜서 넘길 것이 좀 더 나은 방법이라 생각됩니다.
명시적으로 표현할 필요성이 있을때 VO객체에 명시적으로 setter를 이용해 표현을 하셔도 되고
프로젝트에서 필요하시다면 확장/재정의를 통해 쓰셔도 되지만 거기에 대한 가이드는 따로 제공해 드리고 있지 않습니다.
감사합니다.