일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 토네이도
- 자바스크립트
- Tornado
- 설치
- OrientDB
- AWS
- 알고리즘
- 오픈한글
- BAEKJOON
- online
- 배열
- 파이썬
- 프레임워크
- 이클립스
- Java
- 저지
- r script
- ubuntu
- r
- 백준
- Framework
- Python
- mariadb
- spring
- 연결
- Judge
- API
- MongoDB
- 자료형
- 연동
- Today
- Total
맛동산
Simple Spring Maven에서 스프링 컨테이너 사용-2 본문
applicationContext.xml에서
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980·¬<?xml·version="1.0"·encoding="UTF-8"?>¬<!--·여그가·빈·팩토리·-->¬<beans·xmlns="http://www.springframework.org/schema/beans"¬————xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"¬————xmlns:p="http://www.springframework.org/schema/p"¬————xsi:schemaLocation="http://www.springframework.org/schema/beans·http://www.springframework.org/schema/beans/spring-beans.xsd">¬¬————<!--·spring.di.ch01·-->¬————<bean·id="message"·class="spring.di.ch01.MessageKr"/>·¬————¬————¬————<!--·spring.di.ch02·-->¬————<!--·<bean·id="serviceImpl"·class="spring.di.ch02.ServiceImpl"/>·-->¬————<!--·생성자가·있는데·주소를·주입하는·부분이·없어서·에러·-->¬————¬————<bean·id="serviceImpl"·class="spring.di.ch02.ServiceImpl">¬————————<!--·생성자·이용·DI·-->¬————————<constructor-arg><!--·<constructor-arg·ref="daoImpl"/>·도·가능·-->¬————————————<ref·bean="daoImpl"/>¬————————</constructor-arg>¬————</bean>¬————<bean·id="daoImpl"·class="spring.di.ch02.DaoImpl"/>¬————¬————¬————<!--·spring.di.ch03·-->¬————<bean·id="serviceImpl2"·class="spring.di.ch03.ServiceImpl">¬————————<!--·설정메서드·이용·DI·:·name="매개변수"·ref="참조빈id"·-->¬————————<property·name="daoImpl"·ref="daoImpl2"/>·<!--·name·=·매개변수의·이름·-->¬————</bean>¬————<bean·id="daoImpl2"·class="spring.di.ch03.DaoImpl"/>¬————¬————¬————<!--·spring.di.ch04·-->¬————<!--·<bean·id="moniter"·class="spring.di.ch04.SystemMoniter">¬————————설정메서드·이용·DI·:·name="매개변수"·ref="참조빈id"¬————————변수·주입¬————————<property·name="time"·value="10"/>¬————————¬————————외부객체·주입¬————————<property·name="smsSender"·ref="smssender"/>¬————</bean>·-->¬————<!--·형식p:변수="값"·p:변수-ref="참조빈id"·-->¬————<bean·id="moniter"·class="spring.di.ch04.SystemMoniter"¬————————p:time="10"·p:smsSender-ref="smssender"/>¬————<bean·id="smssender"·class="spring.di.ch04.SmsSender"/>¬————¬————<!--·spring.di.ch05·-->¬————<bean·id="moniter2"·class="spring.di.ch05.SystemMoniter">¬————————<constructor-arg·value="30"/><!--·첫번째·파라미터·-->¬————————<constructor-arg·ref="smssender2"/><!--·두번째·파라미터·-->¬————</bean>¬————<bean·id="smssender2"·class="spring.di.ch05.SmsSender"/>¬————¬————<!--·spring.di.ch06·-->¬————<bean·id="list"·class="spring.di.ch06.ListCollection">¬————————<property·name="userName">¬————————————<!--·list·원소·추가·-->¬————————————<list>¬————————————————<value>홍길동</value>¬————————————————<value>길순신</value>¬————————————————<value>신감찬</value>¬————————————————<value>유관순</value>¬————————————</list>¬————————</property>¬————</bean>¬————¬————<!--·spring.di.ch07·-->¬————<bean·id="map"·class="spring.di.ch07.MapCollection">¬————————<property·name="map">¬————————————<map·key-type="java.lang.String"¬————————————————value-type="java.lang.Object">¬————————————————<entry·key="홍길동"·value="80"/>¬————————————————<entry·key="이순신"·value="90"/>¬————————————————<entry·key="유관순"·value="85"/>¬————————————</map>¬————————</property>¬————</bean>¬</beans>¬¶
1. 더미 생성자아닐 경우 bean을 생성할 때 주입 시켜줘야함.
<bean id="serviceImpl" class="spring.di.ch02.ServiceImpl">
<!-- 생성자 이용 DI -->
<constructor-arg><!-- <constructor-arg ref="daoImpl"/> 도 가능 -->
<ref bean="daoImpl"/>
</constructor-arg>
</bean>
2. Setter()을 작성해두면 property 속성을 이용하여 세팅해줄 수 있음.
<bean id="serviceImpl2" class="spring.di.ch03.ServiceImpl">
<!-- 설정메서드 이용 DI : name="매개변수" ref="참조빈id" -->
<property name="daoImpl" ref="daoImpl2"/> <!-- name = 매개변수의 이름 -->
</bean>
3. p태그(?) 를 사용하여 세팅해줄 수 있음(이때도 setter메서드는 있어야하는듯)
<bean id="moniter" class="spring.di.ch04.SystemMoniter" p:time="10" p:smsSender-ref="smssender"/>
4. 생성자에 파라미터가 여러개 일 경우
<bean id="moniter2" class="spring.di.ch05.SystemMoniter">
<constructor-arg value="30"/><!-- 첫번째 파라미터 -->
<constructor-arg ref="smssender2"/><!-- 두번째 파라미터 -->
</bean>
5. List 객체에 값을 넣을 경우 - List<string> userName일 때 setUserName(List<String> userName){...}
<bean id="list" class="spring.di.ch06.ListCollection">
<property name="userName">
<!-- list 원소 추가 -->
<list>
<value>홍길동</value>
<value>길순신</value>
<value>신감찬</value>
<value>유관순</value>
</list>
</property>
</bean>
(만약 List<Class>라면 ref로 주입하면 되는걸까?)
6. Map 객체 넣을 경우 - Map<String, Object> map일 때 setMap(Map<String, Object> map){...}
<bean id="map" class="spring.di.ch07.MapCollection">
<property name="map">
<map key-type="java.lang.String"
value-type="java.lang.Object">
<entry key="홍길동" value="80"/>
<entry key="이순신" value="90"/>
<entry key="유관순" value="85"/>
</map>
</property>
</bean>
'Web > Spring' 카테고리의 다른 글
Controller에서 Controller로 이동할때 (0) | 2017.05.11 |
---|---|
Controller에서 RequestMapping등 케이스(chap05) (0) | 2017.05.11 |
스프링 핵심만 정리(ing) (0) | 2017.05.11 |
Simple Spring Maven에서 스프링 컨테이너 사용-1 (0) | 2017.03.12 |
이클립스에 Spring IDE 설치 (0) | 2017.03.12 |