Back-end/JSP & Servlet
servlet 웹 입/출력
@Eeap
2022. 6. 30. 22:36
반응형
import java.io.IOException;
import java.io.PrintWriter;
import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
public class Nana extends HttpServlet
{
public void service(HttpServletRequest request
, HttpServletResponse response)
throws IOException, ServletException
{
//OutputStream os = response.getOutputStream();
//PrintStream out = new PrintStream(os,true);
PrintWriter out = response.getWriter();
out.println("Hello Servlet!");
}
}
한글 출력
한글을 출력으로 내보낼때 setContentType으로 contenttype을 지정해서 보내준다.(인코딩 방식의 차이 때문에)
package com.newlec.web;
import java.io.IOException;
import java.io.PrintWriter;
import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
@WebServlet("/hello")
public class Nana extends HttpServlet{
@Override
protected void service(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
PrintWriter out = res.getWriter();
res.setCharacterEncoding("UTF-8");
res.setContentType("text/html; charset=UTF-8");
for (int i =0; i<100; i++) {
out.println((i+1)+": 한글 servlet <br >");
}
}
}
get요청과 쿼리스트링
query로 요청할때 http://localhost:8080/hello?cnt=3
위처럼 cnt 값을 파라미터로 넣어주면 된다.
package com.newlec.web;
import java.io.IOException;
import java.io.PrintWriter;
import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
@WebServlet("/hello")
public class Nana extends HttpServlet{
@Override
protected void service(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
PrintWriter out = res.getWriter();
res.setCharacterEncoding("UTF-8");
res.setContentType("text/html; charset=UTF-8");
int cnt = Integer.parseInt(req.getParameter("cnt"));
for (int i =0;i<cnt; i++) {
out.println("안녕 servlet<br/>");
}
}
}
반응형