SpringBoot 게시판 만들기

스프링부트(SpringBoot) 게시판 만들기3 - MySQL, MyBatis, JSP 연동(2)

abfc 2017. 8. 19.
반응형

MySql, MyBatis, JSP 연동(2)





1. 생성한 mapper 패키지에 BoardMapper '인터페이스' 생성 후 작성




1
2
3
4
5
6
7
8
9
10
package com.example.demo.board.mapper;
 
import org.springframework.stereotype.Repository;
 
@Repository("com.example.demo.board.mapper.BoardMapper")
public interface BoardMapper {
 
    public int boardCount() throws Exception;
}
 
cs

 * @Repository : 해당 클래스가 데이터베이스에 접근하는 클래스임을 명시




2. 같은 위치에 BoardMapper.xml 생성 후 작성






1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper 
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
 
<mapper namespace="com.example.demo.board.mapper.BoardMapper">
 
    <select id="boardCount" resultType="int">
        SELECT
            COUNT(*)
        FROM BOARD
    </select>
</mapper>
 
cs





3. DemoApplication.java    에 @MapperScan 추가

 * @MapperScan : Mapper 인터페이스를 인식할 수 있도록 설정


1
@MapperScan(value={"com.example.demo.board.mapper"})
cs






4. Jsp를 테스트 했던 클래스에 db 연동이 잘 되었는지 테스트



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
package com.example.demo;
 
import javax.annotation.Resource;
 
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
 
import com.example.demo.board.mapper.BoardMapper;
 
@Controller
public class JspTest {
 
    @Resource(name="com.example.demo.board.mapper.BoardMapper")
    BoardMapper mBoardMapper;
    
    @RequestMapping("/test")
    private String jspTest() throws Exception{
        
        System.out.println(mBoardMapper.boardCount()); // <<<<TEST
        
        return "test"
    }
}
 
cs





5. 작성 후 프로젝트 재실행 - http://localhost:8080/test 요청 - 콘솔창 확인



- 제 board라는 테이블에 데이터가 1개가 있기때문에 1이 출력됐습니다. 무조건 1이 출력 되는 건 아니에요!





MySQL, MyBaties, JSP 연동 끝!

반응형

댓글

💲 추천 글