Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 오라클오류
- 게시판댓글
- 스토리지기본
- lombok
- 크리스탈레포트그림
- @RunWith
- git
- openaddressing
- Ajax
- EC@
- 크리스탈리포트이미지삽입
- 타임존
- jdbc연결안됨
- RequestBody
- 자료구조
- 서블릿용어
- 이미지누끼
- import안될때
- ResponseBody
- fcmwebpush
- 크리스탈리포트이미지
- 크리스탈레포트이미지
- JDBC
- 추상클래스
- 롬복
- IT기본지식
- api문서만들기
- 서버기본
- 크리스탈레포트누끼
- 타임존설정
Archives
- Today
- Total
엠마의 개발공부일지
1. 의존성 : 프로그래밍에서 의존관계는 new로 표현된다. 본문
728x90
"여름나라겨울이야기 블로그"에서 공부한 내용을 정리한다.(코드내용도 블로그발췌)
<의존성이란?>
- Tire인터페이스에 한국, 미국Tire클래스를 만들고, Car클래스에서 의존관계 확인(의존되면서 타 클래스와 엮임)
유연성이 떨어지는코드, Car생성단계에서 tire의 정보를 모두 알아야함. |
<의존성 주입코드> : 생성자를 통해 의존성을 주입(생산)
자동차는 어떤 tire를 골라야할지 정하지않아도됨. 어떤 타이어든 들어오기만하면 코드 작동 |
운전자가 차량을 생성시 타이어도 고른다. (이 경우 japan tire클래스를만들때 거기서 설정후, 바로 운전자클래스에서 japan tire를 추가해주기만 하면사용가능) new Car생성시 생성자파라미터를 쓰고싶으면, Car클래스에서 생성자 작성 |
<의존성 주입코드> : 속성(getter, setter) 통해 의존성을 주입(생산)
<스프링을통한 의존성 주입> : 기존코드 모두동일하며 , main포함한 클래스코드만 변경(구매)
- main을 포함한 클래스에 변경된 사항
📌종합쇼핑몰(Spring)에 대한 정보패키지 import
- => import org.springframework.context.ApplicationContext;
- => import org.springframework.context.support.FileSystemXmlApplicationContext
📌쇼핑몰의 정보
- => ApplicationContext context = new FileSystemXmlApplicationContext("/src/main/java/expert002/expert.xml")
📌쇼핑몰에서 구매
- => Tire tire = (Tire)getBean("tire"); :파라미터가1개일땐 반환형이 object이므로 Tire로 변환
- => Car car = (Car)getBean("car");
(이때 getBean에 파라미터가 두개일땐 두번째 인자로 반환형을 지정 ex_getBean("car", Car.class);)
(xml파일의 property부분은 car.setTire(tire)부분을 대체함)
* 스프링사용으로 인한 이점 : 프로그램 실행결과를 바꾸려면 xml파일만 수정하면된다.
* xml파일에서 속성주입하기
- 형광펜부분은 "코리아타이어를 자동차타이어속성에 결합"하는 부분
- <bean>부분은 쇼핑몰에 진열되어있는 내용일뿐 각 클래스와 연결되어있으며, 그 클래스에 참조내용이 기록되어있다(@Autowired로 보완가능)
<@Autowired를 이용한 주입> : feat.작정하고 게을러지기
=> @Autowired : 자동으로 set메서드역할 대신해드림(객체사이의 의존성을 해결해주는 존재)
=> 각 객체클래스의 getter,setter를 안씀 => xml파일에서도 'ref="koreaTire"' 안씀 => 이모든게 @Autowired로 가능
📌사용방법
1. xml파일에 정보패키지 추가
- xmlns:context="http://www.springframework.org/schema/context"
- http://www.springframeworkd.org/schema/context
- http:/www.springframework.org/schema/context/spring-context-3.1.xsd"
- <context:annotation-config />
2. 변경 전/후(xml파일)
[출처: 여름나라겨울이야기 블로그] : expert0226.tistory.com/192?category=479268
728x90
'Stack > Spring & Springboot' 카테고리의 다른 글
mvc 코드작성순서 (0) | 2020.11.05 |
---|---|
스프링 MVC로 "Hello World" (0) | 2020.11.01 |
addAttribute관련(Controller) (0) | 2020.10.29 |
Spring초기설정과정_mybatis (0) | 2020.10.28 |
Spring_mvc architecture 한장으로 이해하기 (0) | 2020.10.27 |
Comments