프로그래밍 공부/Servlet과 JSP
-
Servlet Filter프로그래밍 공부/Servlet과 JSP 2021. 5. 31. 15:01
뉴렉처 강사님의 동영상 강의를 정리한 글입니다. 필터 WAS는 사용자로 부터 요청이 들어오게 되면 적절한 소프트웨어를 실행하여 실행 결과를 다시 클라이언트에게 반환한다. 우리는 WAS로 tomcat을 사용하고 있고, tomcat이 실행하는 소프트웨어를 Servlet(서버쪽의 어플리케이션 조각)이라고 부른다. 이러한 Servlet이 실행되고 존재하는 메모리 공간을 Servlet Container라고 한다. WAS는 실행할 Servlet을 Servlet Container에 올려 사용하고 더이상 사용하지 않으면 해당 서블릿을 삭제한다. 한편, 우리는 한글을 사용하고 있기 때문에 인코딩 코드를 해당 서블릿에 모두 작성해주어야 한다. 톰캣의 서블릿 설정 파일에서 인코딩 방식을 설정해 줄 수 있지만, 여러 어플리케..
-
사용자 입력 받기 - POST프로그래밍 공부/Servlet과 JSP 2021. 5. 31. 12:38
뉴렉처 강사님의 동영상 강의를 정리한 글입니다. GET을 이용하여 인자들을 넘겨주는 경우에는 넘겨주는 인자들의 정보가 url에 그대로 드러나게 된다. 이는 보안상 취약하고, 길이가 매우 긴 인자를 넘겨주는 경우에 적합하지 않은 방식이다. 이때 POST를 이용한다. 제목: 내용: form 태그에 method를 설정하지 않으면 기본적으로 get 메서드로 요청한다. method를 post로 설정하고 실행하면 전과 같은 기능을 수행하지만, url에 쿼리 스트링이 없는 것을 확인할 수 있다. 혹시 한글이 깨진다면, 아래 설정을 추가하자. req.setCharacterEncoding("UTF-8");
-
사용자 입력 받기 - GET 요청과 쿼리 스트링프로그래밍 공부/Servlet과 JSP 2021. 5. 31. 11:40
뉴렉처 강사님의 동영상 강의를 정리한 글입니다. 클라이언트가 서버에 요청하는 것은 보통 "http://localhost/hello"와 같은 문서이다. 문서를 요청할 때 "http://localhost/hello?cnt=3" 과 같이 인자를 함께 전달할 수 있다. 이를 쿼리 스트링이라고 한다. 쿼리 스트링은 request 객체를 통해 받아올 수 있다. Nana.java int cnt = Integer.parseInt(req.getParameter("cnt")); for(int i=0;i
-
Servlet 출력 형식의 이해프로그래밍 공부/Servlet과 JSP 2021. 5. 31. 10:53
res.setCharacterEncoding("UTF-8"); res.setContentType("text/html; charset=UTF-8"); 뉴렉처 강사님의 동영상 강의를 정리한 글입니다. @WebServlet("/hi") public class Nana extends HttpServlet{ @Override protected void service(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { PrintWriter out = res.getWriter(); for(int i=0;i
-
Annotation을 이용하여 서블릿 매핑하기프로그래밍 공부/Servlet과 JSP 2021. 5. 31. 10:29
뉴렉처 강사님의 동영상 강의를 정리한 글입니다. Annotation : 클래스나 메서드에 붙여지는 주석 - 일반 주석과 다르게 컴파일러 과정에서도 사라지지 않아(사라지게 할 수도 있다.. 옵션!) 객체를 사용할 때 주석 정보를 꺼내어 활용할 수 있다. - 서블릿 3.0 이상에서 어노테이션을 사용한 서블릿 매핑이 가능하게 되었다. Annotaion을 이용하여 서블릿 매핑을 하는 경우엔 web.xml의 metadata-complete를 false로 설정해주어야 한다! true로 설정되어 있으면 annotaion 정보를 읽지 않게 된다. Nana.java @WebServlet("/hi") public class Nana extends HttpServlet{ @Override protected void serv..
-
이클립스를 이용한 서블릿 프로그래밍(xml 파일을 이용한 서블릿 매핑)프로그래밍 공부/Servlet과 JSP 2021. 5. 31. 10:15
뉴렉처 강사님의 동영상 강의를 정리한 글입니다. 웹 프로젝트 생성하기 이클립스에서 Dynamic Web Project를 생성합니다. Taget runtime에 설치한 톰캣 버전을 클릭하여 넣어줍니다. 넣을 때 톰캣 설치 경로를 입력해야 합니다. 디렉토리 경로에 맞게 Nana.java, index.html, web.xml 파일을 추가합니다. Nana.java package com.newlecture.web; import java.io.IOException; import java.io.PrintWriter; import jakarta.servlet.ServletException; import jakarta.servlet.http.HttpServlet; import jakarta.servlet.http.Htt..
-
Servlet 프로그램 만들기프로그래밍 공부/Servlet과 JSP 2021. 5. 18. 22:27
뉴렉처 강사님의 동영상 강의를 정리한 글입니다. Servlet 서버 어플리케이션을 만들기 위한 것. 서버 어플리케이션은 기능별로 코드나 나뉘어 있다. -> 모든 기능이 함께 쓰이는 것이 아닌 필요에 따라 쓰이는 기능이 다르기 때문이다. 자바에서 main 함수를 생성하여 코드를 동작하듯, servlet에서 service 함수를 생성하여 기능을 동작하도록 한다. Servlet은 WAS에 의해 load가 되고 실행된다. 클래스 명은 상관없지만, 약속되어 있는 인터페이스, 추상클래스 명에 따라 서블릿을 참조하게 된다. (ex. HttpServlet) 웹 서버와 WAS는 URL과 매핑된 Servlet 코드를 찾아 실행해주는 역할을 한다. 따라서 사용자가 Servlet class를 요청하는 것이 아니라 url을 통..