servlet
2023. 12. 31. 14:47ㆍDaily Codig Reminder
helloServlet
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>com.controller.HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/xxx</url-pattern>
</servlet-mapping>
//@WebServlet("/hello")
/xxx 만 기능
@Override
public void destroy() {
// TODO Auto-generated method stub
super.destroy();
System.out.println("destroy 호출");
}
@Override
public void init(ServletConfig config) throws ServletException {
// TODO Auto-generated method stub
super.init(config);
System.out.println("init 호출");
}
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public TestServlet() {
super();
System.out.println("생성자 호출");
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.getWriter().append("Served at: ").append(request.getContextPath());
System.out.println("doGet 호출");
}
package com.controller;
import java.io.IOException;
import java.util.ArrayList;
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 TestServlet
*/
@WebServlet("/TestServlet")
public class TestServlet extends HttpServlet {
int num ;
ArrayList<String> list = new ArrayList<String>();
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
int size =10;
num++;
list.add("홍길동");
System.out.println("doGet num: "+num);
System.out.println("doGet list: "+list);
System.out.println("doGet size: "+size);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
) HttpServletRequest API/ HttpServletResponse API
package com.controller;
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;
/**
* Servlet implementation class TestServlet
*/
@WebServlet("/TestServlet")
public class TestServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public TestServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 1. test/html지정
response.setContentType("text/html;charset=UTF-8");
//2. PrintWriter 생성
PrintWriter out = response.getWriter();
//3. out 이용한 html 코드작성
out.println("<html>");
out.println("<head>");
out.println("<script src ='js/test.js'>");
out.println("</script>");
out.println("</head>");
out.println("<body>");
out.println("<h1>서블릿 응답처리 실습</h1>");
out.println("<p>Hello WOrld</p>");
out.println("</body></html>");
}
/**
* @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);
}
}
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1>로그인폼</h1>
<a href="login">로그인 서블릿 요청</a>
<form action="login" method="get">
아이디<input type="text" name="userid"><br>
비밀번호<input type="text" name="passwd"><br>
<input type="submit" value="로그인">
<hr>
</form>
<form action="login" method="post">
아이디<input type="text" name="userid"><br>
비밀번호<input type="text" name="passwd"><br>
<input type="submit" value="로그인">
<hr>
</form>
<a href="test">TestServlet</a>
<form action="test" method="post">
아이디<input type="text" name="userid"><br>
비밀번호<input type="text" name="passwd"><br>
<input type="submit" value="로그인">
<hr>
</form>
</body>
</html>
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 1. test/html지정
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
out.print("<html>");
out.print("<head>");
out.print("</head>");
out.print("<body>");
String my= "<table border=1>";
my+="<tr>";
my+="<td>이름</td>";
my+="<td>나이</td>";
my+="<td>주소</td>";
my+="</tr>";
my+="<tr>";
my+="<td>홍길동</td>";
my+="<td>20</td>";
my+="<td>서울</td>";
my+="</tr>";
my+= "</table>";
out.print(my);
out.print("</body>");
out.print("</html>");
}
<servlet>
<servlet-name>MyServlet</servlet-name>
<servlet-class>com.controller.MyServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>MyServlet</servlet-name>
<url-pattern>/info</url-pattern>
</servlet-mapping>
지우고 web에다 만들기
2) 서블릿 요청 처리
package com.controller;
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;
/**
* Servlet implementation class Loginservlet
*/
@WebServlet("/Loginservlet")
public class Loginservlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public Loginservlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8"); //post방식은 이거막으면 안됨
String userid = request.getParameter("userid");
String passwd = request.getParameter("passwd");
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
out.printf("<html><body>");
out.printf("이름은:"+userid);
out.printf("비번은:"+passwd);
out.printf("</body></html>");
}
/**
* @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);
}
}
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1>로그인화면</h1>
<form action="Loginservlet" method="get">
아이디: <input type="text" name="userid"><br>
비밀번호: <input type="text" name="passwd"><br>
<input type="submit" value="로그인"><br>
</form>
<hr>
<form action="Loginservlet" method="post">
아이디: <input type="text" name="userid"><br>
비밀번호: <input type="text" name="passwd"><br>
<input type="submit" value="로그인"><br>
</form>
</body>
</html>
getparameterpost
package com.controller;
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;
/**
* Servlet implementation class TestServlet
*/
@WebServlet("/TestServlet")
public class TestServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public TestServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8"); //post방식은 이거막으면 안됨
String [] fruits= request.getParameterValues("fruit");
System.out.println(fruits.length);
for (String s : fruits) {
System.out.println(s);
}
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
out.println("<html><body>");
for (String s : fruits) {
out.println(s+"<br>");
}
out.println("</body></html>");
}
/**
* @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);
}
}
package com.controller;
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;
/**
* Servlet implementation class MyServlet
*/
@WebServlet("/myLogin")
public class LoginServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public LoginServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8"); //post방식은 이거막으면 안됨
String userid = request.getParameter("userid");
String passwd = request.getParameter("passwd");
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
out.printf("<html><body>");
String my= "이름은 "+userid+" 이고 비밀번호는 "+passwd;
out.printf(my);
out.printf("</body></html>");
}
/**
* @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);
}
}
<body>
<form action="myLogin" method="get">
아이디<input type="text" name="userid"><br>
비밀번호<input type="text" name="passwd"><br>
<input type="submit" name="로그인">
</form>
<form action="myLogin" method="post">
아이디<input type="text" name="userid"><br>
비밀번호<input type="text" name="passwd"><br>
<input type="submit" name="로그인">
</form>
</body>
'Daily Codig Reminder' 카테고리의 다른 글
5장- jsp (0) | 2024.01.04 |
---|---|
servlet 2 + my batis (1) | 2024.01.02 |
event (1) | 2023.12.31 |
DOM, EVENT (0) | 2023.12.24 |
함수,객체, DOM (1) | 2023.12.24 |