백엔드/SERVLET & JSP
-
Spring 예제#2 ( Adapter Handler, FrontController )백엔드/SERVLET & JSP 2024. 8. 29. 16:15
Adapter handlerAdapter Handler 사용이유한가지 로직을 실행시키는데에 있어, A/B 경우를 골라야한다면 어떻게 처리해야할지에 대한 의문frontcontroller 의 경우 한가지 방식의 컨트롤러 인터페이스만 사용 가능 Adapter Handler 도식화 수정해야하는 부분FrontController class에서 Controller를 객체 그대로 받는 경우가 수정되어야한다(Before)private Map controllerV3Map = new HashMap();(After)MyHandlerAdapter adapter = getHandlerAdapter(handler); ModelView mv = adapter.handle(request, response, handler); Ada..
-
Spring 예제#1 ( +Servlet, JSP, FrontController )백엔드/SERVLET & JSP 2024. 8. 29. 13:35
회원 생성 및 조회 예제 FrontController 목적각각의 Controller마다 공통적인 부분을 처리 및 Servlet의 종속된 코드 수정 필요문제)jsp 페이지 경로 (중복되는 부분)dispatcher.forward의 반복Controller에서 잘 사용되지 않는, HttpServletRequest + HttpServletResponse (Servlet 종속)Model , View, Controller 분리된 코드의 필요성View의 영역에서도 jsp의 forward을 공통적으로 계속해서 처리해줘야했음jsp 이름의 공통적인 부분을 viewResolver()를 이용하여 처리MyView클래스를 이용하여 forward 하는 부분을 공통적으로 처리할 수 있도록 수정HttpServletRequest 및 Ht..
-
MVC 패턴 ( Servlet + JSP )백엔드/SERVLET & JSP 2024. 8. 28. 18:14
MVC 패턴 적용 MVC 패턴 적용Servlet"컨트롤러" 로서 사용Client 요청 처리핵심 비즈니스 담당/WEB-INF 하위에 jsp를 두어서 서버 내부에서 리다이렉트 사용 (로직 숨기기)JSP View의 목적으로 사용Servlet의 결과 내용을 토대로 웹 페이지 렌더링ModelServlet과 JSP의 중간층에 위치Servlet의 데이터 내용을 저장했다가, JSP에 전달해주는 역할Model을 사용함으로써, JSP는 비즈니스 로직을 몰라도 된다 MVC 패턴 적용 예제 ( 회원 관리 예제 )Servlet -> ControllerJSP -> ViewHttpServletRequest , HttpServletResponse -> ModelHttpServletRequest와 HttpServletResponse..
-
순수 JSP 예제백엔드/SERVLET & JSP 2024. 8. 28. 17:40
JSP 회원 관리JSP 회원 등록 폼new-form.jsp name: age: 전송 회원 저장save.jspclass Member{ private Long id; private String name; private int age; public Member(String name, int age) { this.name = name; this.age = age; } public void setId(Long id) { this.id = id;} public Long getId () { return this.id; } public void setNam..
-
JSP 이론 및 기초 문법백엔드/SERVLET & JSP 2024. 8. 28. 17:11
1. JSP ?2. JSP 구성 및 동작3. JSP 문법JSP ?JAVA Server Page서버 사이드 템플릿 엔진JAVA언어를 사용할 수 있다 JSP 구성 및 동작구성CLIENT Server (+ JSP)동작Client 요청 (Request)Server 해당 JSP 찾기JSP file을 java 코드로 변환 ( .jsp -> .java )java 코드를 컴파일 ( .java -> .class )class file을 수행해서 Server에 내용 전달Server는 해당 데이터를 이용해서 html을 구성Client에 응답 (html 전달)동작에서 중요한 점Jsp -> Java 코드 변환 (servlet 코드로 변환) -> (컴파일) servlet 클래스HttpServlet 상속Request, Resp..
-
Servlet 예제 ( 회원 저장 / 조회 )백엔드/SERVLET & JSP 2024. 8. 27. 22:55
1. 구성2. 구현3. 정리 구성멤버 객체 구현 이름 , 나이멤버 저장메모리 저장멤버 조회전체 조회특정 id 조회 구현java 클래스내부에 print 객체와 함께 동적 html을 생성한다html 코드로 인해, 코드가 길어지고 가독성이 떨어진다 (유지보수의 어려움)public class Member{ private Long id; private String username; private int age; public Member(){ } public Member(String username, int age) { this.username = username; this.age = age; } publi..
-
Servlet 응답 처리백엔드/SERVLET & JSP 2024. 8. 27. 16:23
ServletResponse 기본 사용법기본적으로 response 헤더 설정 : setHeader("[field Name]", "[value]")Response 상태 코드 : setStatus("[HTTP 정의 상수]")Headet 편의 메서드 : ContentType, Cookie, Redirect@WebServlet(urlPatterns="/main")public class ResponseTest extends HttpServlet{ @Override protected void service( HttpServletRequest request, HttpServletResponse response) throws ServletExceptio, IOException { ..
-
Servlet 요청 데이터 처리백엔드/SERVLET & JSP 2024. 8. 27. 15:55
1. 쿼리 파라미터 (GET)2. HTML Form (POST)3. HTTP message body 쿼리 파라미터http://localhost:8080/main?name=test&count=2message body에 내용 없이, URL의 ?[query] 부분에 추가되어 데이터가 전달됨GET 메서드에서 사용검색 / 필터 / 페이징에서 많이 사용하는 방식@WebServlet(urlPatterns = "/main")public class RequestGet extends HttpServlet{ @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletExcepti..