728x90
반응형
각기 다른 vo에서 부분부분 불러오고싶다면? -> 조인을 사용한다.
1. 좀더 큰 vo에서 작은 vo객체를 맴버변수로 만들어 포함시킨다. (이때 import해줘야함)
(AnswerVO)
import com.samyo.domain.QuestionVO;
public class AnswerVO {
private int answer_num;
private String answer_year;
private String answer_date;
private String answer;
private String public_answer;
private int question_num;
private int member_num;
private String answer_delete;
private String delete_date;
private QuestionVO questionVO;
//getter,setter생략
}
2. mapper.xml에서 resultMap을 사용해 보자.
(AnswerMapper.xml)
<resultMap type="com.samyo.domain.AnswerVO" id="answerMap">
<result property="answer_num" column="answer_num"/>
<result property="answer_year" column="answer_year"/>
<result property="answer_date" column="answer_date"/>
<result property="answer" column="answer"/>
.
.
<collection property="questionVO" resultMap="questionVO"/>
</resultMap>
<resultMap type="com.samyo.domain.QuestionVO" id="questionVO"> //대소문자 구분필수
<result property="question" column="question"/>
<result property="question_num" column="question_num"/>
</resultMap>
//조인 쿼리
<select id="readTrash" parameterType="int" resultMap="answerMap">
SELECT
q.question,
a.answer_num,
a.answer_year,
a.answer_date,
a.answer,
.
.
FROM
ANSWER a, QUESTION q
WHERE
a.question_num = q.question_num
ORDER BY
question_num DESC, answer_num DESC;
</select>
3. 결과
1-2. 하나만 불러오기
AnswerVO에서 객체형태가아닌 사용할 변수를 선언, getter setter만들어줌
private String question;
public String getQuestion() {
return question;
}
public void setQuestion(String question) {
this.question = question;
}
2-2 mapper.xml
<resultMap type="com.samyo.domain.AnswerVO" id="answerMap">
<result property="answer_num" column="answer_num"/>
<result property="answer_year" column="answer_year"/>
.
.
<result property="question" column="question"/>
</resultMap>
https://medium.com/webeveloper/mybatis-resultmap%EC%9D%B4%EB%9E%80-854a94df1f78
https://minwoohi.tistory.com/m/87
728x90
반응형
'개발공부 > DB' 카테고리의 다른 글
[oracle] Devon IF 문장(append where='false') (0) | 2022.05.14 |
---|---|
[svn] 폴더삭제하기, 브랜치 만들기 (0) | 2022.05.13 |
[Mysql] 기본문법/ fk 지정/ pk 지정 / 자동증가 번호 지정하기 (0) | 2021.11.27 |
[mysql] MySQL 계정 생성 관리 및 권한설정 (0) | 2021.08.22 |
[Mybatis] 오라클 부적합 열 유형 오류, jdbcType=VARCHAR (0) | 2021.02.26 |
댓글