gpt4 book ai didi

java - 如何在 Spring 中将属性的 HashMap 传递给 Autowiring 的 bean?

转载 作者:行者123 更新时间:2023-11-29 04:00:51 24 4
gpt4 key购买 nike

而不是像这样在我的应用程序中实例化一个 PersistenceManagerFactory:

Properties properties = new Properties();
properties.setProperty("javax.jdo.PersistenceManagerFactoryClass",
"org.datanucleus.jdo.JDOPersistenceManagerFactory");
properties.setProperty("javax.jdo.option.ConnectionDriverName","com.mysql.jdbc.Driver");
properties.setProperty("javax.jdo.option.ConnectionURL","jdbc:mysql://localhost/myDB");
properties.setProperty("javax.jdo.option.ConnectionUserName","login");
properties.setProperty("javax.jdo.option.ConnectionPassword","password");
PersistenceManagerFactory pmf = JDOHelper.getPersistenceManagerFactory(properties);

我想在 Spring 中为依赖注入(inject)配置它,如下所示:

<bean id="persistenceManagerFactory" class="org.springframework.orm.jdo.LocalPersistenceManagerFactoryBean" lazy-init="true">
<property name="persistenceManagerFactoryName" value="transactions-optional" />
</bean>

但我不确定如何在 application-context.xml 中传递 Properties(不使用 jdoconfig.xml) .

是否可以在 application-context.xml 中为 Autowiring 传递所有这些 Properties 值?

最佳答案

执行此操作的简单方法是使用 <props>元素来指​​定 Properties 对象及其条目。这在 Section 3.4.2.4 中有描述。 Spring 引用手册。

对于更复杂的用例,还有其他选择;例如有一个属性工厂类可以从多个来源组装一个 Properties 对象。

关于java - 如何在 Spring 中将属性的 HashMap 传递给 Autowiring 的 bean?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3744186/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com