반응형

① Java Resources > src > 패키지 안 InputServlet 클래스 / WebContent 안 input.html을 생성합니다.

 

② html을 다음과 같이 작성합니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>여러가지 input 타입 표시 창</title>
</head>
<body>
    <form name="frmInput" method="get" action="input">
        아이디 : <input type="text" name="user_id"><br>
        비밀번호 : <input type="password" name="user_pw"><br>
        
        <input type="checkbox" name="subject" value="java" checked>자바
        <input type="checkbox" name="subject" value="C언어">C언어
        <input type="checkbox" name="subject" value="JSP">JSP
        <input type="checkbox" name="subject" value="안드로이드">안드로이드
        <br>
        <br>
        <input type="submit" value="전송">
        <input type="reset" value="초기화">
    </form>
</body>
</html>
 
 
 
cs

 

③ Servlet을 다음과 같이 작성합니다.

     - 한개씩 전송된 값은 getParameter( )를 이용
     - 하나의 name으로 여러 값을 전송하는 경우 getParameterValues( )를 이용하여 배열 형태로 반환

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
package sec01.ex01;
 
import java.io.IOException;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
 
/**
 * Servlet implementation class InputServlet
 */
@WebServlet("/input")
public class InputServlet extends HttpServlet {
    
 
    /**
     * @see Servlet#init(ServletConfig)
     */
    public void init() throws ServletException {
        System.out.println("init 메서드 호출");
    }
 
    /**
     * @see Servlet#destroy()
     */
    public void destroy() {
        System.out.println("destroy 메서드 호출");
    }
 
    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) 
        throws ServletException, IOException {
        request.setCharacterEncoding("utf-8");
        String user_id = request.getParameter("user_id");
        String user_pw = request.getParameter("user_pw");
        
        System.out.println("아이디 : " + user_id);
        System.out.println("비밀번호 : " + user_pw);
        
        String[] subject = request.getParameterValues("subject");
        for(String str : subject) {
            System.out.println("선택한 과목 : " + str);
        }
    }
 
    /**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response) 
        throws ServletException, IOException {
        // TODO Auto-generated method stub
        doGet(request, response);
    }
 
}
 
cs

 

※ Servlet 매핑 방법은 아래의 링크를 참고해 주세요.

maxtime1004.tistory.com/51

 

[JSP] 서블릿(Servlet) 매핑하기 - 애너테이션

▶ 두번째 방법 - 애너테이션 ① 새로운 Servlet을 생성한 다음 Class name을 작성한다. ② /ThirdServlet을 클릭 후 Edit 을 눌러 /third로 변경한다. ③ 다음 그림과 같이 체크 후 Finish를 클릭한다. ④ 아..

maxtime1004.tistory.com

 

Tomcat을 재실행하고 브라우저에서 input.html을 열고, 데이터를 입력하여 전송 버튼을 클릭합니다.

 

⑤ get 방식으로 파라미터가 넘어가고 console 창을 통해 결과를 확인합니다.

 

 

반응형
반응형

▶ 두번째 방법 - 애너테이션 

 

① 새로운 Servlet을 생성한 다음 Class name을 작성한다.

 

 

② /ThirdServlet을 클릭 후 Edit 을 눌러 /third로 변경한다.

 

③ 다음 그림과 같이 체크 후 Finish를 클릭한다.

 

④ 아래와 같이 코드를 변경해준다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
package sec01.ex01;
 
import java.io.IOException;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
 
/**
 * Servlet implementation class ThirdServlet
 */
@WebServlet("/third")
public class ThirdServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;
 
    /**
     * @see Servlet#init(ServletConfig)
     */
    public void init(ServletConfig config) throws ServletException {
        System.out.println("ThridServlet init 메서드 호출");
    }
 
    /**
     * @see Servlet#destroy()
     */
    public void destroy() {
        System.out.println("ThirdServlet destory 메서드 호출");
 
    }
 
    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) 
        throws ServletException, IOException {
        System.out.println("ThirdServlet doGet 메서드 호출");
        response.getWriter().append("Served at: ").append(request.getContextPath());
    }
 
    /**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        doGet(request, response);
    }
 
}
 
cs

⑤ Tomcat을 재실행하고 브라우저에서 서블릿 매핑 이름으로 요청하고 console 창을 확인합니다.

⑥ 결과

반응형
반응형

▶ 첫번째 방법 - web.xml 

 

① Java Resources > src > sec01.ex01 위치에 FirstServlet.java를 생성하여 아래 코드를 작성합니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
package sec01.ex01;
 
import java.io.IOException;
 
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
 
public class FirstServlet extends HttpServlet{
    @Override
        public void init() throws ServletException{
        System.out.println("init 메서드 호출");
    }
    
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp)
    throws ServletException, IOException{
        System.out.println("doGet 메서드 호출");
    }
    
    @Override
        public void destroy() {
        System.out.println("destroy 메서드 호출");
    }
 
}
 
cs

 

 

② WEB-INF > lib > web.xml 파일을 클릭 한 후 servlet 부분을 추가하여 작성해 줍니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" 
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" 
id="WebApp_ID" version="3.1">
  <display-name>proc1</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
  
  <servlet>
   <servlet-name>aaa</servlet-name>
   <servlet-class>sec01.ex01.FirstServlet</servlet-class>
  </servlet>
  
  <servlet-mapping>
   <servlet-name>aaa</servlet-name>
   <url-pattern>/first</url-pattern>
  </servlet-mapping>
</web-app>
 
 
 
cs

 

 

③ Servers > Add and Remove를 클릭한후 아래와 같이 진행합니다.

 

 

④ Tomcat을 재실행하고 브라우저에서 서블릿 매핑 이름으로 요청하고 console 창을 확인합니다.

 

⑤ 결과

 

반응형

+ Recent posts