프로젝트

    [SpringBoot] 게시판 구현하기 11 (스프링의 다양한 기능 살펴보기 - 예외처리)

    들어가기 전에 하기 포스팅은 "스프링부트 시작하기(김인우 저)" 책을 공부하며 적은 포스팅입니다. 이번 포스팅에서는 예외처리에 대해 살펴보도록 하겠습니다. 예외처리 스프링의 예외처리 방식은 크게 3가지로 나눌 수 있습니다. try/catch를 이용한 예외처리 각각의 컨트롤러단에서 @ExceptionHandler를 이용한 예외처리 @ControllerAdvice를 이용한 전역 예외처리 try/catch를 사용한 예외처리의 경우 스프링이 아닌 자바의 예외처리 방법이므로 여기서는 다루지 않습니다. 그리고 @ExceptionHandler 어노테이션을 이용한 예외처리의 경우 컨트롤러별로 동일 예외처리를 추가해야 해서 코드 중복이 많아져 이번 포스팅에서는 3번 @ControllerAdvice를 이용한 전역 예외처리..

    [SpringBoot] 게시판 구현하기 10 (스프링의 다양한 기능 살펴보기 - 트랜잭션)

    들어가기 전에 하기 포스팅은 "스프링부트 시작하기(김인우 저)" 책을 공부하며 적은 포스팅입니다. 이번 포스팅에서는 트랜잭션에 대해 살펴보도록 하겠습니다. 트랜잭션 먼저 돈을 송금하는 과정을 예로 들어 트랜잭션 개념을 간단히 알아보겠습니다. 돈을 송금하는 과정은 아래와 같습니다. 송금하고자 하는 계좌와 금액을 선택합니다. 이체하는 계좌에서 돈이 출금됩니다. 이체받는 계좌에 돈이 입금됩니다. 거래가 정상적으로 완료됩니다. 거래가 정상적으로 처리되면 문제가 없지만, 중간에 문제가 발생할 수 있습니다. 예를 들어, 2번과 3번 과정 사이에서 문제가 발생했다고 가정합니다. 그렇게 되면, 돈은 출금되었는데 실제로 이체 받을 사람 계좌에는 돈이 들어오지 않게 됩니다. 따라서, 돈을 송금하는 과정에서 문제가 발생하면..

    [SpringBoot] 게시판 구현하기 4 (게시글 등록 기능 생성하기)

    들어가기 전에 하기 포스팅은 "스프링부트 시작하기(김인우 저)" 책을 공부하며 적은 포스팅입니다. 이번 시간에는 앞서 게시글 목록 만들 때, 직접 쿼리로 날렸던 게시글 등록 기능을 GUI로 표현할 수 있도록 구성해보도록 하겠습니다. 게시글 등록 화면 만들기 게시글 등록은 사용자가 입력한 내용이 서버에 저장되는 순서로 진행되므로, 게시글 목록을 만들 때와는 다르게 화면 먼저 만들어보도록 하겠습니다. templates/board 폴더 내에 boardWrite.html 파일을 생성하고 다음과 같이 작성합니다. 게시판 등록 제목 : 사용자로부터 입력된 값을 서버로 전달하기 위해 을 이용합니다. action 속성에는 요청을 수행할 서버의 주소를 입력합니다. 이 단계에서는 아직 /board/insertBoard.d..

    [SpringBoot] 게시판 구현하기 3 (게시판 목록 만들기)

    들어가기 전에 하기 포스팅은 "스프링부트 시작하기(김인우 저)" 책을 공부하며 적은 포스팅입니다. 게시판 구현하기 2 까지 진행하면서, 기본 설정은 완료하였습니다. 이번 시간에는 스프링 MVC 구조 및 역할을 생각하며 게시판 목록 만들기를 진행해보도록 하겠습니다. DTO 만들기 DTO(Data Transfer Object)는 어플리케이션 내의 각 계층 간 데이터를 주고 받는 데 사용되는 객체입니다. 각 계층이란 뷰, 컨트롤러, 서비스, DAO 그리고 데이터베이스 등을 의미합니다. 1. 최상위 패키지인 board 패키지 밑에 board.dto 폴더를 생성하고 BoardDto 클래스를 생성합니다. 2. BoardDto 클래스에 하기와 같이 작성합니다. package board.board.dto; import..

    [SpringBoot] 게시판 구현하기 2 (게시판을 만들기 위한 기본 설정)

    시작하기 전에 하기 포스팅은 "스프링부트 시작하기(김인우 저)" 책을 공부하며 적은 포스팅입니다. 이번 포스팅에서는 간단하게 게시판을 구현해보도록 하겠습니다. 앞서 데이터베이스를 만들기만 했으므로, 데이터베이스에 데이터도 넣어보고 스타일 시트 추가 및 롬복 설정을 해보겠습니다. 데이터베이스 구성하기 먼저 기존에 생성한 데이터베이스(example)에 테이블을 만들어보도록 하겠습니다. 아래 쿼리를 이용해 게시글을 저장할 테이블을 생성합니다. DBeaver 기준으로 table 생성하는 방식은 아래와 같습니다. 1. table을 생성하고자 하는 database를 마우스 오른쪽 버튼으로 클릭한 후 Create > Table을 클릭합니다. 2. 그 후 나온 화면에서 테이블명을 정해준 후 오른쪽 하단에 위치한 컬럼 ..