@3/7/2023
프로젝트 생성
자바 8, 11 차이
•
영한님은 자바 11을 권장하지만, 스프링에서 자바 11을 써야하는 정확한 이유를 찾지는 못했음. 일단 8로 돌려보며 추후에 문제가 생기는 지 확인해보고 싶어서 8로 선택.
◦
@3/11/2023 optional isEmpty 11부터 사용 가능(스프링 관련 부분은 아니지만)
•
Project setting
Dependencies
•
Thymeleaf
•
Spring Web
•
MySQL Driver
•
Spring Data JPA
•
Lombok
•
Spring Boot DevTools
패키지 구조
•
계층형 방식
◦
domain
◦
repository
◦
service
◦
controller
•
개념적 방식 (Spring petclinic 예제)
◦
model
◦
owner
◦
system
◦
vet
•
역사와 전통이 있는 계층형 방식 선택
설정 → Annotation processing 체크
Test run
ForumApplication.java 실행 시 DB 오류 발생
MySQL db 설정을 안 해서 발생하는 것이었음(..)
MySQL DB 생성 및 권한 부여
•
DB 생성
mysql> create database springforumdb;
SQL
복사
•
유저 생성 및 권한 부여
mysql> create user 'springforumuser'@'%' identified by '1234';
mysql> grant all on springforumdb.* to 'springforumuser'@'%';
mysql> flush privileges;
SQL
복사
•
로그인 명령어
$ mysql -hlocalhost -uspringforumuser -p springforumdb
Shell
복사
application.yml 설정
•
spring:
datasource:
url: jdbc:mysql://localhost:3306/springforumdb
username: springforumuser
password:
driver-class-name: com.mysql.cj.jdbc.Driver
jpa:
hibernate:
ddl-auto: create
properties:
hibernate:
dialect: org.hibernate.dialect.MySQLDialect
#show-sql: true
format_sql: true
Shell
복사
Test Run
localhost:8080
Shell
복사
MySQL workbench에 커넥션 추가
Test Connection