MySql, MyBatis, JSP 연동
1. pom.xml 의 <dependencies> 태그 사이에 MySql, MyBatis, JSP 사용을 위한 라이브러리 추가
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
<!-- JSP -->
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<version>8.0.36</version>
</dependency>
<dependency>
<groupId>javax.servlet.jsp.jstl</groupId>
<artifactId>javax.servlet.jsp.jstl-api</artifactId>
<version>1.2.1</version>
</dependency>
<!--JDBC -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
<version>1.4.1.RELEASE</version>
</dependency>
<!-- MYSQL -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.6</version>
</dependency>
<!--MyBatis -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.3.0</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.2</version>
</dependency>
|
cs |
2. 저장 후 프로젝트 우클릭 - Maven - Update Project
3. 해당 프로젝트 선택 후 OK
4. src/main/resources - application.properties에 작성
* application.properties (어플리케이션내의 설정 파일) : 스프링부트는 기본적으로 XML을 이용하지 않고, 문자열 등 특별한 설정이 필요한 경우에 사용 할 수 있는 application.properties 파일이 생성됩니다.
1
2
3
4
5
6
7
8
|
spring.mvc.view.prefix=/WEB-INF/views/
spring.mvc.view.suffix=.jsp
spring.datasource.driver-class-name= com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/데이터베이스명
spring.datasource.username= 유저명
spring.datasource.password= 패스워드
|
cs |
* prefix : 경로 지정 / suffix : 파일 확장자명
5. application.properties에서 설정한 경로대로 폴더를 생성 후 jsp 페이지 작성
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<h2> TEST!!!! </h2>
</body>
</html>
|
cs |
6. JSP 테스트를 위한 Controller 작성
7. 저장 - 프로젝트 실행(왼쪽 아래에 있는 Boot Dashboard에서 local - 해당 프로젝트를 선택 후 restart 버튼으로도 프로젝트 실행 가능합니다.)
8. 실행 후 http://localhost:8080/test 로 접속하여 작성한 JSP페이지가 나오는지 확인
9. 잘 나옴. 짝짞짞짝짝짝!
10. com.example.demo.DemoApplication.java에서 SqlSessionFactory Bean 생성
* DemoApplication.java 는 "프로젝트명+Application.java" 로 생성 된 이름이기 때문에 프로젝트명이 다르면 이 파일명이 다르게 생성됩니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
package com.example.demo;
import javax.sql.DataSource;
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.SqlSessionFactoryBean;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
/*
* SqlSessionFactory 설정
*/
@Bean
public SqlSessionFactory sqlSessionFactory(DataSource dataSource) throws Exception{
SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean();
sessionFactory.setDataSource(dataSource);
return sessionFactory.getObject();
}
}
|
cs |
* @Bean : 스프링에 필요한 객체를 생성
* sqlSessionFactory() : MyBatis의 SqlSessionFactory를 반환해줍니다. 스프링부트가 실행할 때 DataSource객체를 이 메서드 실행 시 주입해서 결과를 만들고, 그 결과를 스프링내 빈으로 사용하게 됩니다.
11. mapper 작성전에 DTO 작성... 전에 패키지 생성
(board 패키지 생성 후 board 패키지 내에 controller, domain, mapper, service 패키지 생성)
12. 프로젝트명 오른쪽 위에 있는 아래화살표 클릭 - Package Presentation - Hierarchical 선택하면 구조를 깔끔하게 확인 가능
13. domain에 BoardVO.java 클래스 생성 후 작성
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
package com.example.demo.board.domain;
import java.util.Date;
public class BoardVO {
private int bno;
private String subject;
private String content;
private String writer;
private Date reg_date;
}
|
cs |
14. 여기까지만 작성한 후 Source - Generate Getters And Setters... - 전체 선택(Select All) 후 OK 하면 자동으로 getter, setter 생성
15. 너무 길어져서 다음 포스트에....
'SpringBoot 게시판 만들기' 카테고리의 다른 글
스프링부트(SpringBoot) 게시판 만들기6 - 게시글 목록(list) + jstl 태그 사용 (2) | 2017.08.20 |
---|---|
스프링부트(SpringBoot) 게시판 만들기5 - 게시글 쓰기(Insert) + 부트스트랩 끼얹기 (4) | 2017.08.20 |
스프링부트(SpringBoot) 게시판 만들기4 - CRUD (7) | 2017.08.20 |
스프링부트(SpringBoot) 게시판 만들기3 - MySQL, MyBatis, JSP 연동(2) (4) | 2017.08.19 |
스프링부트(SpringBoot) 게시판 만들기1 - 프로젝트 생성 (5) | 2017.08.19 |
댓글