[Mybatis] 테이블 생성 및 초기화 스크립트 사용 예제

MyBatis 자체적으로 테이블 생성 및 초기화 스크립트를 실행하는 기능은 없습니다. 테이블 생성 및 초기화 작업은 주로 데이터베이스 관리 시스템(DMS) 또는 관리 도구를 사용하여 수행하며, MyBatis는 데이터베이스와 상호 작용하는 데 사용됩니다.

그러나 초기 데이터베이스 설정 및 테이블 생성을 위해 대략적인 스크립트를 작성하는 예제를 제공할 수 있습니다. 아래는 MySQL 데이터베이스를 사용하는 예제입니다.

예제: 테이블 생성 및 초기화 스크립트

  1. 데이터베이스 설정 스크립트 작성:

    먼저 MySQL 데이터베이스를 생성하고 초기 설정을 수행하는 스크립트를 작성합니다.

-- 데이터베이스 생성
CREATE DATABASE mydatabase;

-- 데이터베이스 선택
USE mydatabase;

-- 사용자 테이블 생성
CREATE TABLE users (
    id INT AUTO_INCREMENT PRIMARY KEY,
    username VARCHAR(50) NOT NULL,
    email VARCHAR(100) NOT NULL
);

-- 초기 데이터 삽입
INSERT INTO users (username, email) VALUES
    ('user1', 'user1@example.com'),
    ('user2', 'user2@example.com');` 
  1. MyBatis 설정 파일 작성:

    MyBatis 설정 파일(mybatis-config.xml)에 데이터베이스 연결 정보를 설정합니다.

<!-- mybatis-config.xml -->
<configuration>
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC" />
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.cj.jdbc.Driver" />
                <property name="url" value="jdbc:mysql://localhost:3306/mydatabase" />
                <property name="username" value="your_username" />
                <property name="password" value="your_password" />
            </dataSource>
        </environment>
    </environments>

    <!-- 매퍼 등록 -->
    <mappers>
        <mapper resource="com/example/UserMapper.xml" />
        <!-- 다른 매퍼 등록 -->
    </mappers>
</configuration>` 
  1. MyBatis 매퍼 XML 작성:

    테이블과 관련된 SQL 쿼리를 MyBatis 매퍼 XML 파일(UserMapper.xml)에 작성합니다.

<!-- UserMapper.xml -->
<mapper namespace="com.example.UserMapper">
    
    <!-- 사용자 조회 쿼리 -->
    <select id="getUserById" parameterType="int" resultType="User">
        SELECT * FROM users WHERE id = #{id}
    </select>
    
    <!-- 다른 SQL 쿼리들 -->
</mapper>` 
  1. Java 코드에서 사용:

    Java 코드에서는 MyBatis를 사용하여 데이터베이스에 연결하고 SQL 쿼리를 실행합니다.

public class Main {

    public static void main(String[] args) {
        SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(inputStream);

        try (SqlSession sqlSession = sessionFactory.openSession()) {
            UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
            
            int userId = 1;
            User user = userMapper.getUserById(userId);
            
            System.out.println("User: " + user);
        }
    }
}` 

이렇게 설정한 후, 프로그램을 실행하면 MySQL 데이터베이스에서 사용자 데이터를 조회할 수 있습니다. 테이블 생성 및 초기화는 데이터베이스 설정 및 관리 도구를 사용하여 진행해야 합니다.