전체보기
-
[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..
-
[Spring] 게시판 만들기(10) - log4j->logback으로 변경Spring/4.3.x - 게시판 만들기 2018. 12. 13. 15:20
로깅(Logging)은 개발 시에 오류 확인 및 처리를 위한 용도로 사용합니다. System.out.print()을 사용하면 되지 않나? 라는 의문이 생길 수 있지만 System.out.print() 리소스를 많이 사용하여 성능에 영향을 줄 수 있고 Logging을 사용하면 에러 및 장애 발생 시 확인할 수 최소한의 정보(날짜, 시간, 로그 타입 등)를 제공 받을 수 있으므로 System.out.println()보다 Logging을 사용하는 습관을 가지면 좋을 것 같습니다. logback은 log4j를 만든 개발자가 log4j를 기반으로 만든 Logging 라이브러리로 logback 사용 시에 log4j보다 추가되는 장점이 많아 변경하는 작업을 진행하도록 하겠습니다. 1. POM.xml에 의존성 추가 1..
-
[Spring] 게시판 만들기(9) - MySQL 연동Spring/4.3.x - 게시판 만들기 2018. 12. 4. 15:49
지난 포스팅에서 로컬에 설치한 MySQL을 자바에서 접근할 수 있도록 JDBC(Java DataBase Connectivity)와 MySQL을 연동하는 작업을 진행하도록 하겠습니다. 1. POM.xml에 의존성 추가 POM.xml에 MySQL과 관련된 의존성을 추가하세요. 1 2 3 4 5 6 7 5.1.46 mysql mysql-connector-java ${mysql.version} Colored by Color Scripter cs 2. POM.xml에 junit 버전을 변경 JUnit은 MySql 정상적으로 연동되었는지 확인하기 위해서 버전을 변경해주세요. ( JUnit 사용법 - https://tychejin.tistory.com/152 ) 1 2 3 4 5 6 7 4.12 junit junit..
-
[Spring] 게시판 만들기(8) - 디렉토리 구조 및 설정 파일 변경(web.xml, *-context.xml)Spring/4.3.x - 게시판 만들기 2018. 11. 30. 11:45
Spring MVC Project 디렉토리 구조 src/main/java - 자바 파일 디렉토리 src/main/resources - 리소스 파일(컴파일되지 않는 비실행 파일) 디렉토리 (mapper, sql 등) src/test/java : - 테스트 자바 파일 디렉토리 src/test/resources - 테스트 리소스 파일 디렉토리 Maven Dependencies - Maven을 통해 다운받은 라이브러리 파일 (mapper, sql) src/main/webapp/resources - 리소스 파일(컴파일되지 않는 비실행 파일) 디렉토리 (js, css, image 등) WEB-INF 디렉토리는 외부에서 직접 접근이 차단되어 컨트롤러를 통하여 접근이 가능합니다. src/main/webapp/WEB-I..