◇ LAB · MVC

Service 계층

Spring MVC — 실습

📍 지금 어디를 만지고 있나요?
브라우저
Spring MVC
DB

사전 준비

이번 실습의 목표

주문(Controller 호출)을 받아 실제 요리(비즈니스 로직)를 책임지는 계층. 트랜잭션도 여기.

1
코드 작성
@Service
public class BoardService {

    @Autowired
    private BoardMapper mapper;     // DAO 주입

    @Transactional
    public void writeWithFile(Board b, MultipartFile file) {
        mapper.insert(b);            // 글 저장
        fileService.save(file);      // 파일 저장
        // 둘 중 하나 실패하면 롤백
    }
}
CHECKPOINT
  • 코드를 작성한 뒤 빨간 줄(컴파일 오류)이 없는가?
2
실행 + 결과 확인

Run on Server 또는 javac+java 로 실행하고 결과를 확인합니다.

CHECKPOINT
  • 예상한 동작이 일어났는가?
  • 안 됐다면 F12 / 콘솔 / 로그 어디서 단서가 보이는가?

실습 완료 체크리스트

Service = 비즈니스 로직 + 트랜잭션
Controller 는 호출만, 로직은 Service 에
@Transactional 로 원자성 보장