스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
https://inf.run/qg3d
위 강의를 보며 공부한 내용을 작성함.
sudo lsof -i :[포트번호]
PID : 현재 사용중인 프로세스의 고유번호. 이 프로세스를 강제로 종료시켜야 함.
sudo kill -9 [PID]
서버에서 하는 것 없이 파일을 그대로 보여주는것
Jsp, php… -> 템플릿엔진
html을 동적으로 바꿔서 내리는것?
Model View Controller
정적 - 파일을 그대로 전달해주는거
MVC, 템플릿 - 서버에서 변형해서, html변형해서 내려주는 방식
json 이라는 데이터 포맷으로 클라이언트에게 데이터 전달하는 방식
서버끼리 통신할때에도 json…
main > resources > static
MVC : Model, View, Controller
과거에는 controller와 view가 따로 구분되지 않았었음.
View에서 모든것을 다 했었음. Jsp를 가지고. -> Model1방식
현재는 -> MVC 스타일로 주로 많이 함.
View : 화면을 그리는데 모든 역량을 집중해야 함.
Controller : 내부 처리에 집중. 서버 뒷단, 비즈니스 로직 처리
옛날 : View 파일(jsp파일) 하나 안에 화면도 그리고, DB도 접근하고, 비즈니스 로직도 들어있고… 복잡함.
요즘 : Model, View, Controller로 구분하여 씀.

/Users/minju/Desktop/study/hello-spring/src/main/resources/templates/hello-template.html <p>hello! empty</p>@GetMapping("hello-string)
@ResponseBody
http(통신 프로토콜)에서 header와 body부분으로 나뉘는데 이때 body부분에 return한 내용을 직접 넣어준다.
앞의 템플릿 엔진과의 차이점 : View가 있는것이 아니라 문자 그대로를 전달한다.
템플릿 엔진 : View를 조작하는 방식
API : 데이터를 그대로 내려줌.
http://localhost:8080/hello-string?name=minju 이렇게 하면 화면에 hello minju라고 뜬다. 이 페이지에서 오른쪽클릭해서 소스보기를 누르면 html페이지가 나오는게 아니라 텍스트 hello minju만이 뜬다.
@GetMapping("hello-api)
@ResponseBody
Json : key-value로 이루어진 구조
최근에는 xml보다 json쓰는 추세.
Getters and Setters
자바 빈 규약, 프로퍼티 접근 방식
메서드를 통해 name에 접근.

viewResolver대신에 HttpMessageConverter가 동작StringHttpMessageConverterMappingJackson2HttpMessageConverter참고) 기본 객체 처리는 json으로 함. 하지만 xml 등 다른 방식으로 accept 하길 원하는 경우에는 다른
HttpMessageConverter가 선택된다.