주니어 개발자가 되는 중입니다...loading....
8. Spring 서블릿처럼 사용해보기 (1) : 간략한 구조 본문
1. pakage 만들고 해당하는 interface,class만들기
com.yr.spring.member.Controller - memberController
com.yr.spring.member.model.vo
com.yr.spring.member.model.service - memberService(인터페이스) - memberServiceImpl (클래스)
com.yr.spring.member.model.dao - memberDao(인터페이스) - memberDaoImpl(클래스)
+) interface와 거기에 상속받는 class를 만드는 이유? 각 각의 클래스들이 서로 영향을 받지 않기 위해서!! 클래스들의 독립성을 강화시킴!!
2. 어떤 용도로 쓰이는지 따라서 어노테이션을 삽입한다. 인터스페이스를 상속받은 class에게 삽입하면 된다(memberServiceImpl, memberDaoImpl)
contoller 용도 - @controller
dao용도 - @Repository
service 용도 - @Service
3. 인터페이스를 상속받은 클래스들을 인터페이스의 추상메소드를 구현시키고 다시 리턴 리턴해서 결국 컨트롤러에 가는 구조...
중간에 인터페이스들이 생겨서 복잡해 진거 같지만 전에 쓰였던 MVP구조와 비슷함
[흘러가는 구조] controller->serviceImpl->daoImpl->daoImpl에서 다시 리턴->serviceImpl->contoller
-contoller
@Controller
public class MemberController {
@Autowired
private MemberService service;
//서비스에 있는 기능 호출하기
@RequestMapping("/test/")
public void test() {
System.out.println("controller - test() 실행");
service.test();
}
}
- serviceImpl
@Service
public class MemberserviceImpl implements MemberService{
@Autowired
private MemberDao dao;
@Override
public void test() {
System.out.println("service-test() 실행");
dao.test();
}
}
-daoImpl
@Repository
public class MemberDaoImpl implements MemberDao{
@Override
public void test() {
System.out.println("dao-test() 실행");
}
}
'Spring 스프링' 카테고리의 다른 글
10. Spring 서블릿처럼 사용해보기 (3) : DB연결하기 (0) | 2023.01.05 |
---|---|
+)spring의 구조구조구조!! (0) | 2023.01.05 |
+) vo에서 매소드 선언후 추가하기 (0) | 2023.01.04 |
7. 객체에서 controller로 바로 보내기 (0) | 2023.01.04 |
6. Springbean으로 등록 (1) | 2023.01.02 |
Comments