Server Development/Serlvet (10) 썸네일형 리스트형 Servlet - Connection with DB Servlet을 사용할 때, DB는 어떻게 연결을 했을까? 다양한 방법으로 소개를 하고 추후 이를 토대로 발전사를 정리해보고자 한다. 앞으로 다뤄볼 내용의 구조는 다음과 같다. servletController - memberDAO - memberVO servletController : 요청에 대한 처리를 할 Servlet memberDAO : DB 처리할 Servlet memberVO : DB와 관련된 객체를 담을 Servlet // Controller protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // MemberDAO 객체 선언 Membe.. Servlet - Cookie And Session 이 파트는 크게 3가지로 분류 가능하다. - Persistence Cookie : client의 컴퓨터의 저장 - Session Cookie : client가 사용하는 브라우저에 저장 - Session : 서버의 메모리에 저장 과정 Client -> (접속) -> 서버 -> (쿠키생성, 전송) -> Client 1. Persistence Cookie 사용 용도) 로그인 유무, 팝업창 제한 등 사용) 쿠키 객체 생성 후, 지속시간을 설정합니다. 이후 response에 담아 전달합니다. Cookie c = new Cookie("id", "abc")); c.setMaxAge(24*60*60); // persistense cookie response.addCookie(c); 2. Session Cookie 사용.. Servlet - ServletContext 앞서 바인딩 파트에서 ServletContext의 바인딩 기능에 대해서 다뤄보았다. ServletContext에는 다양한 기능이 있어 더 알아보려고 한다. 1) Binding 2) 매개변수 설정 기능 3) 파일 입출력 기능 파일 입출력 기능은 생략하고 매개변수 설정기능에 대해서 알아본다. 2) 매개 변수 설정 기능 아래와 같이 xml 파일에 설정하고 싶은 정보를 설정한다. // web.xml menu_member 회원정보 회원조회 회원수정 회원삭제 menu_order 주문조회 주문등록 주문수정 주문취소 Servlet에서는 위에서 설정된 정보를 불러온다. 이때, 이름을 맞춰주는 것이 중요하다. // Servlet ServletContext context = getServletContext(); String.. Servlet - Binding 바인딩 - 정보를 객체에 저장하여 포워딩하거나 사용하기 위한 과정을 의미한다. 그 전 포스트에서 Forwarding에 대해서 알아보았다. 데이터를 다른 서블릿으로 전달을 할때 항상 바인딩이 필요하다. 방법) 1. request.setAttribute("이름", "값"); 2. ServletContext 사용 1. request.setAttribute("이름", "값"); 밑에를 살펴보면, firstServlet에 요청 request가 들어왔다고 가정해보자. 이때, 이 request에 "address" 속성에 "천안시"라는 데이터를 삽입한다. 이 후, 포워딩에 필요한 dispatch 객체 생성후 이동할 서블릿을 설정한다. 다음 서블릿에 데이터를 전달한다. // Servlet1 request.setAttri.. Servlet - Forwarding Forwarding이란 한 서블릿에서 다른 서블릿으로 정보를 전달하는 방식이다. 종류 - Redirect - Refresh - Location - Dispatch 여기서 Dispatch만 알아보려고 한다. 이유는 나머지 방식은 다른 서블릿에 전달하기 위해 client를 거쳐 다음 서블릿으로 전달된다. (Client 요청 -> Servlet1 -> Clint -> Servlet2) Dispatch - Client를 거치지 않고 원하는 데이터를 다른 서블릿으로 전달하는 방식 - 본질적으로는 get 방식으로 전달, 따라서 다음 서블릿에서는 doGet 메서드를 이용해 정보를 전달받는다. 간단하게 처음에 first servlet으로 전달받은 request, response를 그대로 second servlet으로 .. Servlet - Get, Post Servlet을 이용할때 사용되는 GET, POST 방식에 대해 알아보려고 한다. 우선, 공통적으로 GET, POST는 특정 데이터를 서버에 전달한다. 하지만 방식이 조금 다르다. 일반적으로, 많은 데이터 - POST 이용, 적은 데이터 - GET 이용 이라고 생각하면 쉽다. ex) POST 현재, view에서 로그인 정보를 서버에 보낸다고 가정해보면 form 태그 안에 method=post 지정 후 action을 통해 전달하고자 하는 servlet 매핑명을 써주면 해당 form이 서버에 전달된다. 아이디 : 비밀번호 : ex) GET 아래와 같이 주소를 이용해 아이디와 비번을 해당 서버에, 서블릿에 전달하는 방식이다. localhost:8090/Project/login?id="aaa"&pwd="1234.. Servlet - API API 의 정의 - 쉽게 말해, 데이터를 전송하는 수단이라고 볼 수 있다 - 또 웹에서 한가지의 기능을 의미한다. - 보통 웹에서는 클라이언트와 서버간 통신 수단이라고 볼 수 있고 당연스럽게 요청, 응답으로 구성되었다. - 종류 : Soup(xml을 이용한 통신), Rpc, WebSocket(json 사용한 통신), Rest API, text 이용 등이 있다. 예를들어, Kakao talk을 통한 인증 API를 구현하고자한다면 client -> 로그인 요청 -> 서버에서 카카오톡에 정보 전달 -> 정보에 맞는 API(데이터 서버로 전달) -> 서버에서 로그인 처리 이때, 카카오톡의 오픈 API를 이용한다고 한다. 현재 이 Servlet Part에서는 JSP등을 사용하고 있지 않다는 가정하에 Servlet.. Servlet - Mapping Servlet을 사용한 Web 제작에서 Mapping은 어떻게 할까? 1) web.xml 에 을 이용한다. 2) 애너테이션을 이용한다. web.xml 이용 - servlet 태그 안 servlet-class 태그로 지정할 서블릿 저장 - servlet 태그 안 servlet-name 태그로 서블릿의 이름 설정 - serlvet-mapping 태그 안 servlet-name 태그로 위에서 지정한 서블릿의 이름 설정 - servlet-mapping 태그 안 url-pattern으로 url로부터 오는 요청명 설정 aaa sec01.ex01.FirstServlet aaa /first 애너테이션(annotation) 이용 - 지정할 Servlet 클래스 위에 url 매핑명 지정 @WebServlet("/first.. 이전 1 2 다음