본문 바로가기
반응형

Develop/Spring+JPA59

[스프링 MVC] 뷰 리졸버 지난 번에 만들었던 OldController를 수정해서 뷰 리졸버의 작동을 살펴보자. ( 프로젝트 전체: https://github.com/yeon-06/inflearnSpring/tree/master/mvc1 ) OldController @Component("/springmvc/old-controller") public class OldController implements Controller{ @Override public ModelAndView handleRequest(HttpServletRequest req, HttpServletResponse res) throws Exception { System.out.println("OldController.handleRequest"); return new .. 2021. 5. 26.
[스프링 MVC] 핸들러 매핑, 핸들러 어댑터 핸들러 매핑과 핸들러 어댑터가 어떤 것들이 어떻게 사용되는지 확인해보자. Controller 인터페이스와 HttpRequestHandler 핸들러(컨트롤러)를 통해 예시를 들겠다. Controller 인터페이스 과거 Spring에서 사용했던 인터페이스 @Controller 어노테이션과는 전혀 다름 public interface Controller { ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception; } 지난 게시글에서 살펴봤던 스프링 MVC 구조를 다시 살펴보자. (글 순서: https://github.com/yeon-06/inflearnSpring/tree/master/.. 2021. 5. 24.
[스프링 MVC] 스프링 MVC 구조, DispatcherServlet 목차 1. 기존 프로젝트의 구조 2. 스프링 MVC 구조 3. DispatcherServlet 1. 기존 프로젝트 구조 여태껏 만든 프로젝트의 구조를 한번 정리해보자. ( 프로젝트는 https://github.com/yeon-06/inflearnSpring/tree/master/mvc1 참조) 핸들러 조회: Handler 매핑을 통해 요청 url에 매핑된 핸들러(컨트롤러) 조회 핸들러 어댑터 조회: 핸들러를 처리할 수 있는 핸들러 어댑터 조회 핸들러 어댑터 실행: handler(handler) 핸들러 실행: 핸들러 어댑터가 실제 핸들러 실행 ModelView 반환: 핸들러 어댑터가 핸들러의 반환 정보를 ModelView 형태로 변환해서 반환 viewResolver 호출 MyView 반환: viewReso.. 2021. 5. 24.
[Spring] Path with "WEB-INF" or "META-INF" 에러 Path with "WEB-INF" or "META-INF" 에러 에러 코드 전문 ▼ 더보기 2021-05-20 16:35:32.017 WARN 8656 --- [nio-8080-exec-2] o.s.w.s.r.ResourceHttpRequestHandler : Path with "WEB-INF" or "META-INF": [WEB-INF/views/new-form.jsp] 2021-05-20 16:35:32.045 DEBUG 8656 --- [nio-8080-exec-2] o.a.coyote.http11.Http11InputBuffer : Before fill(): parsingHeader: [true], parsingRequestLine: [true], parsingRequestLinePhase: [.. 2021. 5. 21.
[Spring] Initializr로 스프링 부트 기반 프로젝트 생성 Spring Initializr 링크> start.spring.io/ Project 빌드 관리 툴 선택 (Maven, Gradle) Ant -> Maven -> Gradle 순으로 Gradle이 가장 최근에 나왔다. Language 언어 설정 (Java, Kotlin, Groovy) Spring Boot 스프링 부트 버전 설정 SNAPSHOT: 아직 개발 단계 기타 버전에 대해: stackoverflow.com/questions/2107484/what-is-the-difference-between-springs-ga-rc-and-m2-releases Project MetaData Group: 보통 기업의 도메인 명 Artifact: 빌드 결과물 이름 Name: 이름 Description: 프로젝트 설명 .. 2021. 3. 10.
[Spring] @JsonProperty json을 자바 객체로 역직렬화 할때, json에 담긴 key이름과 변수명이 다른 문제로 @JsonProperty를 많이 사용하는 것 같다. 예를 들면, 아래와 같은 Blog 클래스가 있다고 하자. public class Blog { private String userName; private String blogLink; public void setUserName(String userName) { this.userName = userName; } public String getUserName() { return userName; } public void setBlogLink(String blogLink) { this.blogLink = blogLink; } public String getBlogLink(.. 2021. 3. 8.
[Spring] HiddenHttpMethodFilter web.xml을 살펴보던 와중 의문을 갖게 한 문제의 코드... httpMethodFilter org.springframework.web.filter.HiddenHttpMethodFilter httpMethodFilter dispatcher ( dispatcher는 org.springframework.web.servlet.DispatcherServlet를 등록한 서블릿의 이름이다. 이 글에서 중요한 사항이 아니라 생략했다. ) HiddenHttpMethodFilter가 뭘까? REST 방식을 사용하다 보면 GET, POST, PUT, PATCH, DELETE를 이용한다. 하지만 PUT, PATCH, DELETE 방식의 메소드를 지원하지 않는 브라우저가 있을 수 있다. 이럴 때 해결책으로 브라우저에서는 P.. 2021. 2. 4.
[Spring] web.xml 분석하기 , springTestProject my spring test project~~~~ : 파일의 title. 보통 프로젝트명을 추가해 사용 : 어떤 프로젝트를 위한 배포 서술자인지 기록 주석과 비슷한 기능을 한다고 생각하면 된다. fileName file:///${SMART_HOME}/conf/applicationcontext-*.xml 사용자가 직접 컨트롤하는 XML 파일 지정 org.springframework.web.context.ContextLoaderListener 스프링 설정 정보 읽기 dispatcher org.springframework.web.servlet.DispatcherServlet contextConfigLocation /WEB-INF/controller-*.xml 2 servlet.. 2021. 2. 3.
[Spring] Interceptor 인터셉터 인터셉터는 말 그대로 중간에서 가로채는 일을 한다. 컨트롤러에 들어오는 요청 HttpRequest와 컨트롤러가 응답하는 HttpResponse를 가로챈다. Filter와 차이점 JSP의 Filter와 유사한 동작을 한다. 둘 다 Controller로 들어가는 요청을 가로채 특정 작업을 하기 위한 용도로 사용되지만, 여러 차이점이 있다. Filter Interceptor 접근 범위 같은 웹 어플리케이션 스프링 내의 모든 객체 호출 시점 DispatcherServlet 실행 전 DispatcherServlet 실행 후 설정 위치 web.xml spring-servlet.xml 구현 방식 web.xml 설정 spring-servlet.xml 설정 및 메소드 구현 제공 J2EE 표준 스펙 Spring .. 2021. 1. 29.
반응형