이전 글에서는 Application 객체에 대해서 다루었다. 이번 글에서는 Session객체에 대해서 알아보자! //Calc2.java package com.newlecture.web; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSer..
Application을 이용한 객체 값 저장 방법에 대해서 알아보자! 서블릿 콘텍스트 ServletContext라는 것을 이용해서 저장한다. 서블릿 콘텍스트는 여러 서 블릿 또는 자신의 서블릿에서 값을 임시로 저장하는 공간을 말한다. 그리고 거기에 저장하고, 가져와서 그 객체들을 사용할 수 있게 한다. ServletContext application = request.getServletContext(); -> ServletContext 변수 application을 만든다. 1. 저장: application.setAttribute(name, object); -> application에 name으로 object를 저장한다. 2. 가져오기: request.getAttribute(); -> application..
두 개의 값을 입력받아서 더하는 프로그램을 만든 적이 있다. 이번에는 여러 개의 값을 받아서 만들어보도록 하자! 자~ 이렇게 만들어서 전달하면 될까? 혹시 10개가 되면 10개를 모두 이런 식으로 수정해야 하나? 그리고 서블릿에서는 이 전달받는 값들을 모두 수정해줘야 할까? 이번에 그렇게 하지 않고 해결하는 방법에 대해서 알아보겠다. 동일한 name속성(같은 키워드)으로 값을 전달할 경우 값이 중복되는 것이 아니라 배열로 전달하게 되어있다! 숫자만 입력하세요 결과? 모든 name을 num으로 통일! 그러면 서블릿에서는 어떻게 받아야 할까? 하나씩 차례로 받아서 배열에 저장하면 된다! //Add2.java package com.newlecture.web; import java.io.IOException; ..
Submit버튼이 한 개일 경우 form 태그의 action을 참조해서 웹 서블릿을 호출한다. 하지만 이번에는 여러 개의 Submit버튼을 사용한다면 모두 동일한 Submit을 호출하게 된다. Submit코드가 한개일 경우에 대해서 한번 보자! F12 개발자도구의 Newtwork를 통해서 버튼을 눌렀을 때 전달되는 값을 확인해보자. *참고: 웹브라우저에서 F12를 누르면 아래의 화면이 나오고, newtwork를 누르면 전달되는 내용이 나온다. Form Data의 값을보면 x=1&y=1 이렇게 값이 전달된다. 자 그러면 두개의 Submit이 있을 경우를 통해서 확인해보자! 두 개의 Submit버튼 모두 Add를 호출한다. 즉, 같은 값을 서블릿에 전달하게 된다. 이렇게 빼기를 눌렀지만 Form Data값은..
더하기 프로그램! 프로그램이라고 할 것도 없지만 일단 만들어보자! Add.html 두개의 숫자를 입력 Add.java package com.newlecture.web; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @WebServlet("/Add") public class ..
서블릿 필터 Servlet Filter 란? 그림을 보고 이해해보자! WAS(우리가 사용하는 Tomcat)에서 Servlet(*. java)를 Request 할 때 Reponse 할 때 이 Filter를 통과해야 한다. 이 필터가 있음으로써 WAS에서 설정을 변경하지 않고도 모든 서블릿에 영향을 준다. Servlet Filter는 값을 전달하는 역할도 하고, 접근권한, 인증까지도 설정할 수 있다. 이제 Servlet Filter를 설정하는 두 가지의 방법에 대해서 알아보자! 이번 예제는 Servlet Filter를 통해서 모든 Servlet의 URI인코딩 방식을 UTF-8로 변환하는 것이다. 1번째 방법. 직접 Web.xml코드를 수정해서 만드는 방법이다. 가장 먼저 Noticereg.java에서 인코딩..
전달할 내용이 많지 않을 경우에는 get요청을 사용할 수 있다. 하지만 내용이 많아질 경우에는 어떻게 해야 하나? 예를 들어서 피자가게에서 주문을 할 때 피자 라지 하나 주세요 정도는 get으로 할 수 있다. 그런데 피자 라지고요, 양파는 많이 주시고, 소스는 2배, 페퍼로니도 추가하고, 치즈는 3배로, 크러스트는 반은 고구마, 반은 치즈, 도우는 젤 얇은 걸로 해주시고,,, 누군가 이렇게 주문을 한다면? 서로 불편해진다. 센스 있는 직원이라면 form 줄테니까 여기 적어서 주세요~ 이렇게 할 거다. 이렇게 한 번에 form으로 받는 방법이 POST이다. 자 그러면 코드를 한번 만들어보자! reg.html 파일 생성 제목: 내용: Noticereg.java 파일 생성 package com.newlectu..