뮁이의 개발새발

[my batis] 기본 개념 및 Spring 연동 본문

Back-end

[my batis] 기본 개념 및 Spring 연동

뮁뮁이 2021. 11. 8. 01:22

myBatis 10개
    - 객체와 메서드
    - 구성파일
    - 태그들과 태그 속성 (sql, selectKey 포함)
    - 동적쿼리 태그

 

[MyBatis]

- Java oBject와 SQl문 사이의 자동 Mapping 기증을 지원하는 ORM Framework

- SQL을 별도의 파일로 분리해서 관리 가능

- JTBC의 불편함을 제거해 줌

 

[장점]

- 쉬운 접근성과 코드의 간결함

- SQL문과 프로그래밍 코드를 분리할 수 있음

 

[MyBatis-Spring의 주요 Component]

- MyBatis 설정파일(sqlMapConfig.xml) : 데이터베이스의 접속 주소 정보나 객체의 alias, Mapping 파일의 경로 등의 고정된 환경 정보를 설정, Dto 객체의 정보 설정

- SqlSessionFactoryBuilder : MyBatis 설정 파일을 바탕으로 SqlSessionFactory를 생성

- SqlSessionFactory (SqlSessionBean): SqlSession을 생성, Spring Bean으로 등록해야 함

- SqlSession : 핵심적인 역할을 하는 Class로 SQL 실행이나 Transaction 관리를 실행. thread마다 필요에 따라 생성

- mapping 파일(member.xml) : SQL문과 ORMapping을 설정

- Spring Bean 설정파일 : SqlSessionFactoryBean을 Bean에 등록할 때 DataSource 정보와 MyBatis Config 파일 정보, Mapping 파일의 정보를 함께 설정함. SqlSessionTemplate을 Bean으로 등록

 

[MyBatis와 Spring의 연동]

- Maven에서 관련 빈을 등록하여 사용

- 스프링에서 제공하는 트랜잭션 기능을 사용하면 손쉽게 트랜잭션 처리

(DataSource 설정)

<!-- dataSource 설정, spring-jdbc 모듈 사용, spring 에서 jdbc 를 통해 mysql 에 접속할 수 있게 함 -->
<bean id="dataSource" class="org.springframework.jdbc.datasource.SimpleDriverDataSource">
    <property name="driverClassName" value="com.mysql.jdbc.Driver"></property> 
    <property name="url" value="jdbc:mysql://35.200.109.72:3306/testdb?useSSL=false"></property>
    <property name="username" value="root"></property>
    <property name="password" value="비~밀"></property>
</bean>

 

'Back-end' 카테고리의 다른 글

[VueJS] 기본 개념 및 요점정리  (0) 2021.11.15
[Spring] 의존성 주입 (Dependency Injection)  (0) 2021.10.31
[MVC 패턴] 기초개념  (0) 2021.10.18
[HttpSession] 기초 개념  (0) 2021.10.14
[Cookie] 기초 개념 및 구현  (0) 2021.10.14
Comments