.jsp 에는 내장객체로 out 이 있었는데, .java 에는 없어서 객체를 만들어 줘야 합니다.
응답하는 거니깐,
PrintWriter out=response.getWriter();
하고 나서 out 을 사용해 줍니다
Test1.java Servlet을 만들면 web.xml 에 url mapping 으로 /Test 가 만들어 집니다.
submit 을 누르면 현재있는 프로젝트를 가져오고 /Test1 을 찾습니다.
만약 /Test1 만 action 의 경로에 넣는다면, localhost:8090/Test1 로 합니다. 왜냐하면 / <- 가 webapps 입니다~ 프로젝트들은 webapps 안에 있슴돠
/Test1 하면 webapps/Test1 이 되니, 프로젝트 명이 없죠~, 그래서 404 가 나옵니다.
url 에 패러미터값으로 a = 100 b= 200
으로 던지면
request.getParameter("a") 랑 "b"를 servlet에서 받아서 출력할 수 있습니다.
띄어쓰기 하려고 br을 적으면
java 단이라서 response.setContentType("text/html; charset=utf-8") 을 적어서 html을 이용할 거라고 알려줘야 합니다
web.xml 에 init-param 에 이름이랑 값을 저장하면
Servlet에서 받아 올수 있어요
이름은 config 인데 객체라서 어딘가에서 가져와야겠죠?
톰캣이 실행될때 init 이 실행되는데 , init 메소드 안에서 config를 이용합니다, 오버라이딩 할때 init 에 ServletConfing config 를 선택합니다
config.getInitParameter("abc") 가 intit 메소드에 있어요,
public void init(ServletConfig config) throws ServletException {
// TODO Auto-generated method stub
super.init(config);
System.out.println(config.getInitParameter("abc"));
}
요 로직인데, web.xml 에 load-on-startup이 양수 되어야 톰캣 실행될때 실행됩니다~
이제 웹 브라우저에 뿌려 볼게요
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
ServletConfig config = this.getServletConfig();
System.out.println(config.getInitParameter("abc"));
}
web.xml 에서 받아온 abc의 값을 웹 브라우저에 뿌릴려면 url 요청하면 실행되는 doGet에 넣었어요, 근데 config 는 init 메소드와 달리 doGet에선
없으니깐 객체 생성을 해야 합니다~
context는 배포를 하면 server.xml 에 생겨집니다.
context-param은 application 으로 가져올 수 있어요
public void init(ServletConfig config) throws ServletException {
// TODO Auto-generated method stub
super.init(config);
System.out.println(config.getInitParameter("abc"));
ServletContext application = this.getServletContext();
}
application 은 .jsp 와 달리 내장 객체가 아니라서 만들어 줘야 합니다.
application.getInitParameter 로 하면 context에 설정된 param 값을 구할 수 있어요~
데이터를 .jsp에 뿌리는 방법을 알아볼게요
do