
思路:后台action要把传递到页面的属性封装到map中,然后封装好的数据将会被Struts2转换成JSON字符串。
1、action层的代码:
public class JsonAction extends ActionSupport{
private static final long serialVersionUID = 1L;
private Map<String,Object> dataMap;
private String key = "Just see see";
public String json() {
// dataMap中的数据将会被Struts2转换成JSON字符串,所以这里要先清空其中的数据
dataMap = new HashMap<String, Object>();
User user = new User();
usersetName("张三");
usersetPassword("123");
dataMapput("user", user);
// 放入一个是否 *** 作成功的标识
dataMapput("success", true);
// 返回结果
return SUCCESS;
}
public Map<String, Object> getDataMap() {
return dataMap;
}
//设置key属性不作为json的内容返回
@JSON(serialize=false)
public String getKey() {
return key;
}
}
2、配置aciton,在strutsxml中的写法如下:
<xml version="10" encoding="UTF-8" >
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 20//EN"
""); windowtt = 1682737218;
<s:form action="student_action" method="post">这句话里的
action属性的值,要根据Struts2的配置文件strutsxml里的设置来定:
比如strutsxml里是这样的:
<action name="student_action123" value="student_action"/>
那么页面里就应该写(假设是struts缺省包和默认命名空间):
<s:form action="student_action123action" method="post">也就是说,提交表单时的目标是配置文件中action的name属性决定的。
加不加action后缀,可以看strutsxml里的配置常数
<constant name="strutsactionextension" value=",action"/>来定,如这个设置就是加不加后缀都可以(好像是struts2的高版本都默认可以不加后缀)。
以上就是关于struts2中的json格式数据怎么传到页面 js怎么获取得到全部的内容,包括:struts2中的json格式数据怎么传到页面 js怎么获取得到、jsp如何获取struts2 action中返回的对象的值、struts2中的actions接收不到前台form表单的值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)