본문 바로가기

spring boot

실전! 스프링 부트와 JPA 활용1 - 1주차

CEOS 팀프로젝트를 진행하면서 spring boot를 새롭게 배우기로 했다.

가장 유명한 김영한 강의를 사서 기초를 배우고 팀프로젝트에서 좀 더 심화로 들어갈 예정이다.


1. 프로젝트 생성

스프링 부트 스타터(Spring Initializr)에서 기본 환경과 라이브러리를 설정한 후 다운 받는다.

난 java version이 17이상이라 교재랑은 약간 다름.

설정

gradle파일을 열고 main 페이지가 제대로 실행되는지 확인한다.

처음 설정을 열거나 수정하면 옆에 코끼리 무늬가 뜬다. 이걸 눌러야 적용됨.

Web server failed to start. Port 8080 was already in use 오류가 나면서 main 페이지가 제대로 실행이 되지 않았는데..8080 port를 이미 사용중이여서 그랬다. 

(window기준) cmd를 관리자 권한으로 실행하여 port의 id를 찾고 종료 시켰다.

port 찾기 : netstat -ano

종료 : taskkill /pid 5588 /f

5588 PID

또 오류가 나면 settings>tool에서 Gradle JVM을 내 자바 버전인 17로 바꾸어주고 Build and run 부분을 IntelliJ로 바꾸어준다.

다음으로 Lombok 적용. 문제 없이 잘 된다.

좀 짤림...아래에 잘 실행되고 있다.


2. 라이브러리 살펴보기

./gradlew dependencies —configuration compileClasspath

이 명령어가 잘 안되면 settings>Gradle에서 gradle user home에서 .gradle 경로를 설정한다. 근데 이거 보기 불편하면 오른쪽 gradle을 누르고 dependencies에서 확인 가능하다.

라이브러리는 여러가지가 있었는데...서로연관되어있다. 

29. Developing Web Applications (spring.io)

 

29. Developing Web Applications

The Spring Web MVC framework (often referred to as simply “Spring MVC”) is a rich “model view controller” web framework. Spring MVC lets you create special @Controller or @RestController beans to handle incoming HTTP requests. Methods in your contr

docs.spring.io

Getting Started | Serving Web Content with Spring MVC

 

Getting Started | Serving Web Content with Spring MVC

Static resources, including HTML and JavaScript and CSS, can be served from your Spring Boot application by dropping them into the right place in the source code. By default, Spring Boot serves static content from resources in the classpath at /static (or

spring.io

더 궁금하면 여기서 찾아보면 될듯.


3. View 환경 설정

src/main/java/jpabook.jpashop에서 view를 만들고 html과 연결한다. 

특이한 점은 return "함수이름" 만 적고 경로나 html을 따로 명시하지 않아도 thymeleaf에서 자동으로 매핑해준다. 

또, 기본 url은 index.html에 만들면 된다.

index.html


4. H2 데이터베이스 설치

H2는 MySQL보다 간단하고 편리한 DB를 제공한다.

실전에서는 MySQL쓰겠지만..

h2_db/H2/bin으로 이동하고 window는 ./h2.bat, linux는 ./h2.sh실행하면 데이터베이스로 이동가능

나머지는 교재대로~


5. JPA와 DB 설정, 동작확인

성공쓰

쿼리 파라미터 로그 남기기도 성공~

로그

버전 1.9.0 확인~!

insert 어쩌고 뜨면 성공임.

 


참고사이트

https://dundung.tistory.com/148

 

Web server failed to start. Port 8080 was already in use 에러

포트가 이미 실행 중일 때 스프링을 Run 하면 실행되는 에러이다. Web server failed to start. Port 3000 was already in use. Action: Identify and stop the process that's listening on port 3000 or configure this application to listen on a

dundung.tistory.com

https://carpet-part1.tistory.com/501

 

FAILURE: Build failed with an exception. 에러 해결

FAILURE: Build failed with an exception. 에러 원인 gradle 홈을 설정해주지 않아 생긴 에러 해결 방법 File > Settings > Build, Execution, Deployment > Build Tools > Gradle 못찾겠으면 Gradle 검색 Gradle user home: 에 안드로이

carpet-part1.tistory.com

https://velog.io/@green9930/H2-DataBase-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0

 

H2 DataBase 사용하기

H2 데이터베이스 설치하기 https://h2database.com/html/main.html h2database 홈페이지 각자 환경에 맞는 파일을 설치한다. 실행하기 : ./h2.sh (윈도우는 h2.bat) 데이터베이스 파일 생성 방법 jdbc:h2:~/t

velog.io