본문 바로가기
프레임워크

MyBatis란 무엇인가?

by do_ng 2020. 6. 14.

개발과 유지보수가 쉽도록 자바코드에 섞여있는 SQL구문을 별도의 파일로 분리해서 따로따로 사용하고 JDBC프로그래밍의 복잡함을 덜어줄수 있음 

 

자바코드만으로 Mybatis 사용하는 과정)

 

1.DB를 연동하고 SQL 맵퍼 파일들이 있는 경로를 설정해주는 XML파일을 만든다.(SqlConfig.XML)

SqlConfig.XML 에서 DB연결 정보를 외부 파일로 따로빼논것(SqlMapConfigExample.properties)
실행될 SQL구문이담긴 User.xml 파일 Main에서 Emp.getone(namespace + id)을 통해 해당 sql구문을 실행시킬수 있다

2.DAO 단에서 DB처리를 하기위해 사용하는 SQL구문이 담긴 SqlSessionFactory객체를 만든다(싱글톤 Static)

3.sqlsession 객체안에 있는 메소드(insert,delete,update..등등)을 실행할경우 SQL구문이 저장된 sqlmapper 파일(XML)에서 SQL을 찾아 해당 구문을 실행한다 

-> sqlsession.openSession() 함수를 호출해 실제 sql을 날릴수 있는 준비를 한다.

-> sqlsession.openSession(true) parameter로 true 값을 줘서 autoCommit 적용되게 설정할수도 있다(default값-false)

-> sqlsession 사용이 다끝났으면 session.close()를 통해 닫아줘야함