Daily coding
Servlet : 에러 만들기 및 xml <init- parameter> 본문
1. Servlet 전송 오류 만들기
* Servlet 에서 오류를 발생시킬 수 있다.
* 대표적인 오류
404 (Page not found) : 페이지 주소 오류 또는 페이지 없음
500 (Internal server error) : 코드가 잘못되어 나타나는 오류
* HttpServletRequest 소속의 함수 sendError
sendError: sendError( HttpServletResponse.SC_NOT_FOUND, "못 찾겠다는 에러" );
- 에러 메세지를 설정하고 에러를 만들수 있다
- 에러의 종류는 HttpServletResponse (resp) 에 소속되어 있음
public class HelloServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String code = req.getParameter("code");
System.out.println(code);
String name = req.getParameter("name");
System.out.println("name: " + name);
String tax = this.getInitParameter("tax");
resp.setContentType("text/html; charset=UTF-8");
PrintWriter pw = resp.getWriter(); // html코드를 여기서 작성함
pw.println("<html>");
pw.println("<head>");
pw.println("<title>제목</title>");
pw.println("<body>");
pw.println("<h1>Hello Servlet</h1>");
pw.println("<p>Hello Servlet. This text is from Servlet</p>");
if(code.equals("200")) {
pw.println("<p>200:SC_OK</p>");
}else{
if(code.equals("404")) {
resp.sendError(HttpServletResponse.SC_NOT_FOUND, "못 찾겠다는 에러");
}
else if(code.equals("500")) {
resp.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR, "코드가 틀렸다는 에러");
}
}
pw.println("<p> init-value인 tax : " + tax + "</p>");
pw.println("</body>");
pw.println("</head>");
pw.println("</html>");
pw.close();
// Java 안에 html 코드 써서 화면에 뿌림
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// TODO Auto-generated method stub
super.doPost(req, resp);
}
}
2. init- parameter 만들기
: xml 파일에 init-param 태그를 추가하면 상수로 만들어 사용할 수 있다
( 세율, 이자율 등의 상수값이 필요할 때 꺼내서 사용할 수 있다 )
* 접근 방법
- 자바 서블릿 파일에서 get/post 함수에 this.getInitParameter로 접근가능
ex> String tax = this.getInitParameter("");
<servlet>
<servlet-name>myServlet</servlet-name>
<servlet-class>sample04.HelloServlet</servlet-class>
<init-param>
<param-name>tax</param-name>
<param-value>0.15</param-value>
</init-param>
</servlet>
'Front-end > 비동기통신' 카테고리의 다른 글
Servlet : Java에서 데이터 보내는방식 2 ( forward ) (0) | 2020.01.18 |
---|---|
Servlet : Java에서 데이터 보내는방식 1 ( sendRedirect ) (1) | 2020.01.17 |
Servlet : 서버와 연결하기 2 ( Java Servlet 파일 만들기 ) (0) | 2020.01.16 |
Servlet : 서버와 연결하기 1 ( web.xml 이란?) (0) | 2020.01.16 |
Servlet : Server와 Client, Sevlet의 개념 (0) | 2020.01.16 |