본 포스팅은 인프런 - 스프링 MVC 2편을 강의를 바탕으로 공부하고 정리한 글입니다. 타임리프는 스프링 부트에서 공식적으로 지원하는 뷰(View) 템플릿이다.JSP와 달리 Thymeleaf 문서는 html 확장자를 갖고 있어 JSP처럼 Servlet이 문서를 표현하는 방식이 아니기 때문에 서버 없이도 동작이 가능하다.이번 포스팅에서는 타임리프 뷰 템플릿 사용법에 대해 간단히 알아볼 예정이다. 스프링 부트 설정👉🏻 타임리프 라이브러리 추가📂 build.gradledependencies { implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'}스프링 부트가 자동으로 ThymeleafViewResolver와 필요한 스프링 빈들을..
SpringMVC
본 포스팅은 인프런 - 스프링 MVC 1편을 강의를 바탕으로 공부하고 정리한 글입니다. 📢 본 포스팅에 앞서 예제를 위한 프로젝트를 생성하자.더보기더보기📌 스프링 프로젝트 생성스프링 부트 스타터를 이용해서 스프링 프로젝트를 생성해주도록 하자.프로젝트 선택Project: GradleProject Language: JavaSpring Boot: 2.6.x (정식버전 중 가장 최신 버전 선택)Project MetadataGroup: helloArtifact: item-serviceName: item-servicePackage name: hello.item-servicePackaging: JarJava: 11Dependencies : Spring Web, Thymeleaf, Lombok📌 실행 확인인텔리제..
본 포스팅은 인프런 - 스프링 MVC 1편을 강의를 바탕으로 공부하고 정리한 글입니다. 로깅운영 시스템에서는 System.out.println() 같은 시스템 콘솔을 사용해 필요한 정보를 출력하지 않고, 별도의 로깅 라이브러리를 사용해 로그를 출력한다. SLF4J, Logback스프링 부트 라이브러리를 사용하면 스프링 부트 로깅 라이브러리(spring-boot-starter-logging)가 함께 포함되는데, 이 라이브러리는 기본적으로 내부에 다음 로깅 라이브러리를 사용한다.SLF4J : http://www.slf4j.orgLogback : http://logback.qos.ch로그 라이브러리는 Logback, Log4J, Log4J2 등등 수 많은 라이브러리가 있는데, 그것을 통합해서 인터페이스로 제공..
본 포스팅은 인프런 - 스프링 MVC 1편을 강의를 바탕으로 공부하고 정리한 글입니다. 📢 본 포스팅에 앞서 예제를 위한 프로젝트를 생성하자.더보기더보기📌 스프링 프로젝트 생성스프링 부트 스타터를 이용해서 스프링 프로젝트를 생성해주도록 하자.프로젝트 선택Project: GradleProject Language: JavaSpring Boot: 2.6.x (정식버전 중 가장 최신 버전 선택)Project MetadataGroup: helloArtifact: springmvcName: springmvcPackage name: hello.springmvcPackaging: Jar (주의!)Java: 11Dependencies : Spring Web, Thymeleaf, Lombok📌 실행 확인인텔리제이로 ..
본 포스팅은 인프런 - 스프링 MVC 1편을 강의를 바탕으로 공부하고 정리한 글입니다. 스프링 MVC - 전체 구조이전 포스팅에서 직접 만들어본 MVC 프레임워크의 구조와 스프링 MVC 구조를 비교해보자. 직접 만든 MVC 프레임워크 구조스프링 MVC 구조 대부분의 구조가 거의 똑같지만, 다음과 같이 명칭이 조금 달라졌다.직접 만든 프레임 워크 ➡ 스프링 MVC 비교FrontController ➡ DispatcherServlethandlerMappingMap ➡ HandlerMappingMyHandlerAdapter ➡ HandlerAdapterModelView ➡ ModleAndViewviewResolver ➡ ViewResolverMyView ➡ View DispatcherServlet스프링 MVC도..
본 포스팅은 인프런 - 스프링 MVC 1편을 강의를 바탕으로 공부하고 정리한 글입니다. 이전 포스팅에서 MVC 패턴의 한계점인 공통 처리가 힘들다는 부분을 해결하기 위해 프론트 컨트롤러 패턴을 사용한다고 했다.프론트 컨틀롤러 패턴이 무엇인지 알아보고 코드에 적용해보자. 프론트 컨트롤러 패턴프론트 컨트롤러 서블릿 하나로 클라이언트의 요청을 받는다.프론트 컨트롤러가 요청에 맞는 컨트롤러를 찾아서 호출해주는 역할을 한다.프론트 컨트롤러를 통해 요청을 받는 입구를 하나로 만들어 공통 처리가 가능하다.여러 컨트롤러에 산재되있던 공통 처리 코드를 프론트 컨트롤러 하나로 모을 수 있다.프론트 컨트롤러를 제외한 나머지 컨트롤러는 서블릿을 사용하지 않아도 된다. 스프링 웹 MVC의 DispatcherServlet도 Fr..

본 포스팅은 인프런 - 스프링 MVC 1편을 강의를 바탕으로 공부하고 정리한 글입니다. 간단한 회원 웹 애플리케이션 예제에 대해 우선 서블릿으로 만들어 본 뒤, 서블릿을 사용했을 때 불편한 점을 JSP로 개선해보고,JSP를 사용했을 때 불편한 점을 MVC 패턴으로 개선해보며 어떻게 발전해나갔는지 알아보자. 회원관리 웹 애플리케이션 만들기요구사항회원 정보(도메인)이름 : username나이 : age기능회원 저장 기능회원 목록 조회 기능 뼈대 코드👉🏻 회원 도메인 모델더보기📁 domain/member/Member@Getter @Setterpublic class Member { private Long id; // 식별자 private String username; // 이름 privat..
본 포스팅은 인프런 - 스프링 MVC 1편을 강의를 바탕으로 공부하고 정리한 글입니다. 📢 본 포스팅에 앞서 예제를 위한 프로젝트를 생성하자.더보기더보기📌 스프링 프로젝트 생성스프링 부트 스타터를 이용해서 스프링 프로젝트를 생성해주도록 하자.프로젝트 선택Project: GradleProject Language: JavaSpring Boot: 2.6.x (정식버전 중 가장 최신 버전 선택)Project MetadataGroup: helloArtifact: servletName: servletPackage name: hello.servletPackaging: War (JSP를 실행하기 위해 선택)Java: 11DependenciesSpring WebLombok📌 실행 확인인텔리제이로 프로젝트를 Open..