ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Spring] Collection
    SPRING 2021. 8. 19. 16:55

     

     

     

    세 가지 유형이 있다. (List, Set, Map)

     

    1. List

     

    package com.springbook.ioc.injection;
    
    import java.util.List;
    
    public class CollectionBean {
    
    	private List<String> addressList;
    
    	public List<String> getAddressList() {
    		return addressList;
    	}
    
    	public void setAddressList(List<String> addressList) {
    		System.out.println(addressList.size());
    		this.addressList = addressList;
    	}
    
    }
    <?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">
    
    	<bean id="collection" class="com.springbook.ioc.injection.CollectionBean">
    		<property name="addressList">
    			<list>
    				<value>서울시 영등포구</value>
    				<value>부천시 원미구</value>
    			</list>
    		</property>
    	</bean>
    </beans>

     

     

    package com.springbook.ioc.injection;
    
    import java.util.List;
    
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.support.AbstractApplicationContext;
    import org.springframework.context.support.GenericXmlApplicationContext;
    
    public class CollectionBeanClient {
    
    	public static void main(String[] arhs) {
    		AbstractApplicationContext factory = new GenericXmlApplicationContext("applicationContext2.xml");
    		
    		CollectionBean bean = (CollectionBean)factory.getBean("collectionBean");
    		
    		
    		List<String> list = bean.getAddressList();
    		for(int i = 0 ; i<list.size(); i++) {
    			String a = list.get(i).toString();
    			System.out.println(a);
    		}
    		
    		
    	}
    
    }

     

     

     

     

    2.set

     

    package com.springbook.ioc.injection;
    
    import java.util.Set;
    
    public class CollectionBean {
    
    	private Set<String> addressList;
    
    	public Set<String> getAddressList() {
    		return addressList;
    	}
    
    	public void setAddressList(Set<String> addressList) {
    		System.out.println(addressList.size());
    		this.addressList = addressList;
    	}
    
    }
    <?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">
    
    	<bean id="collectionBean" class="com.springbook.ioc.injection.CollectionBean">
    		<property name="addressList">
    			<set>
    				<value>서울시 영등포구</value>
    				<value>부천시 원미구</value>
    			</set>
    		</property>
    	</bean>
    </beans>
    package com.springbook.ioc.injection;
    
    import java.util.Set;
    
    import org.springframework.context.support.AbstractApplicationContext;
    import org.springframework.context.support.GenericXmlApplicationContext;
    
    public class CollectionBeanClient {
    
    	public static void main(String[] arhs) {
    		AbstractApplicationContext factory = new GenericXmlApplicationContext("applicationContext2.xml");
    		
    		CollectionBean bean = (CollectionBean)factory.getBean("collectionBean");
    		
    		
    		Set<String> addressList = bean.getAddressList();
    		 for(String list : addressList) {
    	         System.out.println(list);
    	      }
    
    		
    		
    	}
    
    }

     

     

     

    3.map

    package com.springbook.ioc.injection;
    
    import java.util.Map;
    
    public class CollectionBean {
    
    	private Map<String,String> addressList;
    
    	public Map<String,String> getAddressList() {
    		return addressList;
    	}
    
    	public void setAddressList(Map<String,String> addressList) {
    		System.out.println(addressList.size());
    		this.addressList = addressList;
    	}
    
    	
    }

     

    <?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">
    
    	<!-- <bean id="collectionBean" class="com.springbook.ioc.injection.CollectionBean">
    		<property name="addressList">
    			<set>
    				<value>서울시 영등포구</value>
    				<value>부천시 원미구</value>
    			</set>
    		</property>
    	</bean> -->
    	
    	<bean id="collectionBean" class="com.springbook.ioc.injection.CollectionBean">
    		<property name="addressList">
    			<map>
    				<entry>
    					<key>
    						<value>고길동</value>
    					</key>
    					<value>서울시 영등포구</value>
    				</entry>
    				<entry>
    					<key>
    						<value>마이클</value>
    					</key>
    					<value>부천시 원미구</value>
    				</entry>
    			</map>
    		</property>
    	</bean> 
    </beans>
    package com.springbook.ioc.injection;
    
    import java.util.Iterator;
    import java.util.Map;
    
    import org.springframework.context.support.AbstractApplicationContext;
    import org.springframework.context.support.GenericXmlApplicationContext;
    
    public class CollectionBeanClient {
    
    	public static void main(String[] arhs) {
    		AbstractApplicationContext factory = new GenericXmlApplicationContext("applicationContext2.xml");
    		
    		CollectionBean bean = (CollectionBean)factory.getBean("collectionBean");
    		
    		Map<String, String> addressList = bean.getAddressList();
            
            1.
    		Iterator<String> list = addressList.keySet().iterator();
    		while(list.hasNext()) {
    			String key = list.next();
    			String value = addressList.get(key);
    			System.out.println(String.format("키:%s, 값:%s", key,value));
    
    			//System.out.println(String.format("키:%s, 값:%s",key,addressList.get(key)));
    		}
    
    		2.
            for(String list : addressList.keySet()) {
            	System.out.println(String.format("키 : %s, 값 : %s",list,addressList.get(list)));
            }
            
    		
    		
    	}
    
    }

     

     

    4.properties

    package com.springbook.ioc.injection;
    
    import java.util.Properties;
    
    public class CollectionBean {
    
    	private Properties addressList;
    
    	public Properties getAddressList() {
    		return addressList;
    	}
    
    	public void setAddressList(Properties addressList) {
    		this.addressList = addressList;
    	}
    	
    	
    }
    <?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">
    
    	<bean id="collectionBean" class="com.springbook.ioc.injection.CollectionBean">
    		<property name="addressList">
    			<props>
    				<prop key="고길동">서울시 영등포구 여의도1동</prop>
    				<prop key="마이클">서울시 영등포구 여의도2동</prop>
    			</props>
    		</property>
    	</bean>
    </beans>
    package com.springbook.ioc.injection;
    
    import java.util.Properties;
    
    import org.springframework.context.support.AbstractApplicationContext;
    import org.springframework.context.support.GenericXmlApplicationContext;
    
    public class CollectionBeanClient {
    
    	public static void main(String[] arhs) {
    		AbstractApplicationContext factory = new GenericXmlApplicationContext("applicationContext2.xml");
    		
    		CollectionBean bean = (CollectionBean)factory.getBean("collectionBean");
    		Properties addressList = bean.getAddressList();
    		
    		for(String list : addressList.stringPropertyNames()) {
    			System.out.println(String.format("키:%s,값:%s", list,addressList.get(list)));
    		}
    		
    	}
    
    }
    728x90

    'SPRING' 카테고리의 다른 글

    [SPRING] 데이터 추가, 변경, 삭제  (0) 2021.08.24
    [SPRING] Spring 의존성  (0) 2021.08.21
    [SPRING] Spring Container  (0) 2021.08.21
    [spring] 20AUG21 @Autowired @Service @Repository  (0) 2021.08.20
    [spring]의존 자동 주입 어노테이션  (0) 2021.08.20
Designed by Tistory.