您的位置:首页 > 编程语言 > Java开发

json插件(struts2-json-plugin)的使用

2017-02-13 00:54 477 查看

struts2-json-plugin的使用

struts2 提供,简化开发,简化json转换。

第一步:引入插件

将插件jar拷贝进来即可。

<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-json-plugin</artifactId>
<version>${struts2.version}</version>
</dependency>


第二步:将要转换为json的java对象压入root栈顶

插件(JSONResult)自动将java对象转换为json,并且写入响应。

//对象压入root栈顶
ActionContext.getContext().getValueStack().push(java对象);


第三步:返回json类型的结果集类型上

@Controller("userAction")
@Scope("prototype")
@Namespace("/")
@ParentPackage("json-default")//继承了json-default,才能用json类型的结果集
public class UserAction extends BaseAction<User> {
/**
* 用户修改密码
* @return
* @throws Exception
* @author aric
*/
@Action(value="user_editPassword",results={@Result(name="json",type="json")})//json结果集
public String editPassword() throws Exception {
//获取登陆用户
User loginUser = (User) getAttributeToSession("loginUser");
//将登陆用户id放入model中
model.setId(loginUser.getId());

//页面结果
HashMap<String,Object> resultMap = new HashMap<String,Object>();
try {
//调用service进行修改密码
userService.updateUserPassword(model);
//修改成功
resultMap.put("result", true);
} catch (Exception e) {
e.printStackTrace();
//修改失败
resultMap.put("result", false);
}
//将结果压入栈顶
ActionContext.getContext().getValueStack().push(resultMap);
//返回到json类型的结果集上面
return "json";
}

}


struts2-json-plugin的原理

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: