정리를 할지 안할지 모르지만 일단 제가 작성한 구조와 소스를 기록하겠습니다.
DemoApplication.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 | package com.example.demo; import javax.sql.DataSource; import org.apache.ibatis.session.SqlSessionFactory; import org.mybatis.spring.SqlSessionFactoryBean; import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.annotation.Bean; @SpringBootApplication @MapperScan(value={"com.example.demo.mapper"}) public class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); } @Bean public SqlSessionFactory sqlSessionFactory(DataSource dataSource) throws Exception { SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean(); sqlSessionFactoryBean.setDataSource(dataSource); return sqlSessionFactoryBean.getObject(); } } |
HomeController.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 35 36 37 38 39 | package com.example.demo.controller; import java.util.ArrayList; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.servlet.ModelAndView; import com.example.demo.domain.Board; import com.example.demo.service.BoardService; @Controller public class HomeController { @Autowired BoardService boardService; @RequestMapping(value="/", method=RequestMethod.GET) public ModelAndView board() { ModelAndView mv = new ModelAndView(); List<Board> boardList = new ArrayList<Board>(); Board boardParm = new Board(); boardList = boardService.selectBoard(boardParm); mv.addObject("list",boardList); mv.setViewName("board"); return mv; } } |
Board.java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | package com.example.demo.domain; public class Board { String subject; public String getSubject() { return subject; } public void setSubject(String subject) { this.subject = subject; } } |
BoardMapper.java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | package com.example.demo.mapper; import java.util.List; import org.apache.ibatis.annotations.Select; import com.example.demo.domain.Board; public interface BoardMapper { String selectBoardSql = "select subject from board"; @Select(selectBoardSql) public List<Board> selectBoard(Board boardParm); } |
BoardService.java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | package com.example.demo.service; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.example.demo.domain.Board; import com.example.demo.mapper.BoardMapper; @Service public class BoardService { @Autowired private BoardMapper boardMapper; public List<Board> selectBoard(Board boardParm){ return boardMapper.selectBoard(boardParm); } } |
application.properties
1 2 3 4 5 6 7 | 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/board spring.datasource.username=test spring.datasource.password=test |
board.jsp
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <%@ page session="false" %> <html> <head> <title>Home</title> </head> <body> <h1> Hello world!! </h1> <c:forEach items="${list}" var="item"> ${item.subject} <br/> </c:forEach> </body> </html> |
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 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 | <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.example</groupId> <artifactId>demo</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>jar</packaging> <name>demo</name> <description>Demo project for Spring Boot</description> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.4.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.8</java.version> </properties> <dependencies> <!-- JSP 설정 --> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <!-- mybatis --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>1.2.3</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.3.0</version> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project> |
[소스]
MyBatis query log (변수 매핑된 쿼리 로그 출력) (2) | 2020.02.20 |
---|---|
스프링 여러 파일 다운로드 (무압축, 다중 다운로드) (3) | 2018.12.27 |
[Spring] STS Maven 2.5.1 Install 컴파일 에러 (tools.jar) 출처: http://pnot.tistory.com/6 [프로그래밍 노트] (0) | 2018.03.07 |
[Spring] @Scheduled 정해진 시간에 맞춰서 모듈 실행하기 (0) | 2017.11.27 |
스프링(Spring) 게시판 소스 예제 (페이징, 댓글, 대댓글, 목록 조회, 글쓰기, 상세보기, oracle, mysql) (149) | 2017.08.10 |
댓글 영역