Spring初始化Map的问题

问题描述

action中定义的mapprivateMap<String,String>myMap=newHashMap<String,String>();publicMap<String,String>getMyMap(){returnmyMap;}publicvoidsetMyMap(Map<String,String>myMap){this.myMap=myMap;}

xml配置如下<beanid="complaintAction"class="com.baisheng.zhich.complex.action.ComplaintAction"><propertyname="complaintService"ref="complaintService"></property><propertyname="myMap"><map><entrykey="0"value="test1"></entry><entrykey="1"value="test2"></entry><entrykey="2"value="test3"></entry></map></property></bean>

complaintService被初始化了,myMap却没有被初始化,求知道原因的告诉下为什么???

解决方案

本帖最后由 zh772755185 于 2014-12-02 10:15:56 编辑
解决方案二:
<mapkey-type="java.lang.String"value-type="java.lang.String">

解决方案三:
引用1楼zhangjihao的回复:

<mapkey-type="java.lang.String"value-type="java.lang.String">

加了之后还是一样的,map没初始化
解决方案四:
把代码里的myMap初始化去掉试试呢,别在代码里new
解决方案五:
引用3楼lsongiu86的回复:

把代码里的myMap初始化去掉试试呢,别在代码里new

我后来单独做bean测试的时候spring初始化map是可以的,但是到了项目里不知道为什么就不行了
解决方案六:
流程是这样的
解决方案七:
Ext.Ajax.request({url:"test.action",method:"GET",async:false,//ASYNC是否异步(TRUE异步,FALSE同步)success:function(response,opts){console.log(response.responseText);console.log(data);}//请求成功的回调函数});

解决方案八:
我是刚刚的楼主,连续回复三次所以换了个号,页面调用action请求,<packagename="complaint"extends="struts-default"><actionname="test"class="com.baisheng.zhich.complex.action.ComplaintAction"method="test"><resultname="success">/oa/policy.jsp</result></action></package>

,publicStringtest(){System.out.println(myMap);returnSUCCESS;}

test方法里的myMap无值,我用debug看了this对象,发现complaintService是初始化了,而myMap却没有,谁知道什么原因?

时间: 2024-08-02 14:29:21

Spring初始化Map的问题的相关文章

spring注入-spring 注入Map&amp;amp;lt;String, Map&amp;amp;lt;String, String&amp;amp;gt;&amp;amp;gt;

问题描述 spring 注入Map<String, Map<String, String>> spring注入这类数据的时候如果配置文件写成如下方式 http://ask.csdn.net/# <!-- 数据审核的关键信息配置 --> <!-- 快递网点 --> WEB_EXPRESS_STATION 快递网点审核 STATIONNAME ID STATUS 0 1 会报Could not resolve matching constructor (hint

Spring初始化Bean的过程

最近打算写一个spring-mvc的插件,便于做接口测试,既然是插件,那就是零耦合.知道spring有几个接口,BeanPostProcessor, InitializingBean, DisposableBean, ApplicationContextAware, BeanFactoryPostProcessor,这几个接口也涉及到bean的生命周期. 贴代码: 调用类: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 2

SSH整合环境,spring初始化对象为空

问题描述 我的情况是这样的...启动tomcat服务器....后台没输出什么解析spring配置文件的信息..applicationConfiguration的配置如下.<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPEbeansPUBLIC"-//SPRING//DTDBEAN2.0//EN""http://www.springframework.org/dtd/spring-

浅谈spring容器中bean的初始化_java

当我们在spring容器中添加一个bean时,如果没有指明它的scope属性,则默认是singleton,也就是单例的. 例如先声明一个bean: public class People { private String name; private String sex; public String getName() { return name; } public void setName(String name) { this.name = name; } public String get

Java中List与Map初始化的一些写法分享_java

Java的在还没有发现新写法之前时,我一直是这么初始化List跟Map: 复制代码 代码如下: //初始化List    List<string> list = new ArrayList</string><string>();    list.add("www.jb51.net");    list.add("string2");    //some other list.add() code......    list.add

spring 单例多例,默认,懒加载,初始化调用

(1)spring 默认是单例, 单例情况下:所有线程对于同一个类共同拥有一个对象,此时如果在类里面创建一个类变量如下 由于所有线程共享一个类对象,所以也共享一个类变量,每次请求都会增加 @Controller @RequestMapping("/user") public class User { private int i=0;//类变量 @RequestMapping("/list.shtm") public String list() { i++; Syst

Java中List与Map初始化的一些写法

Java的在还没有发现新写法之前时,我一直是这么初始化List跟Map:  代码如下 复制代码  //初始化List     List<string> list = new ArrayList</string><string>();     list.add("string1");     list.add("string2");     //some other list.add() code......     list.ad

Spring Boot 动态数据源(Spring 注解数据源)

本文实现案例场景: 某系统除了需要从自己的主要数据库上读取和管理数据外,还有一部分业务涉及到其他多个数据库,要求可以在任何方法上可以灵活指定具体要操作的数据库. 为了在开发中以最简单的方法使用,本文基于注解和AOP的方法实现,在spring boot框架的项目中,添加本文实现的代码类后,只需要配置好数据源就可以直接通过注解使用,简单方便. 一配置二使用1. 启动类注册动态数据源2. 配置文件中配置多个数据源3. 在需要的方法上使用注解指定数据源 1.在启动类添加 @Import({Dynamic

spring源码学习之:spring容器的applicationContext启动过程

 Spring 容器像一台构造精妙的机器,我们通过配置文件向机器传达控制信息,机器就能够按照设定的模式进行工作.如果我们将Spring容器比喻为一辆汽车,可以将 BeanFactory看成汽车的发动机,而ApplicationContext则是 整辆汽车,它不但包括发动机,还包括离合器.变速器以及底盘.车身.电气设备等其他组件.在ApplicationContext内,各个组件按部就班. 有条不紊地完成汽车的各项功能. ApplicationContext内部封装 了一个BeanFactory对