본문 바로가기

spring framework 인프런강의

Spring WEB MVC03 게시판 웹 계층 구현하기(등록 및 조회 구현)

여기서 

만들고 확인

 

인코딩??.

 데이터베이스를 조회해봤다

 

이상하게 등록되어있다

 

이거 web.xml 에 등록 

 

<filter>
    <filter-name>encodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
        <param-name>encoding</param-name>
        <param-value>utf-8</param-value>
    </init-param>
</filter>
<filter-mapping>
    <filter-name>encodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

 

등록한다음 톰캣 다시 껏다 키고

 

한글 잘 나타난다

근데 이제보니 조회수가 왜 안나타나지지?

 

그럼 이걸 어떻게 수정해야하나

근데 int 면 0으로 자동 초기화 해주는거아니였나?

보니깐

 

생각없이 쳐서;; vo쪽이 String 으로 되어있음

int로 바꾸자 그리고 getter setter도 다시 

 

톰캣 껏다 키니

오 ㅅㅅ 잘나옴 

 

 

그다음 상세보기

 

 

넘어가는지 클릭

잘 넘어간다

컨트롤러에서 상세페이지로 가게 하는 메소드 만들어주고 

 

get.jsp 만들자

 

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>    
<!DOCTYPE html>
<html lang="en">
<head>
  <title>Bootstrap Example</title>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js"></script>
</head>
<body>
 
<div class="container">
  <h2>Board Read</h2>
  <div class="panel panel-default">
    <div class="panel-heading">Panel Heading</div>
    <div class="panel-body">
     <div class="form-group">
          <label for="title">Title</label>
          <input type="text" class="form-control" id="title"  name="title" readonly="readonly"value="${board.title}" >
        </div>
        <div class="form-group">
          <label for="contents">Text Area</label>
          <textarea class="form-control" rows="5" id="contents" name="contents" readonly="readonly">${board.contents}</textarea>
        </div>
        <div class="form-group">
          <label for="writer">Writer</label>
          <input type="text" class="form-control" id="writer" placeholder="글쓴이" name="writer" value="${board.title}"  readonly="readonly"  > <!-- id 중복 제거 -->
        </div>
    </div>
    <div class="panel-footer">ㅇㅅㅇ</div>
  </div>
</div>

</body>
</html>

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>    
<!DOCTYPE html>
<html lang="en">
<head>
  <title>Bootstrap Example</title>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js"></script>
</head>
<body>
 
<div class="container">
  <h2>Board Read</h2>
  <div class="panel panel-default">
    <div class="panel-heading">Panel Heading</div>
    <div class="panel-body">
     <div class="form-group">
     <label for="idx">Bno</label>
     <input type="text" class="form-control" id="idx" name="idx"  readonly="readonly" value="${board.idx}">
</div>
     <div class="form-group">
          <label for="title">Title</label>
          <input type="text" class="form-control" id="title"  name="title" readonly="readonly"value="${board.title}" >
        </div>
        <div class="form-group">
          <label for="contents">Text Area</label>
          <textarea class="form-control" rows="5" id="contents" name="contents" readonly="readonly">${board.contents}</textarea>
        </div>
        <div class="form-group">
          <input type="text" class="form-control" id="writer" placeholder="글쓴이" name="writer" value="${board.title}"  readonly="readonly"  > <!-- id 중복 제거 -->
        </div>
        <button class="btn btn-default">Modify</button>
         <button class="btn btn-info">List</button>
    </div>
    <div class="panel-footer">ㅇㅅㅇ</div>
  </div>
</div>

</body>
</html>

 

실행을 했는데 오류가 남 찾아보니깐  xml 부분 데이터베이스 read 하는 부분의 resulttype 을 안써놔서 바꾸고

 

 

추가 하고 실행

오 잘나옴

 

그다음 수정페이지 하고 리스트 돌아가기 만들기