스프링 부트의 특징
내장 서버를 이용해 별도의 설정 없이 독립 실행이 가능한 스프링 애플리케이션
톰캣, 제티 또는 언더토우와 같은 웹 애플리케이션(WAS) 자체 내장
빌드 구성을 단순화하기 위한 Spring Boot Starter 의존성 제공
XML 설정 없이 단순 자바 수준의 설정 방식 제공
JAR를 이용해 자바 옵션만으로 배포 가능
애플리케이션의 모니터링 및 관리를 위한 스프링 액추에이터 제공



spring boot devtools - 코드 변화 감지를 통해서 알아서 작동함
spring web - 톰캣서버 탑재, 세팅할필요없어짐

압축풀고 해당 폴더 이름 폴더에 이동시킴



스타터 아닌 형태는 버전 추가해야함!
스프링 부트 메인코드에서 실행하면 된다.

설정 된 것이 없기때문에 기본적으로 스프링부트의 에러페이지가 뜬다

포트 설정


🔼기본적인 컴포넌트 스캔 범위
따로 컴포넌트 스캔을 작성해주지 않아도 choongang(기본 패키지) 안에 정의하면 스캔범위로 읽힌다

기본 설정 패키지를 바꾸고싶으면 설정쪽에서 기본 스캔범위를 바꿀 수 있다.
매번 서버 껐다 켰다 하지 않도록 setting 바꾸자




설정 완료!

코드 바꾸니 자동으로 서버에 반영이 되었고 알아서 껐다 켜짐을 확인할 수 있다.

livereload 기능 활성화 시키기 (개발할때만! 배포할땐 활성화x)


🔼 확장프로그램 추가


소스에 자바스크립트가 추가되었으면 활성화된것임! 웹 소켓이 연결되어있다.
서버쪽에서 웹소켓을 통해 신호를 보내고 브라우저가 받는다?
위처럼 하면 내가 새로고침 할 필요 없이 조금 기다리면 바뀐내용 적용된다.
💥💥spring.profiles.active💥💥: 프로필 설정시 환경변수
application-환경변수명.properties로 동작한다.실행시 환경변수 설정 방법
-D 환경변수명=값 형태--환경 변수명=값
포트는 4000으로 설정함

(환경변수 설정 안뜨면 Environment variables 추가)

설정파일 환경변수에 따라서 분리함

이렇게 해두면 포트 3600으로 접근 안되고 4000으로 됨

.gitignore

배제시키기
jar
gradle build / mvn package
컴파일 -> 테스트 -> jar
gradle jar
gradle bootjar: 컴파일 -> jar
gradle bootRun: 스프링 부트 시작

🔼 배포파일

java -jar jar 파일ex) 프로필 -> prod (-D옵션: 환경변수 설정방법)
java -jar -Dspring.profiles.active=prod jar 파일명
java -jar jar 파일명 --spring.profiles.active=prod



CTRL+C 해제됨


설정파일 포트 4000으로 되어있음🔽

다시 경로 4000으로 링크이동하면 동작 됨
YAML: Yet Another Markup Language
-> YAML Ain't Markup Language
확장자 yaml, yml
🤩properties 형태보다 yml형태를 더 많이 쓴다.🤩

이름과 값 형태를, 즉 하위 형태를 들여쓰기로 구분한다.

🔽 같은 항목끼리 묶어서 들여쓰기 형태로!

#: 주석


동작 잘된다 ~
설정 파일(yml, properties)에 환경변수로 치환되는 부분을 직접 설정
${환경 변수명}
- 민감한 설정은 직접 코드로 작성X, 환경 변수로 실행중에 설정하는게 일반적