전체 글(129)
-
로그
로그? 로깅?말 그대로 기록이다. 로깅은 기록을 남기는 행위이다. 목적로깅은 왜 할까?유지보수 : 로그를 통해 앱 상태를 보다 빠르게 파악. 해결할 수 있다모니터링 : 비정상적인 동작이 로그라는 형태로 가시화 된다. 찾기 쉬워진다.디버깅 : 개발 중 발생한 오류 원인 추적이 쉬워진다. 로깅 레벨로깅 레벨은 크게 아래와 같이 나뉜다.trace : 가장 상세한 로그. 이 기록이 어디서 어떤 동작으로 통해 이루어졌고, 이 동작을 위해 어떤 내부 동작이 수행됐는지 파악할 수 있다. 정보량이 너무 크고 가시성이 떨어지는 것이 단점이다.debug : 디버깅 목적으로 사용된다.info : 시스템의 일반적 동작을 기록한다. 운영 단계에 사용한다.warn : 말 그대로. 주의가 필요함을 알려준다. 시스템은 돌아간다.er..
2024.08.27 -
HttpServletRequest - sendError()
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { String requestURI = req.getRequestURI(); ControllerV2 controller = controllerMap.get(requestURI); if (controller == null) { resp.sendError(HttpServletResponse.SC_NOT_FOUND); } MyView view = controller.process(req, resp); view.render(req, resp);} 상황이상한 uri로 요청이 ..
2024.08.21 -
jsp - 올바른 경로의 jsp를 찾지 못함.
로그 내용2024-08-21T18:40:59.170+09:00 WARN 22444 --- [_basic_2_servlet] [nio-8080-exec-1] o.s.w.s.r.ResourceHttpRequestHandler : "Path with "WEB-INF" or "META-INF": [servlet-mvc/members/WEB-INF/views/new-form.jsp]" 상황올바른 경로의 jsp 파일에 접근하지 못함. 시도1. 입력한 Path - 문제 없음.2. 물리적 경로 - WEB-INF 등의 디렉토리, 파일명. 문제 없음.3. WEB-INF 관련 조사 - 문제 없음.. 알게된 것하나. 'WEB-INF' 하위 디렉토리에 있는 jsp 파일은 dispatcherservlet을 통해서만 접근 가능함..
2024.08.21 -
MVC 패턴 - FrontController?
MVC패턴?Model, View, Controller 의 3계층으로 나눈 패턴이다. Model - 상태, 동작을 수행하고 데이터 전송, 주요 임무로 하는 계층. 컨트롤러에서 담고, view에서 참조한다.View - 클라이언트에게 컨텐츠를 시각화해주는 계층Controller - 흐름 제어, 수문장 역할을 해주는 계층 이다. 적절한 Model, View를 선택한다. 계층을 나눈 이유?1. 하나로 뭉쳐두면, 역할도 책임도 불분명하다.2. 유지보수가 정말 복잡하고 번거롭고 짜증난다. mvc 패턴은 크게 1,2로 나뉜다. MVC 패턴1컨트롤러가 클라이언트에서 받아온 데이터를 Model에 담고View 에서 해당 Model 을 참조하여 시각화하여,클라이언트에게 응답하는 패턴이다. 요청을 처리하고 전송하는 Model..
2024.08.21 -
Provider
Spring bean Scope 중, web 에 사용되는 Scope (request, session 등)가 존재한다. request 의 경우, 클라이언트에서 요청이 들어와서 response 될 때 까지의 라이프 사이클을 갖는다. 그러나, 프로그램 실행 후 스프링 빈을 생성, 초기화하는 단계에서 request Scope는 존재할 수 없다. 요청이 들어와야 생성되기 때문이다. 이에 따라, bean 초기화 시점이 어긋나 에러가 발생한다. 이를 해결하기 위해서는, 해당 bean 이 생성 시기를 지연시켜야 한다. Provider 는 제네릭 클래스로, 개발자가 입력한 매개타입 를 검색할 수 있다.이 프로바이더를 request 스코프 빈 wrapper 로 사용하고, bean으로 취급한 후, 사용 시점에 getObej..
2024.08.19 -
URI
URI(Uniform Resource Identifier)형식이 정해진 자원 식별자 URI는 URL(Locator)과 URN(name)을 포함하는 개념이다.URL은 위치를, URN은 이름을 통해 식별한다.shceme - 프로토콜이 들어간다. URL에 적용되는 약속과 규칙이다.userinfo - 도메인host 사에 등록된 회원의 정보이다. 이름이나 비번 같은? 잘 사용하지 않는다.host - 도메인 주인port - http , https 등 자주 쓰이는 놈들은 생략 가능하다.path - 해당 주소지의 상세주소 쯤으로 생각하면 된다. 계층적 구조를 띄고 있다. ex) ㅁㅁ아파트 102동 10211호query - 해당 주소지에 전달해야할 의미 있는 내용 및 키워드.- path 바로 뒤에 ? 를 붙이면서 시작된..
2024.08.12