Mybatis 셋팅이란?


pom.xml에 추가한다.



1.설정해줘야한다. SqlSessionFactoryBean 

SqlSessionFactoryBean 

-DataSource(데이터베이스 커넥션)

-MyBatisConfig File(Mybatis 파일 위치정보)

(sqlMapConfig.xml)

-mapping File(쿼리SQL문을 포함)

(user.xml)



2.컴포넌트생성

(Mybatis제공 컴포넌트)

SqlSessionFactory 생성방법.




<bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate">

<constructor-arg ref="sqlSessionFactory" />

</bean>



3.SqlSessionFactory정보를 전달

SqlSessionTemplate(인터페이스 구현)


4.이 인터페이스를 구현한게 SqlSessionTemplate이다.

(Mybatis제공)

SqlSession(인터페이스)



SqlMapConfig.xml

vo클래스명 정리해준다.


User.xml

쿼리 포함된 mapping파일

namespace 이름 설정해준다. 


'개발 소발 > 개발 Spring' 카테고리의 다른 글

MVC패턴이란?  (0) 2018.01.11
Mybatis Mapper 인터페이스란?  (0) 2018.01.11
MyBatis란?  (0) 2017.11.27
AOP어플리케이션 작성 (annotation)이란?  (0) 2017.11.27
AOP어플리케이션 작성 (XML)이란?  (0) 2017.11.24

MyBatis란?


MyBatis의 개요와 특징

MYbatis와 Mybatis-Spring의 주요 컴포넌트

MyBatis-Spring 예제


MyBatis란?

- 자바 오브젝트와 SQL문 사이의 자동 Mapping 기능을 지원하는 ORM 프레임워크이다.

(Object relational Mapping)

- MyBatis는 SQL을 별도의 파일로 분리해서 관리하게 해준다.

- 객체-SQL 사이의 파라미터 Mapping 작업을 자동으로 해주기 때문에 많은 인기를 얻고있다.

- 새로우 DB프로그래밍 패러다임을 익혀야하는 부담없다.

- SQL문 그대로 이용하면서 JDBC 코드작성의 불편함도 제거해준다.

- 도메인 객체나 VO객체를 중심으로 개발이 가능한 장점있다.


MyBatis의 특징


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

- 가장 간단한 퍼시턴스 프레임워크(ORM)

- XML형태로 서술된 JDBC코드라고 생각해도 될만큼 JDBC의 모든 기능을 MyBatis가 대부분 제공한다.

- 복잡한 JDBC코드를 걷어내며 깔끔한 소스코드를 유지할 수 있다.

- 수동적인 파라미터 설정과 쿼리 결과에 대한 맵핑 구문을 제거할 수 있다.


SQL문과 프로그래밍 코드의 분리

- SQL에 변경이 있을 때마다 자바 코드를 수정하거나 컴파일 하지 않아도 된다.

- SQL작성과 관리 또는 검토를 DBA와 같은 개발자가 아닌 사람에게 맡길 수도 있다.


다양한 프로그래밍언어로 구현가능

- java,C#, .NET등


MyBatis3와 MyBatis-Spring의 주요 컴포넌트

Application     

 O/R

 JDBC

 JDBC

 Persistence

 Modules

 Mapper

 Interfaces

 Implementations

 Layer



JDBC는 저수준의 API

- JDBC를 MyBatis로 맵핑해서 사용(개발자가 사용편리)한다.


Data Access Layer에서 사용(DAO)



MyBatis3의 주요 컴포넌트

Mybatis설정파일(SqlMapCongif.xml)

- 데이터베이스의 접속 주소 정보나 Mapping파일의 경로(SQL포함한파일)등의 고정된 환경정보를 설정한다.

SqlSession Factory Builder(호출)

- 정보를 읽어온다.

- 읽어온 정보로 SqlSession Factory생성한다.

SqlSession Factory

- 읽어온 정보로 SqlSession 생성한다.

SqlSession(핵심역할)

- 컴포넌트 생성 개발자에게 리턴해준다.

- SQL문을 호출해주는 기능,트랜잭션 관리도 실행한다.




Beans.xml에서 설정해야하는 것.

SqlSessionFactoryBean


SqlSessionTemplate


MyBatis-Spring의주요 컴포넌트 역할이다.


Mybatis 설정파일

sqlMapConfig.xml

 - VO객체의 정보를 설정한다.

 SqlSessionFactoryBean

 - MyBatis설정파일을 바탕으로 SqlSessionFactory를 생성한다.

 - SpringBean으로 등록해야함

 SqlSessionTemplate

 - 핵심적인 역할을 하는 클래스로서 SQL실행이나 프랜잭션 관리를 실행한다.

 - SqlSession 인터페이스를 구현하며, Thread-safe하다(멀티스레드환경에서도 안전하게사용가능)

 - Sqpring Bean으로 등록해야한다.


 Mapping파일

 - SQL문과 OR Mapping을 설정한다.

 Spring Bean

 - SqlSessionFactoryBean을 Bean에 등록할 때

  DataSource정보와 MyBatis Config파일정보,Mapping파일의 정보를 함께 설정

 - SqlSessionTemplate을 Bean으로 등록



'개발 소발 > 개발 Spring' 카테고리의 다른 글

Mybatis Mapper 인터페이스란?  (0) 2018.01.11
Mybatis 셋팅이란?  (0) 2017.12.21
AOP어플리케이션 작성 (annotation)이란?  (0) 2017.11.27
AOP어플리케이션 작성 (XML)이란?  (0) 2017.11.24
AOP란?  (0) 2017.11.24

jdbc환경설정(mysql)이란?


JDBC 실행

실행전 환경설정(드라이버설치,라이브러리설치,Bean설정)


pom.xml(mysql과Spring-jdbc추가)




프로퍼티파일에 추가하기.


bean.xml에 추가하기.


Test 클래스 코드작성.


연결된것 확인방법.

콘솔로그에 com.mysql.jdbc.JDBC4Connection@31368b99 출력되는 것 확인한다.

+ Recent posts