0. MyBatis Generator?
아래 공식페이지에도 설명되어있지만
마이바티스에 필요한 파일들을
자동으로 생성해주는 플러그인으로 보면된다
1. Help > Eclipse Marketplace... 클릭
2-1. Eclipse Marketplace > mybatis 검색 > MyBatis Generator 1.4.0 Install 클릭
2-2. 라이센스 약관동의 후 Finish 버튼 클릭
2-3. 잠시 기다리면 아래창이 뜬다. Install anyway를 클릭
2-4. 설치가 끝난뒤 재시작을 묻는다. Restart Now 클릭해서 이클립스 재시작
3-1. MyBatis Generator 설정파일 생성하기
3-2. MyBatis Generator Configuration File 선택후 Next 클릭
3-3. Location은 프로젝트명, File name은 환경설정 파일명이다
값이 자동입력 되어있으므로 Finish 버튼을 눌러준다
3-4. generatorConfig.xml 파일 생성 완료
4. generatorConfig.xml 작성하기
MyBatis Generator 설치까지는 간단한데
환경설정 작성이 어려운 부분이라고 생각한다
아래의 페이지에 친절하게 설명되어있다
-DB세팅( 설치 및 테이블 생성 )
-마이바티스 세팅
까지 완료되어 있는 상태라면
위 페이지의 sample을 보고 따라해보면 될거같다
근데 문서의 sample을 내 환경에 맞게 작성한뒤
한번에 잘되면 좋을텐데
경험상 따라해도 한번에 안될때가 더 많다
그래서 실행성공한 코드를 공유한다
generatorConfig.xml 예제 코드
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"> <generatorConfiguration> <context id="context1" targetRuntime="MyBatis3"> <property name="javaFileEncoding" value="UTF-8"/> <!-- 생성한 Mapper파일들을 명시 --> <plugin type="org.mybatis.generator.plugins.MapperConfigPlugin"> <property name="fileName" value="SqlMapConfig"/> <property name="targetPackage" value="com.example.demo.gen.xml"/> <property name="targetProject" value="demo"/> </plugin> <!-- MySQL의 start와 limit을 사용하게 해줌 --> <plugin type="org.mybatis.generator.plugins.RowBoundsPlugin"/> <!-- 생성한 sql파일들을 명시 --> <!-- generator 1.4.0 버전, SqlMapConfigPlugin이 삭제 --> <!-- <plugin type="org.mybatis.generator.plugins.SqlMapConfigPlugin"> <property name="fileName" value="SqlMapConfig"/> <property name="targetProject" value="demo"/> </plugin> --> <!-- Model파일에 toString()을 추가해줌 --> <plugin type="org.mybatis.generator.plugins.ToStringPlugin"/> <!-- 기본적으로 Model생성시 생성되는 example파일의 이름을 지정 --> <plugin type="org.mybatis.generator.plugins.RenameExampleClassPlugin"> <property name="searchString" value="Example$"/> <property name="replaceString" value="Condition"/> </plugin> <commentGenerator> <property name="suppressAllComments" value="false"/> <property name="suppressDate" value="true"/> </commentGenerator> <jdbcConnection connectionURL="jdbc:mysql://아이피:포트/데이터베이스?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&autoReconnectForPools=true&serverTimezone=UTC" driverClass="com.mysql.jdbc.Driver" userId="아이디" password="비밀번호"/> <javaTypeResolver> <property name="forceBigDecimals" value="false"/> </javaTypeResolver> <javaModelGenerator targetProject="demo" targetPackage="com.example.demo.gen.model"> <!-- 스키마별로 다른 패키지에 두기 위해서 설정한다. 파일들이 저장되는 패키지명이 schema명.targetPackage속성값 으로 설정 --> <property name="enableSubPackages" value="true"/> <!-- character 필드들에 대해서 trim을 실행할지 여부를 설정한다. 데이터베이스에서 varchar대신에 char을 사용한다면 유용할 수 있다 --> <property name="trimStrings" value="true"/> </javaModelGenerator> <sqlMapGenerator targetProject="demo" targetPackage="com.example.demo.gen.xml"> <!-- 스키마별로 다른 패키지에 두기 위해서 설정한다. 파일들이 저장되는 패키지명이 schema명.targetPackage속성값 으로 설정 --> <property name="enableSubPackages" value="true"/> </sqlMapGenerator> <!-- javaClientGenerator type ANNOTATEDMAPPER : sql xml파일이 생성되지 않고 SqlBuilder를 사용해서 문자열로 처리한 SqlProvider클래스와 SqlProvider클래스를 어노테이션 사용해서 연결한 mapper 인터페이스를 생성한다.(mybatis 3.0.4 이상) MIXEDMAPPER : ANNOTATEDMAPPER 방식과는 다르게 SqlProvider를 생성하지 않는다. 그래서 sql xml파일도 제대로 생성한다. mapper 인터페이스는 어노테이션과 xml 방식을 혼합해서 생성된다. 모든 dynamic sql은 xml방식으로 생성되고 그 나머지는 어노테이션 방식으로 생성된다. XMLMAPPER : sql xml파일을 생성하고 그에 기반해서 mapper 인터페이스를 생성한다. --> <javaClientGenerator targetProject="demo" targetPackage="com.example.demo.gen.mapper" type="XMLMAPPER"> <!-- 스키마별로 다른 패키지에 두기 위해서 설정한다. 파일들이 저장되는 패키지명이 schema명.targetPackage속성값 으로 설정 --> <property name="enableSubPackages" value="true"/> </javaClientGenerator> <table schema="test" tableName="tb_brd" domainObjectName="Brd"> <property name="ignoreQualifiersAtRuntime" value="true"/> <generatedKey column="BRD_NO" sqlStatement="MySql" identity="true" type="post"/> </table> </context> </generatorConfiguration>
위 코드는 구글링하면서 작성된 코드로
주석 설명은 틀렸을수도 있습니다
targetProject
targetPackage
jdbcConnection
table의 값들을
본인의 환경에 맞게 작성하면 정상 동작하는것을 확인했습니다
5-1. MyBatis Generator 실행하기
generatorConfig.xml 우클릭 -> Runs As -> Run MyBatis Generator 클릭
5-2. MyBatis Generator 빌드 성공
'Dev_Tool > Eclipse' 카테고리의 다른 글
[Eclipse] CodeTemplates 설정후 JavaDoc사용하기 (0) | 2022.12.08 |
---|---|
[Eclipse] Java프로젝트 jar로 생성후 실행하기 (0) | 2021.06.09 |
[Eclipse] JRE 설정 (0) | 2021.03.16 |
[Eclipse] IndentGuide 플러그인 (0) | 2021.03.03 |
[Eclipse] UTF-8 설정 (0) | 2021.03.03 |