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
- tiles.xml
- 웹게임
- 배포
- phaser
- jQuery
- PL/SQL
- 비트코인
- EC2
- model1
- RDS
- express
- 알고리즘
- autowired
- Cookie
- Ajax
- 도커
- 블록체인
- JavaScript
- CSS
- websocket
- 웹소켓
- JSP
- Servlet
- AWS
- docker
- Spring
- 암호화
- node.js
- HTML
- SQL
Archives
- Today
- Total
記錄
Spring) .xml을 통한 HashMap 세팅 본문
public interface ProtocolHandler {
}
public class RestHandler implements ProtocolHandler {
}
public class RssHandler implements ProtocolHandler {
}
public class ProtocolHandlerFactory {
//Map(key , value)
private Map<String, ProtocolHandler> handlers;
public void setHandlers(Map<String, ProtocolHandler> handlers) {
this.handlers = handlers;
System.out.println("setter 주입 성공 : " + this.handlers);
}
}
public class Program {
public static void main(String[] args) {
/*
ProtocolHandlerFactory factory = new ProtocolHandlerFactory();
Map<String, ProtocolHandler> map = new HashMap<>();
map.put("rss", new RssHandler());
map.put("rest", new RestHandler());
factory.setHandlers(map);
*/
ApplicationContext context =
new GenericXmlApplicationContext("classpath:DI_09_Spring/DI_09.xml");
}
}
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<!--
IOC 컨테이너 (Spring 전용 메모리 공간) 안에
생성될 객체를 만들고 조립(의존)관계 설정 하는 파일
ProtocolHandlerFactory factory = new ProtocolHandlerFactory();
Map<String, ProtocolHandler> map = new HashMap<>();
map.put("rss", new RssHandler());
map.put("rest", new RestHandler());
factory.setHandlers(map);
-->
<bean id="factory" class="DI_09_Spring.ProtocolHandlerFactory">
<property name="handlers">
<map>
<entry>
<key><value>rss</value></key>
<ref bean="rsshandler" />
</entry>
<entry>
<key><value>rest</value></key>
<!-- 이렇게 bean을 만들면서 여기서 넣어도 된다 -->
<bean class="DI_09_Spring.RestHandler"></bean>
</entry>
</map>
</property>
</bean>
<!-- 이렇게 bean을 만들어서 위에서 bean id로 넣어도 된다 -->
<bean id="rsshandler" class="DI_09_Spring.RssHandler" ></bean>
</beans>
'Web > Spring framework' 카테고리의 다른 글
Spring) .properties 파일의 활용 (0) | 2018.04.28 |
---|---|
Spring) Properties Class의 활용 (0) | 2018.04.28 |
Spring) .xml을 통한 List 세팅 (0) | 2018.04.28 |
Spring) .xml을 통한 변수값 설정, 생성자 활용 (0) | 2018.04.28 |
Spring) getBean과 객체의 생성 (0) | 2018.04.26 |
Comments