Controller에서는 @Transactionl을 사용하면 안된다고 알고 있었습니다.
일단 작동이 되지 않는데,,
Controller는 '안내'만 하고, 비즈니스 로직은 Service에서 구현해야 하기 때문입니다.
(따로 억지로 설정을 해주면 됩니다.)
- 비즈니스 로직이란,
올바른 데이터를 리턴하기 위해 거쳐야 하는 여러가지 검사를 하는 로직을 말하는데,,
이 부분을 Service가 맡고 있습니다.
따라서 트랜잭션의 ACID를 지키기 위해 @Transactional을 붙이는 것입니다.
만약 Controller를 설정하다가,
@Transaction을 붙여야 할 것 같다는 느낌이 든다면,, 그 코드는 좋은 코드가 아니라고 합니다.
MVC가 제대로 적용되지 않았다는 표시라고 합니다..
'Dev- > Spring' 카테고리의 다른 글
Spring 프레임워크의 Front Controller - DispatcherServlet (0) | 2018.07.16 |
---|---|
form태그로 HiddenMethod 활용하기(PUT, PATCH, DELETE) (0) | 2018.07.15 |
Ajax를 이용한 파일 처리-5. (0) | 2018.07.13 |
Ajax를 이용한 파일 처리-4. (0) | 2018.07.12 |
Ajax를 이용한 파일 처리-3. (0) | 2018.07.12 |