티스토리 뷰
🌞🌞🌞🌞🌞🌞🌞🌞
mybatis?
개발자가 지정한 SQL, 저장 프로시저, 몇 가지 고급 매핑을 지원하는
퍼시스턴스 프레임워크
사용해보기
모든 mybatis를 사용하는 애플리케이션은
SqlSessionFactory 인스턴스를 필수로 사용합니다.
SqlSessionFactory를 SqlSessionFactoryBuilder 이용해 만들수 있습니다.
String rs = "마이바티스설정경로";
InputStream is = Resources.getResourceAsStream(rs);
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(is);
SqlSession ss = factory.openSession(true);
ss.insert("{매퍼이름}.{쿼리요소이름}");
XML을 사용하였습니다.
마이 바티스 설정 경로를 문자열로 작성한 뒤
mybatis에서 제공해주는 메서드(ResourcesAsStream)를 사용해
inputstream으로 변환해 줍니다.
그 후 빌더로 factory를 만들어 뽑은 sqlSession인스턴스로
설정 파일 내에 작성해둔 mapper정보를 사용합니다.
🐸간단 예시🐸
SqlSession ss = factory.openSession(true);
ExampleEntity e = ss.selectOne("testMapper.select", 5);
System.out.println(e.getName());
openSession안의 값은
autoCommit 유무입니다.
값을 안 넣을 시 기본값은 false이므로
commit을 따로 해줘야 합니다.
받아온 SqlSession인스턴스로
select, isnert, delete 등 쿼리를 수행할 수 있습니다.
<mapper namespace="testMapper">
<insert id="insert" useGeneratedKeys="true">
insert into ex_table (name)values ("user1")
</insert>
<select id="select" resultType="com.mycom.myapp.ExampleEntity">
select * from ex_table where id = #{id}
</select>
</mapper>
mapper태그 네임스페이스 값과
안에 자식 태그들의 id값을 '.'을 사용해 이어서
sqlSession값으로 넘기면 해당 쿼리가 수행이 됩니다.
반응형
'Java & Kotlin' 카테고리의 다른 글
java stream (0) | 2021.07.24 |
---|---|
Java File Class 알아보자 (0) | 2021.07.23 |
REST API (0) | 2021.07.22 |
java 정렬과 비교 (0) | 2021.07.18 |
테스트코드 작성후 느낀점 (0) | 2021.07.11 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 프로그래머
- 코딩테스트
- jvm
- jre8
- springboot
- 알고리즘
- Spring
- jdk11
- mappedby
- JDK8
- 문제
- 다대일
- ㅃ
- JDK
- boot
- JPA
- jre11
- 백준
- 자바
- 백준 제로
- 백준 제로 자바
- 자사서비스
- 백엔드
- 스택
- boot 일대다
- 개발자채용
- jre
- 관계설정
- java8
- 스타트업
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함