복붙노트

[SPRING] Spring에서 문자열 배열을 빈에 삽입

SPRING

Spring에서 문자열 배열을 빈에 삽입

<?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="test" class="com.Test">
        <constructor-arg>
            <list>
                <value>aa</value>
                <value>bb</value>
                <value>cc</value>
            </list>
        </constructor-arg>
    </bean>
</beans>

이것은 현재 나의 XML입니다. 테스트 만 목록을 가져 가면 모든 것이 잘 될 것입니다.

문제는 Test가 문자열 배열을 사용한다는 것입니다.

봄에 그것을하는 방법?

해결법

  1. ==============================

    1.다음을 사용해야합니다.

    다음을 사용해야합니다.

    <constructor-arg>
        <array>
            <value>aa</value>
            <value>bb</value>
            <value>cc</value>
        </array>
    </constructor-arg>
    

    또한 전달할 값 유형을 지정할 수 있습니다.

    <array value-type="java.lang.String">
      <value>aa</value>
      <value>bb</value>
      <value>cc</value>
    </array>
    

    가치 유형

  2. ==============================

    2. 대신에 사용

    대신에 사용

    <array>
      <value>aa</value>
      <value>bb</value>
      <value>cc</value>
    </array>
    
  3. ==============================

    3.Spring 버전 3.2.8을 사용하면

    Spring 버전 3.2.8을 사용하면

    <constructor-arg>
        <list>
            <value>aa</value>
            <value>bb</value>
            <value>cc</value>
        </list>
    </constructor-arg>
    

    문제없이.

  4. ==============================

    4.생성자가 String []을 매개 변수로 (String ... 포함) 포함하는 경우 쉼표로 구분 된 목록을 제공 할 수 있습니다.

    생성자가 String []을 매개 변수로 (String ... 포함) 포함하는 경우 쉼표로 구분 된 목록을 제공 할 수 있습니다.

    <constructor-arg value="Hindustan Moters,Tata Moters,Ashoka Leyland"/>
    

    이것은 예를 들어, 예를 들어. 빈으로 H2 DB 서버. 예 : 이리.

    어느 버전이 그것을 소개했는지 확실하지 않습니다.

  5. from https://stackoverflow.com/questions/13528250/inject-array-of-strings-to-a-bean-in-spring by cc-by-sa and MIT license