[jsp] jstl을 이용해 파라미터 받기 serialize()를 이용한 검색어 유지

오늘은 jsp에서 jstl을 이용해 어떻게 파라미터를 받을 수 있는지 한번 알아보자.

https://letsplaycoding.tistory.com?searchText=jsp&searchType=name&pageNum=0

 
url에서 파란색으로 표시된 부분을 파라미터라고 한다.
파라미터는 보통 쿼리 스트링으로도 불리며 key값과 value 값의 형태로 이루어진다.
처음 물음표(?) 뒤에 나열이 되며 & 기호로 여러 개의 파라미터가 존재할 수 있다.

 

일반적인 jsp 페이지에서 자바 문법을 사용한 파라미터 처리방법

<% String searchText = request.getParameter("searchText");%>
<%=searchText%>

결과값 :  jsp

 

jstl을 이용한 파라미터 처리방법

${param.searchTxt} 
<c:out value="${param.searchTxt}" />

결과값 :  jsp

 

jsp 페이지에서 검색어 유지하기

<button type="button" id="btn_cancel" class="btn btn-success">목록</button>

<form id="searchForm" method="post">
	<input class="submit_target" type="hidden" name="searchType" value="${param.searchType}"/>
	<input class="submit_target" type="hidden" name="searchText" value="${param.searchText}"/>
	<input class="submit_target" type="hidden" name="pageNum" value="${param.pageNum}"/>
</form>

<script type="text/javascript">
	$(function() {
  	 	$("#btn_cancel").click(function(e) {
			var targetForm = $("#searchForm");
			location.href = "/list?"+targetForm.serialize();
		});
    });
</script>

게시판을 만들 때 다른 페이지에 이동했다가 목록으로  돌아올 경우 파라미터를 유지 시켜줘야 한다.
serialize는 폼 안에 있는 데이터들을 한 번에 전송가능한 data로 만들어준다.
form을 하나 만들고 그 안에 검색값을 담아줄 input 태그들을 만들어 파라미터들을 담아주자.
serialize()을 이용하면 검색어를 유지하기에 매우 편리해진다.