model이 테이블명과 같음
우리가 보여주고 싶은 화면을 도메인
build.gradle에서 주석을 처리했을 시 프로젝트 다시 로드를 꼭 해줘야 한다.
프로젝트 다시 로드는 bin파일들을 다시 생성해줌..
buildgradle은 필요한 jar을 알아서 설치해줌(개꿀)
자신이 사용하는 DB를 사용하면 된다.
난 DBeaver의 localhost를 사용하기 위해 url로 주소를 가져온다.
application.properties는 프로젝트 설정을 하는 곳이다. 예를 들면 포트번호를 변경할 수 있다. 여기에 아래와 같이 설정해준다.
(driver설정 방법은 구글에 검색하면 잘 나온다)
# 프로젝트 설정
spring.datasource.url=jdbc:mariadb://localhost:3306/hr
spring.datasource.username=root
spring.datasource.password=1234
spring.datasource.driver-class-name=org.mariadb.jdbc.Driver
spring.jpa.database-platform=org.hibernate.dialect.MariaDBDialect
application.yml과 application.properties는 사실 같다. 둘 중에 하나를 선택하면 된다.
(우리는 yml을 선택하기로 함)
강사님이 주신 yml이다. 자주 쓴인다고 들고 있으라고 하심..ㅋㅋㅋ 감사합니다🙇🏻♀️
# yml이랑 같다
spring:
thymeleaf:
cache: false
datasource:
url: jdbc:mariadb://localhost:3306/hr
driverClassName: org.mariadb.jdbc.Driver
username: root
password: 1234
jpa:
defer-datasource-initialization: true
open-in-view: false # 트랜잭션 범위 밖에서 영속성 컨텍스트를 유지할지 여부
database-platform: org.hibernate.dialect.MariaDBDialect
hibernate:
ddl-auto: none # create-drop, update, validate, none
naming:
physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
implicit-strategy: org.hibernate.boot.model.naming.ImplicitNamingStrategyLegacyJpaImpl
show-sql: true
properties:
hibernate:
format_sql: true
servlet:
multipart:
max-request-size: 10MB
max-file-size: 10MB
실습을 했는데 너무 많은 변동사항이 있어서 올리지 못했다..나중에 수정하기로 git을 올려놓을 예정이다..😥
디자인 제작
- 정적 html 제작
- 화면에 맞춰서 db설계
스프링 부트 세팅
- 화면에 맟춰서 controller제작
- 테이블에 맞춰서 entity제작
- entity에 맞춰서 repository 제작
- service로 화면에 필요한 작업 및 데이터 생성
- controller에서 service 결과 받아서 화면에 뿌리기
repository가 entity로 넘겨주고 entity는 넘어갈 수 없으니까 service에서 dto로 넘겨주는 것이다.