1. File -> New -> Spring Starter Project 선택.
2. Type : Gradle, Packaging:Jar Java: 8 변경.
3. MyBatis Framework, Lombok, Spring Web 선택 후 Finish.

4. build.gradle 수정
- mariaDB 추가
compile 'org.mariadb.jdbc:mariadb-java-client'
※ gradle 수정 저장 후 프로젝트 우클릭 -> Gradle -> Refresh Gradle Project 진행
5. application.yml 수정
- 데이터소스 추가
spring:
datasource:
url: jdbc:mariadb://(IP Address):3306/DB명
username: 아이디
password: 패스워드
driver-class-name: org.mariadb.jdbc.Driver
- mybatis 매퍼 / Aliase 패키지 설정
mybatis:
mapper-locations: classpath*:/mybatis/mapper/*.xml
type-aliases-package: com.oedpus.domain
6. 매퍼XML 패키지 생성
- resources/mybatis/mapper 폴더 생성
- CityMapper.xml 생성 (city 테이블의 전체 데이터 select)
<?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="com.oedpus.dao.CityMapper">
<select id="selectCityByAll" resultType="City">
select id, name, state, country from city
</select>
</mapper>
7. domain 패키지 생성 및 City.java 도메인 생성
package com.oedpus.domain;
import lombok.Builder;
import lombok.Getter;
import lombok.ToString;
@Getter
@ToString
public class City {
private Long id;
private String name;
private String state;
private String country;
@Builder
public City(Long id, String name, String state, String country) {
this.id = id;
this.name = name;
this.state = state;
this.country = country;
}
}
8. 데이터를 접근할 dao 패키지와 CityDao.java 생성
package com.oedpus.dao;
import java.util.List;
import org.apache.ibatis.session.SqlSession;
import org.springframework.stereotype.Component;
import com.oedpus.domain.City;
@Component
public class CityDao {
private final SqlSession sqlSession;
public CityDao(SqlSession sqlSession) {
this.sqlSession = sqlSession;
}
public List<City> selectCityByAll() {
return this.sqlSession.selectList("selectCityByAll");
}
}
9. controller 패키지 및 SampleRestController.java 생성
package com.oedpus.controller;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import com.oedpus.dao.CityDao;
import com.oedpus.domain.City;
@RestController
public class SampleRestController {
@Autowired
private CityDao cityDao;
@GetMapping("/citySelect")
public @ResponseBody List<City> selectTest() {
List<City> cities = this.cityDao.selectCityByAll();
return cities;
}
}
10. 프로젝트 실행 및 URL 접근

'프로그래밍 > Spring boot' 카테고리의 다른 글
Mybatis Enum 사용 (0) | 2019.11.15 |
---|---|
Spring boot + JSP (0) | 2019.09.20 |
Spring boot 에러 페이지 설정 (0) | 2019.09.06 |
댓글