티스토리 뷰

 

 

# 톰캣에 저장될 때의 구조

 

프로젝트명/WEB-INF/web.xml
프로젝트명/WEB-INF/classes/xxx.class
프로젝트명/WEB-INF/lib/ojdbc6.jar
프로젝트명/t1.jsp, t2.html, t3.css, t4.js

프로젝트명/jsp/t1.jsp, t2.html
프로젝트명/css/t2.css
프로젝트명/js/t4.js




# jsp에서 만든 모든 소스코드는 _jspService메서드에 다들어간다.


-_jspService메서드-
  public void _jspService(final javax.servlet.http.HttpServletRequest request, final javax.servlet.http.HttpServletResponse response)
      throws java.io.IOException, javax.servlet.ServletException {

    final java.lang.String _jspx_method = request.getMethod();
    if (!"GET".equals(_jspx_method) && !"POST".equals(_jspx_method) && !"HEAD".equals(_jspx_method) && !javax.servlet.DispatcherType.ERROR.equals(request.getDispatcherType())) {
      response.sendError(HttpServletResponse.SC_METHOD_NOT_ALLOWED, "JSPs only permit GET POST or HEAD");
      return;
    }

    final javax.servlet.jsp.PageContext pageContext;
    javax.servlet.http.HttpSession session = null;
    final javax.servlet.ServletContext application;
    final javax.servlet.ServletConfig config;
    javax.servlet.jsp.JspWriter out = null;
    final java.lang.Object page = this;
    javax.servlet.jsp.JspWriter _jspx_out = null;
    javax.servlet.jsp.PageContext _jspx_page_context = null;


    try {
      response.setContentType("text/html; charset=UTF-8");
      pageContext = _jspxFactory.getPageContext(this, request, response,
         null, true, 8192, true);
      _jspx_page_context = pageContext;
      application = pageContext.getServletContext();
      config = pageContext.getServletConfig();
      session = pageContext.getSession();
      out = pageContext.getOut();
      _jspx_out = out;

      out.write("\r\n");
      out.write("<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">\r\n");
      out.write("<html>\r\n");
      out.write("<head>\r\n");
      out.write("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\">\r\n");
      out.write("<title>Insert title here</title>\r\n");
      out.write("</head>\r\n");
      out.write("<body>\r\n");

  for(int a=1;a<10;a++){
   out.println(2+"*"+a+"="+2*a+"</br>" );
  }

      out.write("\r\n");
      out.write("</body>\r\n");
      out.write("</html>");
    } catch (java.lang.Throwable t) {
      if (!(t instanceof javax.servlet.jsp.SkipPageException)){
        out = _jspx_out;
        if (out != null && out.getBufferSize() != 0)
          try {
            if (response.isCommitted()) {
              out.flush();
            } else {
              out.clearBuffer();
            }
          } catch (java.io.IOException e) {}
        if (_jspx_page_context != null) _jspx_page_context.handlePageException(t);
        else throw new ServletException(t);
      }
    } finally {
      _jspxFactory.releasePageContext(_jspx_page_context);
    }
  }
 
 

 

# jsp태그 6개 (서로 중첩안됨)


1.<% %>  -->(스크립트릿) 자바의 메인메서드 느낌
2.<%= %> -->출력(out.print());(표현식)
3.<%! %> -->(선언문)
4.<%-- --%> --> (주석문)
5.<%@ %>   --> (지시자) 디렉티브 <%@page %> <%@include %> <%@taglib %>
6. <jsp:액션태그>
   </jsp:액션태그>





 

# jsp 내장객체(9개) -->객체생성따로안해도 jsp에서 읽음


pageContext
session
application
config
out
page
request(매게변수)
response(매게변수)
exception 

'VIEW > JSP&SERVLET' 카테고리의 다른 글

[JSP] jquery  (0) 2017.12.01
[JSP] application,session,화면이동,영역정리  (0) 2017.12.01
[JSP] db연동,관련문제  (0) 2017.12.01
[JSP] request객체  (0) 2017.12.01
[JSP] JSP & servlet 이란?  (0) 2017.12.01
댓글