DEVLOG

Service & Dao 객체 구현 본문

Spring

Service & Dao 객체 구현

BINTHEWORLD 2022. 6. 10. 17:03

자바의 new 키워드를 이용한 객체생성 및 참조는 메모리 비효율성을 초래하나, 스프링의 객체생성은 스프링 컨테이너를 통해 빈(Bean) 객체를 생성하므로 메모리 효율성이 높다.

 

그러나 스프링 설정파일을 일일이 열어서 빈(Bean) 객체를 생성하는 것보다 더 쉬운 방법이 존재한다.

 

바로 @Service, @Component, @Repository 어노테이션 사용이다.

이들은 스프링 컨테이너(Servlet-context.xml)에 빈(Bean) 객체만드는 것과 동일한 기능을 하며, 생성된 객체를 사용하고 싶은 곳에서 @Autowired 또는 @Resource("name") 어노테이션으로 자동주입하여 간단하게 객체를 생성하고 활용할 수 있다.

MemberDao.java

//@Component OR
@Repository
public class MemberDao implements IMemberDao {
	...
}

어노테이션으로 스프링 컨테이너에 MemberDao 객체가 만들어졌으므로 필요한 곳에 @Autowired 어노테이션으로 자동주입하면 된다. 

MemberService.java

memService라는 값으로 MemberService 객체 생성

//@Service OR
//@Service("memService") OR
//@Component OR
//@Component("memService") OR
//@Repository OR
@Repository("memService") // memService라는 name으로 MemberService 객체 생성
public class MemberService implements IMemberService {
    @Autowired // 동일한 데이터타입 찾아서 자동주입
    MemberDao dao; 
}

MemberController.java

@Controller
public class MemberController {

//	MemberService service = new MemberService(); 
//	@Autowired 대신
	@Resource(name="memService") // @Autowired와 같이 자동주입 기능(빈의 이름을 이용해서 주입할 객체를 검색) 
	MemberService service;
}

 

🙆‍♂️출처🙇‍♂️

https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%ED%94%84%EB%A0%88%EC%9E%84%EC%9B%8C%ED%81%AC_renew 

 

자바 스프링 프레임워크(renew ver.) - 신입 프로그래머를 위한 강좌 - 인프런 | 강의

스프링 프레임워크 기본부터 실전 사용법까지! 충실하고 폭넓은 설명과 예제를 통해 현장에 바로 투입되어 활약하는 개발자로 거듭나세요., - 강의 소개 | 인프런...

www.inflearn.com

'Spring' 카테고리의 다른 글

Controller 객체 구현 - 2  (0) 2022.06.11
Controller 객체 구현 - 1  (0) 2022.06.11
웹 서버(Tomcat)와 이클립스 연동  (0) 2022.06.09
웹 프로그래밍 설계 모델  (0) 2022.06.08
어노테이션을 이용한 스프링 설정 - 2  (0) 2022.06.08
Comments