Spring
-
[Spring] 게시판 만들기(18) - 계층형 게시판(답글쓰기) 적용Spring/4.3.x - 게시판 만들기 2018. 12. 19. 13:06
계층형 게시판 계층형 게시판이라는 것은 하나의 게시글에 대해 답글 쓰면 해당 게시글의 하위로 답글이 위치되어 계층적인 구조를 이루면서 목록을 구성해 주는 게시판입니다. 1. 쿼리 추가 및 수정 1_1) 게시글 등록(insertBoard) 쿼리 변경 계층형 게시판을 위해서는 게시글 간에 그룹을 만들어야 하기 때문에 BOARD_RE_REF 컬럼에 값을 입력하도록 변경해야 합니다. 더보기 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 SELECT IFNULL(MAX(BOARD_RE_REF), 0) + 1 FROM BOARD.TB_BOARD INSERT INTO BO..
-
[Spring] 게시판 만들기(17) - 페이징(Paging) 처리Spring/4.3.x - 게시판 만들기 2018. 12. 19. 11:03
1. 페이징 처리를 위한 쿼리 추가 및 수정 1_1) 게시물 총 개수를 구하는 쿼리 추가 페이징 처리를 위해서는 게시물 총 개수가 필요하기 때문에 쿼리를 추가하세요. 1 2 3 4 5 6 SELECT COUNT(*) FROM BOARD.TB_BOARD Colored by Color Scripter cs 1_2) 게시물 목록을 조회하는 쿼리 수정 페이징 처리를 위해서는 한 페이지의 게시물 목록만 조회해야 합니다. MYSQL에서는 LIMIT ~ OFFSET을 사용하며 한 페이지의 게시물 목록만 조회할 수 있으므로 게시물 목록을 조회하는 쿼리에 LIMIT ~ OFFSET을 추가하세요. LIMIT는 게시물 목록의 수, OFFSET은 게시물을 몇 번째부터 가져올지를 정의할 수 있습니다. 1 2 3 4 5 6 7 ..
-
[Spring] 게시판 만들기(16) - 트랜잭션(Transaction) 설정Spring/4.3.x - 게시판 만들기 2018. 12. 19. 09:17
처리 과정 중 한 가지라도 실패할 경우 처리 과정을 취소시킴으로써 데이터의 무결성을 보장하기 위한 트랜잭션 설정을 진행하도록 하겠습니다. 1. pom.xml에 의존성 추가 트랜잭션과 관련된 의존성을 추가하세요.(aspectjweaver.jar, cglib-nodep.jar) pom.xml 더보기 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 8..
-
[Spring] 게시판 만들기(15) - 게시글 등록(INSERT), 수정(UPDATE), 삭제(DELETE), 상세 조회(SELECT)Spring/4.3.x - 게시판 만들기 2018. 12. 17. 17:46
게시글을 등록, 수정, 삭제, 상세 조회하는 부분을 추가하는 작업을 진행하도록 하겠습니다. 1. Back-End 파일 수정 BoardController.java, BoardService.java, BoardDao.java, BoardDto.java, BoardForm.java, BoardMapper.xml 파일을 수정하세요. BoardController.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 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 6..
-
[Spring] 게시판 만들기(14) - 게시글 조회(SELECT)Spring/4.3.x - 게시판 만들기 2018. 12. 17. 12:50
모델2 방식에 MVC(Model, View, Controller) 패턴과 관련된 파일을 추가한 후 목록을 구현하는 작업을 진행하도록 하겠습니다. Model 영역 애플리케이션에 비즈니스 로직과 사용되는 데이터를 다루는 영역입니다. 일반적으로 비즈니스 데이터는 DBMS에 의해 관리되고, 그 데이터를 다루는 연산은 SQL문을 통해 구현됩니다. View 영역 최종 사용자에게 보여줄 프리젠테이션 로직을 담당하는 영역입니다. 일반적으로 자바 웹 애플리케이션에서는 JSP를 통해서 구현됩니다. Controller 영역 컨트롤러는 흐름을 관리하는 역할을 하며, 모델과 뷰 영역간의 조정 역할을 합니다. 사용자의 요청을 받아 이를 수행하기 위한 비즈니스 로직을 선택하고 호출하며, 수행한 비즈니스 로직의 결과를 뷰를 통해 보..
-
[Spring] 게시판 만들기(13) - mapper 및 json 설정Spring/4.3.x - 게시판 만들기 2018. 12. 14. 16:19
SQL문을 관리하는 mapper 파일 및 경로를 설정하고, Java 객체를 JSON으로 응답할 수 있도록 설정하는 작업을 진행하도록 하겠습니다. 1. root-context.xml 수정 mapper에 위치 및 SqlSession을 설정하세요. root-context.xml 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 Colored by Color Scripter cs 2. mapper.xml 추가 src/main/resources 위치에 mappers 폴더를 생성한 후 boardMapper.xml 파일을 추가하세요. parameterType, resultType에 선언한 BoardForm, BoardDto..
-
[Spring] 게시판 만들기(12) - Mybatis 연동Spring/4.3.x - 게시판 만들기 2018. 12. 14. 10:35
SQL문을 별도의 XML 파일로 관리하여 개발 및 유지 보수가 용이한 MyBatis를 설정하는 작업을 진행하도록 하겠습니다. 1. POM.xml에 의존성 추가 Spring-jdbc, Spring-test, Mybatis 의존성을 추가하세요. 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 4.3.6.RELEASE org.springframework spring-jdbc ${org.springframework-version} org.springframework spring-test ${org.springframework-version} 3.4.6 1.3.2 org.mybatis mybatis ${mybatis.versio..
-
[Spring] 게시판 만들기(11) - 인터셉터(Interceptor) 설정Spring/4.3.x - 게시판 만들기 2018. 12. 14. 09:33
인터셉터를 지원하는 추상클래스 HandlerInterceptorAdaptor는 preHandler(), postHandle(), afterCompletion() 3가지 메서드를 지원하며, preHandler()과 postHandle()는 전처리기와 후처리기에 역할을 수행하며, preHandler()은 컨트롤러가 호출되기 전에 실행되고, postHandle()은 컨트롤러가 실행되고 난 후에 호출됩니다. 컨트롤러 실행 전이나 후에 공통적인 작업을 처리할 수 있는 HandlerInterceptorAdaptor를 상속받아 인터셉터를 설정하는 작업을 진행하도록 하겠습니다. 1. HandlerInterceptorAdapter를 상속받아 구현할 자바 파일을 생성 1_1. src/main/java 폴더 com.spri..