EL태그로 페이지 이동시 정보가져오기
동일한 name의 파라미터인 경우 어떻게 정보를 가져올 수 있을까?
순서 :
paramTest.html
생성.
동일한 name을 가진 파라미터를 만든다.
그다음 paramTest.jsp
생성.
동일한 name의 파라미터를 어떻게 가져올수있을까?
첫번째 방법 : String array와 request.getParameterValues()사용
두번째 방법 : EL태그사용
공통코드 : paramTest.html
생성 1 2 3 4 5 6 7 8 9 10 11 12 <fieldset > <form action ="paramTest.jsp" method ="get" > ID : <input type ="text" name ="id" > <br > PW : <input type ="password" name ="pw" > <br > MSG1 : <input type ="text" name ="msg" > <br > MSG2 : <input type ="text" name ="msg" > <br > <input type ="checkbox" name ="hobby" value ="수영" > 수영 <input type ="checkbox" name ="hobby" value ="등산" > 등산 <input type ="checkbox" name ="hobby" value ="댄스" > 댄스 <input type ="submit" value ="전송하기" > </form > </fieldset >
첫번째방법 : String array와 request.getParameterValues()사용 paramTest.jsp
코드1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 <% request.setCharacterEncoding("UTF-8" ); String id = request.getParameter("id" ); String pw = request.getParameter("pw" ); String msg1 = request.getParameter("msg" ); String msg2 = request.getParameter("msg" ); %> <table border="1" > <tr> <td>아이디 </td> <td><%=id %></td> </tr> <tr> <td>비번 </td> <td><%=pw %></td> </tr> <tr> <td>메세지1 </td> <td><%=msg1%></td> </tr> <tr> <td>메세지2 </td> <td><%=msg2%></td> //2-1.메세지1과 동일한 파라미터값이 출력된다->어떻게하면 메세지2를출력할수있을까? </tr> </table> <hr> <% String[] str = request.getParameterValues("msg" ); %> <%=str[0 ] %> <%=str[1 ] %> <hr> <h2>체크박스1 : 일반출력</h2> <% String[] optStr = request.getParameterValues("hobby" ); %> <%=optStr[0 ] %> <%=optStr[1 ] %> <%=optStr[2 ] %> <% for (int i=0 ; i<optStr.length; i++){ %> <%=optStr[i] %> <% } if (optStr != null ){ for (int i=0 ;i<optStr.length;i++){ %> <%=optStr[i] %> <% } } %>
두번째방법 : EL태그 사용 taglib 추가 1 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
paramTest.jsp
생성- 위의 `paramTest.html`을 바탕으로 아래 코드 구현.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 <h2 > 체크박스1 : EL 표현식 사용 출력</h2 > 아이디 : ${ param.id }<br > 비밀번호 : ${ param.pw }<br > 옵션1 : ${ paramValues.hobby[0] }<br > 옵션2 : ${ paramValues.hobby[1] }<br > 옵션3 : ${ paramValues.hobby[3] }<br > <hr > <c:forEach var ="tmp" items ="${paramValues.hobby }" > ${tmp }<br > </c:forEach >