구글 주스와 MyBatis의 연동
[서론]
프로그램 만들다 보면 보면 데이터베이스로 부터 데이터를 읽고 쓰는 작업은 필수적이라고 해도 무방할 정도로 데이터베이스에 값을 쓰고 읽는 작업을 많이 한다. 저번 포스팅에서는 Google Guice(이하 주스)를 이용한 의존성 주입을 하는 법에 대해서 알아보았다면 이번 포스팅에서는 주스를 이용해서 MyBatis와 연동하는 법에 대해서 알아보도록 한다. 해당 연동 부분은 내가 참여하고 있는 프로젝트에서 직접 사용하고자 하여 자료를 조사하고 만들었는데 자료가 충분하지 않아 고생을 한 부분이다. (혹은 내가 자료들을 잘못 이해 해서 ...)
[MyBatis와의 연동]
저번 시간에 의존성 주입 모듈을 만들기 위해서 InjetConfig라는 클래스가 AbstractModule을 상속한 클래스에 주입될 클래스들의 관계를 정의하였다. 이와같이 MyBatis와 연동하기 위해서도 필요한 클래스 정보들을 주입하여야 하는데 이것을 MyBatis에서는 MyBatisModule이라는 클래스로 미리 정의가 되어 있다. 다음 아래에서는 MyBatis모듈을 설정하는 내용을 나타낸다.
위에 com으로 시작하는 내용은 이전 포스팅에서 진행했던 설명의 결과 물이며 일부러 지우지는 않았다.
[결론]
구글 주스를 사용하는 곳은 많이 없다고 들었지만 Spring이 외 이런 의존성주입 프레임워크가 있다는 것을 설명하고 싶었고 첫번째 시간에는 간단한 사용 설명, 이번 시간에는 마이바티스를 사용하는 법까지 해서 포스팅을 진행 하였다. 내가 진행했던 프로젝트에서는 구글 주스를 성공적으로 적용하여 단일 모듈의 웹 필터를 구현하기도 하였다.
이 처럼 구글 주스 또한 스프링에 버금 가는 의존성 주입 프레임워크이다. 지금까지 했던 포스팅에서 만들었던 소스들은
https://github.com/aq3aq4/Guice_postion
에 그대로 있으므로 필요하신 분은 내려받으셔서 참조용으로 사용하셔도 된다.
이번 포스팅까지 진행하면서 제네릭타입 인스턴스의 주입은 어떻게 하는가? 라는 궁금한점이 생기는 분도 있을 것이다 이것에 대한 내용은 다음 포스팅에서 설명하고 그것을 마지막으로 구글 주스에 대해서는 당분간은 포스팅이 없을것 같다.
포스팅을 진행하면서 PrivateModule에 대한 설명이 빈약했는데 추가 설명이나 자세히 아시는 분은 메일로 보내주시면 수정하겠습니다.