最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

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

旗下网站admin37浏览0评论

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

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

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的原理

发布评论

评论列表(0)

  1. 暂无评论