Struts2不能给页面元素进行引用赋值

marf_cn marf_cn 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
一个页面中的元素,在action中定义:

private List<Info> infolist;

getter & setter 省略;

这里不是通常的dao取数据赋值,而是从一个列表中有选择的add到list里,所以我new了一个临时list:
List l = new ArrayList(); //这里如果直接infolist.add会报空指针,我又不想new它

l = …… //new 了一个list,然后赋值;

infolist = l ; //这里赋值给页面元素;

然后debug页面发现infolist是空的,百思不得其解。

然后改为 先new一下infolist,然后赋值,成功。

原因:午睡时突然醒悟:new 的 list 在heap里,当然不在页面的stack里。infolist变量在stack中,指向的对象在heap中,自然无法得到了。

然后又思索为什么infolist = dao.getlist().... 就可以?

dao也在action里面get、set了,取得的对象就可以在页面的stack中得到,大概是这个原因吧。高手指导一下。
最后我还是new了infolist,还有什么其他办法吗?
...全文

相关推荐

评论 3
收藏 已收藏
分享
返回顶部
marf_cn
Web 开发 81,108 成员 341,721 内容