- servlet: 요청을 받아서 응답해주는 녀석
사용자: 브라우저에서 사용자가 second라고 url이라고 엔터 --> 요청이 서버를 향해서 간다
서버: 요청 받음---(어떤 자원을 요청했는지 알아야하는데 second라고 온거네?
second라고 처리할놈이 누구다?
요청한 자원 - second (이름표)
- WebServlet: 클라이언트 요청 식별하는 녀석
- HttpServlet: (톰켓이 제공) 클라이언트 요청을 처리할 수 있는 객체 - (서블릿 클래스로 용도가 정해짐)
- doGet : 클라이언트가 서버한테 요청할 때 get방식으로 요청한 녀석을 처리하는 메소드
- doPost : post방식으로 온 녀석이라 post메소드로 처리해야한다
- service : doGet + doPost
- response 서버가 응답, request 클라이언트 요청에 대한 정보
- response는 getwriter를 쓴다
- getWriter : printwriter를 반환한다
- response.setContentType("text/html;charset=utf8"); <<한글도 가능하게 하는 녀석(PrintWriter위에 있어야 되더라)
package servlets;
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("/memberlist")
public class ThirdServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public ThirdServlet() {
super();
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html;charset=utf8");
//한글도 제대로 나오게 된다
PrintWriter pw = response.getWriter();
//pw.print여러번써도된다
pw.print("<div>"
+ "<h1>MemberList</h1>"
+ "<hr>"
+ "<table border='1'>"
+ "<tr>"
+ "<th>번호</th>"
+ "<th>이름</th>"
+ "<th>연락처</th>"
+ "</tr>"
+ "<tr>"
+ "<td>1</td>"
+ "<td>홍길동</td>"
+ "<td>010-1111-1111</td>"
+ "</tr>"
+ "<tr>"
+ "<td>2</td>"
+ "<td>임꺽정</td>"
+ "<td>010-3333-3333</td>"
+ "</tr>"
+ "</table>"
+ "</div>");
}
}
- ArrayList랑 for문써서 해보자
package servlets;
import java.io.IOException;
import java.io.PrintWriter;
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;
import vo.MemberVo;
@WebServlet("/memberlist")
public class ThirdServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public ThirdServlet() {
super();
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html;charset=utf8");
//한글도 제대로 나오게 된다
MemberVo mv1 = new MemberVo();
mv1.setNum(1);
mv1.setName("짱구");
mv1.setContact("010-zzzz-9999");
MemberVo mv2 = new MemberVo();
mv2.setNum(2);
mv2.setName("흰둥이");
mv2.setContact("010-흰-둥");
MemberVo mv3 = new MemberVo();
mv3.setNum(3);
mv3.setName("짱구분신");
mv3.setContact("010-짱구-분신");
ArrayList<MemberVo> ar = new ArrayList<>();
ar.add(mv1);
ar.add(mv2);
ar.add(mv3);
PrintWriter pw = response.getWriter();
pw.print("<div>"
+ "<h1>MemberList</h1>"
+ "<hr>"
+ "<table border='1'>"
+ "<tr>"
+ "<th>번호</th>"
+ "<th>이름</th>"
+ "<th>연락처</th>"
+ "</tr>");
for(int i =0;i <ar.size(); i++) {
pw.print("<tr>"
+ "<td>"+ar.get(i).getNum()+"</td>"
+ "<td>"+ar.get(i).getName()+"</td>"
+ "<td>"+ar.get(i).getContact()+"</td>"
+ "</tr>"
);
}
pw.print("</table>"
+ "</div>");
}
}
package vo;
public class MemberVo {
private int num;
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getContact() {
return contact;
}
public void setContact(String contact) {
this.contact = contact;
}
private String name;
private String contact;
}
'JSP > 이론' 카테고리의 다른 글
쿼리스트링 (0) | 2023.06.07 |
---|---|
sendRedirect//radio사용//checkbox(getParameterValues) //selectoption //textarea(getParameter().replace()) (0) | 2023.06.07 |
until now 배운 내용 정리 + 서블릿은 컨테이너에 하나의 객체만 생성함(오늘 배울 내용) (0) | 2023.06.07 |
Ajax 아작스 (0) | 2023.06.05 |
servlet + request+ (response) //get vs post방식//request.setCharacterEncoding("utf-8") (0) | 2023.06.05 |