我正在使用Spring Boot,并且需要使用A类中的一些值加载HashMap。
然后,我需要从B类,C类等的HashMap中获取值。
因此,我需要首先加载我的值的HashMap,然后再在其他所有类中使用此Map。
谢谢。
答案 0 :(得分:1)
现在尝试加载的值可以是静态的或动态的(从数据库中获取)
如果它是静态的
df = pd.concat([df1, df2, df3]).groupby('account_number', as_index=False)['hkd_margin'].sum()
print (df)
account_number hkd_margin
0 20 2.361950e+05
1 40 1.375593e+07
2 60 2.174999e+07
3 90 4.695600e+04
然后您可以按照@Gro的建议在“其他组件”类中进行自动装配
@Configuration
public class MyConfig {
@Bean
public Map<String, String> myVal(){
Map<String, String> map = new HashMap<String, String>();
map.put("Sample", "Value");
}
}
用于动态数据
使用XML
@Autowired
private Map<String, String> myData;
带注释
<bean class="com.example.DbConfigLoader" init-method="initMethod">
您的bean已准备好在任何其他类中使用。
答案 1 :(得分:0)
我假设您有一个Configuration类,该类创建并返回Spring Bean。
import org.springframework.context.annotation.*;
@Configuration
public class MyConfiguration {
/* Feel free to change the type of key and value in the Map
* from String, String to anything of your choice
*/
@Bean
public Map<String, String> helloWorld(){
java.util.Map<String, String> map = new java.util.HashMap<String, String>();
map.put("Hello", "world");
}
/*Your other bean exporting methods*/
}
完成后,您就可以将地图映射到任何这样的Spring Component或Service
@Component
public class Foo {
@Autowired
private Map<String, String> myMap;
/* You can even put the annotation on a setter */
}