본문 바로가기

Backend - Java Spring/Spring Boot 입문(완)28

[자율학습] 트랜잭션 맛보기 1. 트랜잭션 시나리오 - 게시판에 데이터 3개를 한꺼번에 생성을 요청한다 - 데이터를 DB에 저장하는 과정에서 의도적으로 오류를 발생시킨다 - 롤백되는 것을 확인한다. 2. 구현 - /api/transaction-test 로 post요청을 보내본다. - ArticleApiController - ArticleService - 데이터가 추가되지 않고 기본 세개의 데이터만 남게 된다. 2024. 2. 7.
[자율학습] 서비스와 트랜잭션 1. 서비스와 트랜잭션의 개념 1. 서비스 : - 컨트롤러와 리포지토리 사이에 위치하는 계층 - 서버의 핵심 기능을 처리하는 순서를 총괄한다. - 웨이터는 컨트롤러 주방장은 서비스, 보조요리사는 리포지토리다 2. 트랜잭션 - 서비스 업무처리의 진행 단위 - 모두 성공해야하는 일련의 과정이다. - 트랜잭션이 실패로 돌아갈 경우 진행 초기단계로 돌리는 것을 rollBack 이라고 한다. - 아래의 경우에는 컨트롤러가 서비스 역할까지 한다. 2. 서비스 계층 만들기 - 변수 변경 - 패키지 생성 -> 클래스 생성 - 아래와 같이 ArticleController 내부를 바꾼다. - articleService에 가서 index 메소드를 생성해줘야 한다. - 할일을 Service 한테 위임한 RestControll.. 2024. 2. 7.
[자율학습] REST API 1. REST API란 ? - 클라이언트에 구애받지 않고 사용할 수 있게 하는 설계 방식 - HTTP 요청에 대한 응답으로 서버의 자원을 반환함. - 응답으로 화면이 아닌 JSON Data를 전송 - HTTP URL로 서버의 자원을 명시하고 HTTP 메서드로 해당자원에 대해 CRUD 하는 것 2. 구현 과정 - URL 설계 1. GET : '/api/articles' or '/api/article/{id}' : 조회 2. POST : '/api/articles' : 생성 3. PATCH(PUT) : '/api/articles/{id}' : 수정 4. DELETE : '/api/articles/{id}' : 삭제 - Controller 설계 : 게시판을 만들 땐 ArticleController를 만들었지만.. 2024. 2. 7.
[자율학습] 기본 SQL 쿼리 1. SQL 동작확인 - @Entity 애너테이션은 DB가 해당 객체를 인식해서 해당 클래스로 테이블을 만들라는 뜻이다. - 따라서, 서버를 실행하면 자동으로 새로운 Article 객체가 만들어지고 CREATE TABLE문도 자동 수행된다. - CREATE TABLE 테이블명 ( 속성명1 자료형, 속성명2 자료형, 속성명3 자료형, PRIMARY KEY (기본키) ); 2. coffee table SQL 로 만들어보기 2024. 2. 7.
[자율학습] JPA 로깅 1. JPA 로깅 설정하기 - application.properties - 로깅 레벨은 7단계가 있다 - TRACE : Debug보다 상세정보 - DEBUG : 응용프로그램을 디버깅 하는데 필요한 세부 정보 - INFO : 순조로운 진행 정보 - WARN : 잠재적 유해한 상황 정보 - ERROR : 응용프로그램이 수행할 수 있는 정도의 오류 정보 - FATAL : 응용프로그램이 중단될 만한 심각한 오류 정보 - OFF : 로깅 기능 해제 2. 추가 세팅 2024. 2. 7.
[자율학습] 글 Delete하기 1. Delete버튼 추가하기 2. Controller 만들기 - Get으로 이런 짓 하면 원래는 큰일나지만 문법 공부를 위해 요렇게함 3. header에 msg 바인딩하기 2024. 2. 7.
[자율학습] 글 Update 하기 1. 수정페이지를 만든다. 2. 기존 데이터를 불러와서 렌더링한다. 3. 귀찮으니까 더미데이터를 자동 생성해놓는다. 4. 수정페이지 변경하기 5. 컨트롤러 만들기 2024. 2. 7.
[자율학습] Redirect 1. Redirect 는 Controller 및 method의 return에 넣어준다. 2. lombok의 @Getter 애너테이션을 넣으면 Getter가 알아서 메서드에 추가된다 2024. 2. 7.