一、jsp向其对应的Action传值
只要其指明的Action中有相应的getter和setter函数就可以,
如:在jsp中,有一个变量为name,如果想在能够响应的Action中获得这个变量,直接有public string getName()和public void setName(String name);就行了。
在Action类中,把Name作为成员变量并不是必须的,可以要,也可以不要,但是一定要有getter和setter函数,这是获得值的保证。
二、jsp脚本中获得Action的值
1.通过struts标签获得值
当然这个很简单,直接可以在网页给输出来。
<s:property value="name">
但是如果把这个name变量赋值给jsp脚本中的变量呢?
2.通过ValueStack
工作原理:当访问一个action的时候,此时struts2会把整个action压入valuestack的顶部,此时valuestack就一个action对象
具体使用:1.<%@ page import="com.opensymphony.xwork2.util.*"%>
2.获得ValueStack对象:ValueStack vs = (ValueStack) request.getAttribute("struts.valueStack");
3.譬如获得:String name=vs.findString("name");