글 보기

url생성은 이미 자료실 목록을 만들때 완성했다.

컨트롤러 매핑을 하자.

컨트롤러 매핑, 모델&뷰

// 글 보기
@GetMapping("/data/dataView")
public ModelAndView dataView(int postno) {
	ModelAndView mav = new ModelAndView();
	
	mav.addObject("vo", service.dataView(postno));
	mav.setViewName("data/dataView");
	
	return mav;
}

Service

package com.poby.myapp.service;

import java.util.List;

import javax.inject.Inject;

import org.springframework.stereotype.Service;

import com.poby.myapp.dao.DataDAO;
import com.poby.myapp.vo.DataVO;

@Service
public class DataServiceImpl implements DataService {
	@Inject
	DataDAO dao;

	@Override
	public int dataPostOk(DataVO vo) {
		return dao.dataPostOk(vo);
	}

	@Override
	public List<DataVO> dataList() {
		return dao.dataList();
	}

	@Override
	public DataVO dataView(int postno) {
		return dao.dataView(postno);
	}
}

쿼리문 생성

<select id="dataView" resultType="com.poby.myapp.vo.DataVO">
	SELECT postno, subject, username, content, hitcount, regdate, filename1, filename2 
	FROM data_tbl WHERE postno=${param1}
</select>

뷰페이지

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!-- attribute : vo -->
<title>${ vo.subject }</title>
<div class="container">
	<h1>글 보기</h1>
	<ul>
		<li>글 번호</li>
		<li>${ vo.postno }</li>
		<li>작성자</li>
		<li>${ vo.username }</li>
		<li>등록일</li>
		<li>${ vo.regdate }</li>
		<li>조회수</li>
		<li>${ vo.hitcount }</li>
		<li>제목</li>
		<li>${ vo.subject }</li>
		<li>내용</li>
		<li>${ vo.content }</li>
		<li>첨부파일</li>
		<li>
			<a href="/myapp/upload/${ vo.filename1 }" download>${ vo.filename1 }</a><br>
			<c:if test="${ vo.filename2!=null && vo.filename2!='' }">
				<a href="/myapp/upload/${ vo.filename2 }" download>${ vo.filename2 }</a>
			</c:if>
		</li>
	</ul>
	<div>
		<a href="/myapp/data/dataEdit?postno=${ vo.postno }">수정</a>
		<a href="/myapp/data/dataDel">삭제</a>
	</div>
</div>

 

+ Recent posts