KDT/WEB

240227 WEB - Map

001cloudid 2024. 2. 27. 12:50
728x90

데이터를 DTO 하나에 담기지 않을 때 Map으로 받으면 된다.

	<select id="getBoardList" resultType="com.itwillbs.domain.BoardDTO">
		select * from reboard
		<if test="search !=null">
		where subject like CONCAT('%',#{search},'%')
		</if>
		order by re_ref desc, re_sql asc
		limit #{startRow},#{pageSize}
		//변경
		<select id="getBoardList" resultType="map">
		select * from reboard
		<if test="search !=null">
		where subject like CONCAT('%',#{search},'%')
		</if>
		order by re_ref desc, re_sql asc
		limit #{startRow},#{pageSize}
        
        //---------------------------------
        public List<BoardDTO> getBoardList(PageDTO pageDTO) {
		System.out.println("ReBoardDAO getBoardList()");
		System.out.println(pageDTO);
		return sqlSession.selectList(namespace+".getBoardList", pageDTO);
		}
        //변경
        public List<Map<String, Object>> getBoardList(PageDTO pageDTO) {
		System.out.println("ReBoardDAO getBoardList()");
		System.out.println(pageDTO);
		return sqlSession.selectList(namespace+".getBoardList", pageDTO);
		}
        
        //---------------------------------
        public List<BoardDTO> getBoardList(PageDTO pageDTO) {
		System.out.println("ReBoardService getBoardList()");
		
		//시작하는 행 번호 구하기 (currentPage, pageSize를 이용해서)
		int currentPage = pageDTO.getCurrentPage();
		int pageSize = pageDTO.getPageSize();
		int startRow = (currentPage - 1) * pageSize + 1;
		
		//끝나는 행 번호 구하기
		int endRow = startRow + pageSize - 1;
		
		//pageDTO에 저장
		//boardMapper => limit(한계까지 자르기) 시작행 - 1, 개수
		pageDTO.setStartRow(startRow - 1);
		pageDTO.setEndRow(endRow);
		
		return reBoardDAO.getBoardList(pageDTO);
		}
        //변경
        	public List<Map<String, Object>> getBoardList(PageDTO pageDTO) {
		System.out.println("ReBoardService getBoardList()");
		
		//시작하는 행 번호 구하기 (currentPage, pageSize를 이용해서)
		int currentPage = pageDTO.getCurrentPage();
		int pageSize = pageDTO.getPageSize();
		int startRow = (currentPage - 1) * pageSize + 1;
		
		//끝나는 행 번호 구하기
		int endRow = startRow + pageSize - 1;
		
		//pageDTO에 저장
		//boardMapper => limit(한계까지 자르기) 시작행 - 1, 개수
		pageDTO.setStartRow(startRow - 1);
		pageDTO.setEndRow(endRow);
		
		return reBoardDAO.getBoardList(pageDTO);
		}
    
		//---------------------------------
        List<BoardDTO> boardList = reBoardService.getBoardList(pageDTO);
        //변경
        List<Map<String, Object>> boardList = reBoardService.getBoardList(pageDTO);

 

notice

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> <!-- => 날짜 모양 변경 태그 라이브러리 -->
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>center/notice.jsp</title>
<link href="${pageContext.request.contextPath}/resources/css/default.css" rel="stylesheet" type="text/css">
<link href="${pageContext.request.contextPath}/resources/css/subpage.css" rel="stylesheet" type="text/css">
<!--[if lt IE 9]>
<script src="http://ie7-js.googlecode.com/svn/version/2.1(beta4)/IE9.js" type="text/javascript"></script>
<script src="http://ie7-js.googlecode.com/svn/version/2.1(beta4)/ie7-squish.js" type="text/javascript"></script>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js" type="text/javascript"></script>
<![endif]-->
<!--[if IE 6]>
 <script src="../script/DD_belatedPNG_0.0.8a.js"></script>
 <script>
   /* EXAMPLE */
   DD_belatedPNG.fix('#wrap');
   DD_belatedPNG.fix('#main_img');   

 </script>
 <![endif]-->
</head>
<body>
<div id="wrap">
<!-- 헤더들어가는 곳 -->
<jsp:include page="../inc/top.jsp" />
<!-- 헤더들어가는 곳 -->

<!-- 본문들어가는 곳 -->
<!-- 메인이미지 -->
<div id="sub_img_center"></div>
<!-- 메인이미지 -->

<!-- 왼쪽메뉴 -->
<jsp:include page="../inc/left.jsp" />
<!-- 왼쪽메뉴 -->

<!-- 게시판 -->
<article>
<h1>답글 Notice [전체 글의 개수 ${pageDTO.count }]</h1>
<table id="notice">
<tr><th class="tno">No.</th>
    <th class="ttitle">Title</th>
    <th class="twrite">Writer</th>
    <th class="tdate">Date</th>
    <th class="tread">Read</th></tr>

<c:forEach var="boardMap" items="${boardList}">
<tr onclick="location.href='${pageContext.request.contextPath}/reboard/content?num=${boardMap.num}'">
	<td>${boardMap.num}</td>
	<td class="left">
	<c:if test="${boardMap.re_lev >0}">
		<img src="${pageContext.request.contextPath}/resources/images/recenter/level.gif" width="${boardMap.re_lev * 10 }">
		<img src="${pageContext.request.contextPath}/resources/images/recenter/re.gif">
	</c:if>
	${boardMap.subject}</td>
    <td>${boardMap.name}</td>
    
    <td><fmt:formatDate value="${boardMap.date}" pattern="yyyy-MM-dd"/></td>
    <td>${boardMap.readcount}</td></tr>

</c:forEach>

</table>

<!-- 로그인을 하지 않으면 글쓰기 버튼이 보이지 않게 설정 -->
<c:if test="${!empty sessionScope.id }">
<div id="table_search">
<!-- location 자바스크립트 내장 객체 => 웹 브라우저 주소줄을 객체로 정의
     location 내장객체 멤버 변수 => href 변수 : 웹 브라우저 주소줄 내용을 저장하고 있는 변수
						  => href 변수 내용이 변경되어지면 웹 브라우저 주소도 변경 
						  location.href='${pageContext.request.contextPath}/board/write -->
<input type="button" value="글쓰기" class="btn" onclick="location.href='${pageContext.request.contextPath}/reboard/write'">
</div>
</c:if>

<div id="table_search">
<form action="${pageContext.request.contextPath}/reboard/list" method="get">
<input type="text" name="search" class="input_box">
<input type="button" value="search" class="btn">
</form>
</div>

<div class="clear"></div>
<div id="page_control">
<c:if test="${pageDTO.startPage > pageDTO.pageBlock }">
<a href="${pageContext.request.contextPath}/reboard/list?pageNum=${pageDTO.startPage - pageDTO.pageBlock}&search=${pageDTO.search}">Prev</a>
</c:if>

<c:forEach var="i" begin="${pageDTO.startPage }" end="${pageDTO.endPage }" step="1">
<a href="${pageContext.request.contextPath}/reboard/list?pageNum=${i}&search=${pageDTO.search}">${i}</a>
</c:forEach>

<c:if test="${pageDTO.endPage < pageDTO.pageCount}">
<a href="${pageContext.request.contextPath}/reboard/list?pageNum=${pageDTO.startPage + pageDTO.pageBlock}&search=${pageDTO.search}">Next</a>
</c:if>

</div>
</article>
<!-- 게시판 -->
<!-- 본문들어가는 곳 -->
<div class="clear"></div>
<!-- 푸터들어가는 곳 -->
<jsp:include page="../inc/bottom.jsp" />
<!-- 푸터들어가는 곳 -->
</div>
</body>
</html>

 


 

war파일 생성 후 저장

Destination에 .war라고 안써져있으면 써줘야함

war파일이 서버에 올리는 파일 형태

 

728x90