slide-image



1. User에서 들어온 요청을 Controller에서 받아 도메인 모델(VO)에 맵핑하고 해당하는 로직(Service)에 응답을 전달한다. 

2.  모델을 통해 처리 된(Mybatis etc..) 데이터들을 Controller에서 받아 다시 View에 출력해준다.



[Q&A]


1) 여기서 크게 Persistacne  + Service 를 묶어 Model로 분류

2) DAO와 Service의 차이 : DAO 는 단일 DB 접근을 처리하고 Service는 다중 DB 접근을 통해 트랜잭션 처리를 할 수 있다. 


EX)

ServiceImpl.java

@Transactional
@Override
public void write(BDto dto) {
	dao.write(dto);
	
	String[] files = dto.getFiles();
		
		
	if(files == null) {return;}
	
	for(String fileName : files){
		dao.addAttach(fileName);
	}
}


BDao.java

@Override
public void write(BDto dto) {
	sqlSession.insert("boardInsert", dto);
}
@Override
public void addAttach(String fullName) {
	sqlSession.insert("addAttach", fullName);
}


'Dev Study > Spring' 카테고리의 다른 글

[IntelliJ] 기존 다중 모듈 Import  (0) 2021.05.17
[Spring] Spring Security + JWT 로그인  (0) 2020.07.18
08. ResponseEntity  (0) 2018.12.26
07. MyBatis의 로그 log4jdbc-log4j2 설정하기  (0) 2018.11.16
06. MyBatis에 관한 정리  (0) 2018.11.13