【问题标题】:Spring inject values弹簧注入值
【发布时间】:2012-12-06 10:40:26
【问题描述】:

我对 spring 很陌生并开始使用。 我有一个要求,我有类似属性的东西 像地区..美国,英国

Regions
-------
US
UK

当我读到美国时,它的价值观类似于

US
----
(KEY)primary----VALUE(primaryValue)
(KEY)secondary----VALUE(secondaryValue)

。 . 类似

UK
--
(KEY)primary----VALUE(primaryValue)
(KEY)secondary----VALUE(secondaryValue)

。 . 并且区域可能会随着需求的变化及其下方的键值对而增加

有人提示我,所以我可以继续 提前谢谢你

【问题讨论】:

  • 你想在网站上说 I18N 吗?

标签: java spring javabeans inject


【解决方案1】:

您可以根据区域制作不同的属性,当服务器启动时,所有属性文件都会加载。您可以制作 PropertiesFileReader.java 文件来读取您的属性。

【讨论】:

  • NO no..我不想使用属性文件,而是使用 Bean.xml,其 contextobject 可用于获取属性并在我的应用程序中使用
【解决方案2】:

你需要创建两个bean一个List和一个Map,换句话说List<Map>是你需要的

<bean id="regions" class="java.util.ArrayList">
    <constructor-arg>
        <list>
            <ref bean="usMap" />
            <ref bean="ukMap" />                
        </list>
    </constructor-arg>
</bean>

<util:map id="usMap" map-class="java.util.HashMap">
    <entry key="primary" value="someValue"/>
    <entry key="secondary" value="someValue"/>
</util:map>

【讨论】:

  • 谢谢你 joshi 这是我所期待的,但我如何在应用程序中使用它们..?
  • 只要在你的应用程序中使用 bean regions,我假设你的应用程序中已经有了 spring 上下文
  • 是的,是的....我确实有春天的背景...让我尝试以这种方式发布...无论如何,非常感谢及时响应..:-)
  • 你能告诉我区域 Bean 类应该如何,因为当我尝试创建 bean 区域时,我收到以下错误 (org.springframework.beans.factory.BeanCreationException) org.springframework。 beans.factory.BeanCreationException:创建文件 [D:\Projects\Bean.xml] 中定义的名称为 'circles' 的 bean 时出错:在使用键 [0] 设置构造函数参数时无法解析对 bean 'US' 的引用;嵌套异常是 org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'US' is defined
  • Region bean 是 ArrayList,您是否创建了名称为 US 的 bean
猜你喜欢
  • 2012-03-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多