본문 바로가기

728x90

프레임워크/Spring

(3)
[ Spring ] Transaction(트랜잭션)의 모든것 Transaction 이란? Transaction은 데이터베이스의 상태를 변경시키는 작업의 단위이다. 데이터베이스에서 데이터를 다룰 때(데이터 추가, 갱신, 삭제 등) 처리하던 작업이 오류가 발생했을 때 모든 일련의 작업들을 원상태로 되돌린다. 모든 일련의 작업들이 성공해야만 최종적으로 데이터베이스에 데이터를 갱신, 삭제, 추가가 된다. 이러한 트랜잭션은 여러 상황에 따라 여러 개가 만들어진다. 하나의 트랜잭션에 Commit 되거나 Rollback 될 수 있다. 위의 말이 해당 말과 같다고 보면 된다. 예를 들어 보겠다. 어느 application에 충전 금액이 있고, 충전을 하게 되면 보너스 포인트를 제공한다 가정하자. 한 사용자가 금액을 10000원 충전하려 한다.(포인트는 100포인트) 해서 DB에..
[ Spring ] @RestController @Controller 차이 @RestController @Controller 차이 @RestController는 스프링 4.x 이상부터 사용 가능한 어노테이션이다. @Controller에 @ResponseBody가 결합된 어노테이션이라고 보면 된다. @RestController는 문자열, JSON 형태의 데이터 반환할 때 주로 사용된다. 하여 Restful Api 개발할 때 주로 사용한다. @RestController을 사용하면 메서드에 @ResponseBody 어노테이션을 안 써도 문자열과 JSON을 반환할 수 있다. @Controller public class MemberController { private final MemberService memberService; public @ResponseBody Member getM..
[ Spring ] @Autowired, @Resource,@Inject 차이점 사용 예1 @Autowired, @Resource,@Inject은 모두 의존관계를 자동으로 연결해주는 기능을 가진 어노테이션이지만 조금씩 차이가 있다. @Resource @Autowired @Inject 설명 Java 에서 지원 Spring Framework 에서 지원하는 Dependency 정의 용도의 어노테이션 자동주입이며 종속적이다 Java 에서 지원 사용하는 위치 필드 , 한개의 파라미터인 빈 프로퍼티 setter 메소드 필드 , 생성자 , 여러개인 파라미터 메소드 필드 , 생성자 , 메소드 연결 또는 검색 방식 이름으로 연결 안되면 타입 타입으로 연결 안되면 이름 타입으로 연결 안되면 이름 특이사항 스프링프레임워크 종속 강제 연결 하기 @Resource(name="title") @Qualifie..

728x90