mybatis 설정

1. 회원 테이블

  • 데이터베이스에 사용자의 회원정보를 저장하기 위한 테이블 생성
create table springuser(
email varchar2(100)primary key,
pw varchar2(100)not null,
nickname varchar2(100)not null,
image varchar2(1000));

INSERT INTO springuser(email, pw, NICKNAME, image)
values('ggangpae1@gmail.com', '123456', '군계', 'default.png')

COMMIT;

select * from springuser;

2. 의존성 라이브러리 설정

  • MyBatis 와 lombok을 사용하기 위한 의존성 라이브러리를 pom.xml 파일에 설정
        <!-- mybatis 사용을 위한 라이브러리 -->
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.4.6</version>
        </dependency>
        <!-- mybatis-spring 사용을 위한 라이브러리 -->
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis-spring</artifactId>
            <version>1.3.2</version>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.8</version>
        </dependency>

3. UserVO

  • SpringUser 테이블의 데이터를 저장할 User 클래스를 기본패키지.domain 패키지를 생성하고 그 안에 생성
package com.gmail.hi.domain;

import lombok.Data;

@Data
public class User {
    private String email;
    private String pw;
    private String nickname;
    private String image;
}

4. Mybatis 설정

  • src/main/resources 디렉토리에 mybatis 디렉토리를 생성하고 MyBatis환경 설정 파일인 mybatis-config.xml 파일을 생성
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <typeAliases>
        <package name="com.gmail.hi.domain" />
    </typeAliases>
</configuration>
  • springuser 테이블에 관련된 SQL을 저장할 user.xml 파일을 src/main/resources 디렉토리의 mybatis 디렉토리에 mappers 디렉토리를 추가해서 생성하고 namespace을 설정
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="user">
</mapper>
  • root-context.xml 파일에 MyBatis 연동을 위한 bean 생성 코드 작성
    <bean class="org.mybatis.spring.SqlSessionFactoryBean" id="sqlSessionFactory">
        <property name="dataSource" ref="dataSource" />
        <property value="classpath:/mybatis/mybatis-config.xml" name="configLocation" />
        <property value="classpath:/mybatis/mappers/*.xml" name="mapperLocations" />
    </bean>
    <bean class="org.mybatis.spring.SqlSessionTemplate" id="sqlSession" destroy-method="clearCache">
        <constructor-arg name="sqlSessionFactory" ref="sqlSessionFactory" />
    </bean>
  • src/test/java 패키지에 BoardTest 클래스에 메소드를 생성한 후 테스트
    @Autowired
    private SqlSession sqlSession;

    @Test
    public void sqlSessionTest() throws Exception {
        System.out.println(sqlSession);
    }

results matching ""

    No results matching ""