DisplayTag 링크 기능

참조 : http://displaytag.sourceforge.net/11/tut_links.html

<display:column property=”name” title=”이름” href=”detail.do” paramId=”id” paramProperty=”id” sortable=”true” />

이런식으로 지정해 주면 detail.do 로 링크가 생기며 이 링크로 객체의 id를 id라는 이름으로 넘겨 줍니다.

이것을 받아서 member 한명에 대한 정보를 뿌리는 controller를 만듭니다.
[#M_ more.. | less.. | public class MemberDetailController extends AbstractController{

   private MemberRepository memberRepository;

   @Override
   protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response) throws Exception {

       Integer id = Integer.parseInt(request.getParameter(“id”));
       Member member = memberRepository.get(id);
       return new ModelAndView(“detail”, “member”, member);
   }

   public void setMemberRepository(MemberRepository memberRepository) {
       this.memberRepository = memberRepository;
   }
}_M#]id로 넘어온 id를 받은 뒤 그것을 가지고 member 객체를 가져오고 다시 member 객체를 detail이라는 view와 함꼐 ModelAndView 객체에 담아서 리턴합니다. 그럼 viewResolver에 의해서 detail.jsp를 찾아가게 될 것입니다.
[#M_ more.. | less.. | <jsp:root version=”1.2″ xmlns:jsp=”http://java.sun.com/JSP/Page”
    xmlns:display=”urn:jsptld:http://displaytag.sf.net”
    xmlns:c=”urn:jsptld:http://java.sun.com/jstl/core“>

    <jsp:directive.page contentType=”text/html; charset=UTF-8″ />
    <jsp:include page=”inc/header.jsp” flush=”true” />

    <h2><c:out value=”${member.name}”/>’s Information</h2>

    <table>
        <tr>
            <th>이름</th>
            <td><c:out value=”${member.name}”/></td>
        </tr>
        <tr>
            <th>Email</th>
            <td><c:out value=”${member.email}”/></td>
        </tr>
        <tr>
            <th>Phone</th>
            <td><c:out value=”${member.phone}”/></td>
        </tr>
        <tr>
            <th>Blog</th>
            <td><c:out value=”${member.blogAddress}”/></td>
        </tr>
        <tr>
            <th>MessengerId</th>
            <td><c:out value=”${member.messengerId}”/></td>
        </tr>
    </table>

    <jsp:include page=”inc/footer.jsp” flush=”true” />
</jsp:root>_M#]
JSTL을 사용하기 위해 taglib을 지정해 주고 이 페이지에 member객체가 넘어 왔을 테니깐 “${member.name}” 이런식으로 사용해주면 됩니다.

사용자 삽입 이미지
결과는..
사용자 삽입 이미지

Leave a Reply

Your email address will not be published. Required fields are marked *