본문 바로가기
프로그래밍/JSP

jsp 기본 문법 정리4

by -현's- 2012. 3. 12.
반응형

●${} - EL, 익스프레션랭귀지, 표현언어



●EL식에 포함된 데이터이름은 기본적으로 어트리뷰트이름으로 해석한다.
ex)
request.setAttribute("R", ~~);

<%=request.getAttribute("R")
${R}


●이름이 같은 어트리뷰트이름이 있을경우
${pageScope.R}
${requestScope.R}
${sessionScope.R}
${applicationScope.R}
로 구분한다.


●EL과 액션은 프로그래밍과 디자인 작업의 효율성을 위해서 사용한다.


●param은 웹브라우저에서 form엘리먼트를 통해 데이터를 가져올때 사용한다.
ex)
${param.A}          // 데이터 하나 받을때
${paramValues.A[0]}        //데이터 같은이름 여러개 받은때
${paramValues.A[1]}




●서블릿 클래스 작성 3가지 규칙
①javax.servlet.http.HttpServlet 클래스를 상속한다.

②doGet, doPost 메서드 안에 웹브라우저로부터 요청이 왔을때 해야할 일을 기술한다.

③HTML문서는 doGet, doPost 메서드의 두번째 파라미터를 이용해서 출력한다.



● "public class 클래스이름 extents HttpServlet{} "
- 서블릿 클래스는 public으로 만든다.


●doGet, doPost는 HttpServletRequest, HttpServletResponse 타입의 파라미터를 받아야 하고 ServletException.IOException으로 예외 처리해야한다.
ex)
public class 클래스이름 extends HttpServlet{
      public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServeltException.IOException { ~~ }

}


●출력은 doGet, doPost의 두번째 파라미터 이용
ex)
PrintWriter writer = response.getWriter();
writer.print("~~~");
writer.printf("%d", a);


●서블릿 클래스 등록은 web.xml(배포생성자, deployment descriptor)에서 한다.
ex)
<web-app>
    <servlet>
          <servlet-name>임의의 서블릿 이름 A</setvlet-name>
          <servlet-class>실행시킬 클래스 이름</servlet-class>
    </servlet>
    <servlet-mapping>
          <servlet-name>임의의 서블릿 이름A</servlet-name>
          <url-pattern>/임의의 주소</url-pattern>                            //임의의 주소를 호출하면 그에 맞는  
    </servlet-mapping>                                                             //서블릿 이름을 찾아 클래스를 실행시킨다.
</web-app>



●위와 같이 서블릿 매핑하는 이유는 어플리케이션이 유연해지고, 보안상 사용자에게 서블릿 이름을 직접 보여주지 않기 위해서다.


●서블릿에 한글 포함된 HTML문서 출력
ex)
response.setConntentType("text/html; charset=euc-kr");    //이 코드를 삽입해야 한글이 출력된다.


●<form>을 통해 입력된 데이터는 doGet, doPost 메서드의 첫번째 파라미터인 HttpServletRequest타입의 파라미터에 대해 getParameter메서드로 호출한다.
ex)
String str = request.getParameter("A");    //A는 <input>요소의 name값이다.


●<form>을 통해 입력된 데이터는 기본적으로 get방식이다.

get방식은 주소 url뒤에 붙어서 전송된다.

url이 아닌 별도의 영역을 통해 전송하려면 method="post"를 추가해야한다.



●<form>에서 get으로 쓰면 서블릿 클래스에서 doGet를 쓰고
                   post로 쓰면 서블릿 클래스에서 doPost를 써야한다.



●doPost메서드에서 한글 데이터를 올바르게 가져오려면
HttpServletRequest파라미터에 대해 setCharacterEncodingㅡ를 호출한다.
ex)
request.setCharacterEncoding("euc-kr");     //getParameter보다 먼저 호출해야한다.


●라디오 버튼은 name과 value를 반드시 써야한다. name은 같은값, value는 다른값을 지정한다.
ex)
<input  type=radio  name=A  value=mail>
<input  type=radio  name=A  value=femail>


●<input>은 '/' 안 쓴다.


●체크박스는 name에 다른값을 지정한다.
ex)
<input  type=checkbox  name=a>
<input  type=checkbox  name=b>


●라디오버튼은 getParameter로 한번 호출한다.
체크박스는 각각 다 호출한다. 선택한 경우 on, 선택 안한 경우에는 null을 리턴한다.


반응형

'프로그래밍 > JSP' 카테고리의 다른 글

jsp poi 폰트, 스타일 적용  (0) 2013.09.03
jsp poi 기본  (0) 2013.09.02
jsp 기본 문법 정리3  (0) 2012.03.12
jsp 기본 문법 정리2  (0) 2012.03.11
jsp 기본 문법 정리1  (0) 2012.03.11

댓글