본문 바로가기

카테고리 없음

[SpringBoot + mysql + mybatis] 프로젝트 생성 및 기본 설정

spring.io 에서 인텔리제이 커뮤니티버전에서는 부트 프로젝트 생성 지원안되서 이 사이트에서 만든 후 압축을 푼 후에 인텔리제이에서 열어야 함. (gradle 이용함)

srping boot devtools = 백엔드 쪽. 자동 리로드 실행해줌

lombok = 생성자, 게터 , 세터 생성 등 편리함 지원

spring web = (필수) spring mvc

 

 

 

+  타임리프, mybatis, mysql 추가함.!!

** 프로젝트 만든 후에 추가한 이유?

mysql dependencies가 처음에 실행될때 db를 찾아가게 되어있는데 db 가 정의되어있지 않으면 오류가 발생하기 때문에 처음에 application.yml에 db 접속정보를 기입해두어야 함

=> 되도록이면 mybatis, mysql은 후에 추가!!

 

 

파일열기

파일>새로만들기>기존소스에 있는 프로젝트

build.gradle찾아서 열기

 

 

*생성자 주입 방식 

@RequiredArgsConstructor

 

의존성주입을 하는 방식 중 하나로 생성자를 통해 객체를 주입하는 방식이다

여기서는 lombok의 @RequiredArgsConstructor 사용했고 final이 붙은 필드만 포함하는 생성자를 자동으로 생성해준다.

 

 

 

[application.yml] mysql 연결 + mybatis 설정

appilcation.properties -> application.yml 로 이름 변경

# server port
server:
  port: 8080

# database
spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/db_codingrecipe?serverTimezone=Asia/Seoul&characterEncoding=UTF-8
    username: user_codingrecipe
    password: 1234

# mybatis
mybatis:
  mapper-locations: classpath:mapper/*.xml
  config-location: classpath:mybatis-config.xml

* url, username, password는 자신의 mysql 계정 적어주기

 

 

[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>
        <typeAlias type="com.backminjoo.board.dto.BoardDTO" alias="board"></typeAlias>
<!--        <typeAlias type="com.codingrecipe.board.dto.BoardFileDTO" alias="boardFile"></typeAlias>-->
    </typeAliases>
</configuration>

 

[board-mapper.xml] 파일 생성 후 기본 내용 복사하기

* 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="Board">

</mapper>

 

 

폴더 구조 확인