在JSP里面中
String[] type_name = null;
ArrayList list = TotTaskFuncs.TotLy(srtTime, endTime, iFrom, iIsImp, lTotal, type_name);
在TotTaskFuncs类TotLy方法中对type_name赋值后,在jsp取type_name还是为null,有没有什么解决办法?
String[] type_name = null;
ArrayList list = TotTaskFuncs.TotLy(srtTime, endTime, iFrom, iIsImp, lTotal, type_name);
在TotTaskFuncs类TotLy方法中对type_name赋值后,在jsp取type_name还是为null,有没有什么解决办法?
解决方案 »
- js代码无法执行~~JSP表单验证~~给分不吝啬
- 为何Flex整合后jsp页面不能打开,如何解决?
- 问个问题
- 新人求教:一组radioButton如何在jsp设置选中,如何在后台设置选中,如何实现readonly的状态,谢谢~
- jar包引起 HTTP Status 404 - Servlet action is not available
- 新手上路,关于Weblogic8服务器设置的一些疑问
- struts 客户端数据校验的问题
- 如何配置TOMCAT5.0+struts-1.3.8
- 怎么样动态统计聊天室的人数
- 如何用jsp实现文件上传?
- 如何写满足这样需求的正则表达式??
- 关于一个tomcat和sqlserver2005的问题
这样处理:ArrayList tlist = new ArrayList(); tlist = listArrays.asList(type_name );
requeest.setAbtrue("tlist",tlist );jsp页面:
requeest.getAbtrue("tlist" );即可
或者用c标签的for:each 编列展现
String[] type_name = null;
传递的是type_name指向对象的拷贝,这里其实是null.就暂且理解为两个null是不一样的吧.
ArrayList list = TotTaskFuncs.TotLy(srtTime, endTime, iFrom, iIsImp, lTotal, type_name);
不论你的TotLy 方法写了什么,做出的改变都是针对 那个拷贝对象的改变.原来那个对象根本没有变化.
运行一下代码看下
public class TestString {
public TestString(){
}
public static void change(String[] ss){
ss = new String[5];
}
public static void main(String[] abc){
String[] ss = null;change(ss);
System.out.println(ss);
}
}int和其他基本数据类型都是一样.如果是对象类型的话就不一样了.对这方面有兴趣的可以看下:
http://blog.csdn.net/longtenggdf/archive/2009/09/28/4605728.aspx.
这对java 值传递有详细的说明.
解决办法只有通过返回值来实现了.要不就是不要用String[] ,用list<String>代替.