[MyBatis] SelectOne과 SelectList

서현서현·2022년 7월 15일
0

Spring

목록 보기
10/31
post-thumbnail

MyBatis가 제공하는 SqlSession클래스에서는 CRUD를 위한 메소드들을 제공한다.
그중 select와 관련한 메소드는 다음과같다

궁금함이 생긴 예시는 다음과같다

	<select id="listPage" resultType="ReplyVO">
		select *
		from tbl_reply
		where bno=#{bno}
		order by rno desc
		limit #{cri.pageStart}, #{cri.perPageNum}
	</select>
	
	<select id="count" resultType="int">
		select count(bno) from tbl_reply where bno=#{bno}
	</select>
@Override
	public List<ReplyVO> listPage(Integer bno, Criteria cri) throws Exception {
		Map<String,Object> paramMap = new HashMap<>();
		
		paramMap.put("bno",bno);
		paramMap.put("cri",cri);
		
		return session.selectList(namespace+".listPage",paramMap);
	}

	@Override
	public int count(Integer bno) throws Exception {
		return session.selectOne(namespace+".count",bno);
	}

즉 listPage()의 경우 select문을 실행하면서 레코드를 List로 반환하면서 조건, 즉 paramMap을 같이 전달한다.
count()의 경우 select를 실행하면서 레코드를 지정한 타입으로 반환하고, bno를 같이 전달한다

0개의 댓글