웹(Web)/백엔드(Backend)

<우아한 스프링 부트> 정리

SK_MOUSE 2021. 3. 25. 16:01
반응형

www.youtube.com/watch?v=z0EaPjF3pCQ

<빌드 : 프로젝트생성>

 

1. 어플리케이션을 만들어서 어떻게 배포하냐에 따라 2가지선택.

JAR(Java Archive) : 기본 이것부터 사용해보길 권장.

WAR(Web Application Archive) : 톰캣같은곳에 배포할때 사용.

 

2. 의존성추가 : 스프링부트가 제공해주는 주요 기능 중 하나

의존성
의존성을 왜 관리하는가?

  • pom.xml에는 버전정보가 없지만 dependency management에 버전이 정의가 되어있다.
  • springboot에 버전을 명시하지않아도 되는것은 장점 + 현재 버전에 최적화되어있는것을 알아서 찾아놨기때문에 springboot가 좋은것이다.
  • springboot가 관리해주지 않는 dependency는 버전 명시해야됨.

 

 

3. 프로젝트 생성


<빌드: 애플리케이션 실행>

1. 메이븐에서 실행 : 콘솔창에서

메이븐설치 된경우 : mvn spring-boot:run

.메이븐설치 안된경우 : /mvnw  spring-boot:run

2. main실행해서 localhost 웹에서 확인

3. jar패키징해서 실행 

 

*8080포트 안써지는경우 : 프로퍼티에서 포트를 변경하면된다. 안써지는 이유는 tomcat에서 이미 사용중이기때문일 수 있음. 

=> 해결책 : taskkill/f/pid 8080 PID 번호

혹은 netstat -a -o 명령어 입력 8080의 Pid번호확인

 


 

<코딩 개발툴>

프론트쪽만 바꾼다고 바뀌지않고 재기동해야 바뀜.

TimeLeaf가 연결되어있는것때문에..

 


SpringBoot는 코딩 자동설정이 된다.

Q. 설정이 겹치거나 중복된 컨트롤러가 정의된경우에는 우선순위가 있나?

1. 애플리케이션에서 설정한 빈이 우선적용.

2. 그 다음 자동설정으로 제공하는 빈 등록(오버라이딩 X. 막힘.)

 


프로퍼티는 자바 인코딩문제때문에 잘 깨짐

Transparent 체크하면 알아서 아스키코드로 바꿔줌

한글로 작성하면=>아스키로 안바뀐것처럼 보이지만 아스키로 사실 바뀜.

바뀜.ㅇㅇ


 

반응형