일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- SQL
- java
- js
- 파이썬
- sort
- nodejs
- github
- 파이썬 파일편집
- Javascript
- 자바
- Spring Boot
- spring
- pull
- 깃허브
- DML
- python pwd
- git
- JAVA ERROR
- 파이썬 파일생성
- java 상속
- DDL
- 정렬
- Python
- 파이썬 파일 수정
- 스프링
- 깃
- commit
- Push
- HTML
- Algorithm
Archives
- Today
- Total
춘식이를 좋아하는 개발자
[Spring] Exception(Error) 방지 본문
Exception 확인!
1. "status" : 500 일 경우 JAVA에서 발생한 오류
2. NullPointerException 등 Error 발생 Google에 검색하여 해당 예시 및 해결방법을 찾아보자!
문제점
Business Logic을 구현하거나 DB(Data Base)와 연동할 때 Error는 큰 문제가 된다고 한다!
(특히 실무에서 DB를 사용함에 있어서 row Data의 삭제, 수정은 큰일이다!)
따라서 Exception을 늘 생각하고 예방해야한다.
Exception으로 인한 Error 예방 방법!
Exception을 임의로 만들어 DB와의 연동 과정에서 table이 수정되는 것을 방지하는 방법
다음과 같은 Business Logic이 실행될 때 사전에 미리 Exception이 발생하더라도 DB가 수정되는 것을 막을 수 있다.
// business logic때문에 error가 날 때 잡는방법!
// 짱 고급 Annotation
// error가 뜰 경우 이전 시점의 commit으로 돌아가기
@Transactional(rollbackFor = {Exception.class}) // 짱
// @Transactional(rollbackFor = {NullPointerException.class}) // null관련 error catch
public int getEmpUpdateCount(EmpVO vo) {
int rows = postMapper.updateEmp(vo);
// error만들어서 경험해보자!
UserVO user = null; // instance화 하지 않아 null이라 error
String name = user.getName();
System.out.println(name);
// 서버에서는 error가 뜨는데 DB는 update가 된다!
return rows;
}
Annotation
@Transactional(rollbackFor = {Exception.class} )
을 사용하여 Exception을 방지하자!
'Study > Java' 카테고리의 다른 글
[Algorithm] Insertion Sorting (삽입 정렬) (0) | 2022.05.11 |
---|---|
[JAVA] Flag (플래그) Boolean형 data를 이용한 logic (0) | 2022.05.10 |
[JAVA] ++x와 x++의 차이점 (0) | 2022.05.10 |
[Spring] 자주 사용하는 spring annotation(@) 정리 (수정 中) (0) | 2022.05.09 |
[Spring] JAVA Spring Boot 개발 환경 조성하기 (0) | 2022.05.09 |