微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

action返回json到前台

在Web开发中,经常需要向前端传递JSON格式的数据,我们可以使用后台的Action来实现这个功能。下面是一段简单的Java代码示例:

public class UserAction extends ActionSupport {
    private String userName;
    private String password;
    
    public String execute() {
        // 执行一些业务逻辑处理
        
        JSONObject json = new JSONObject();
        json.put("username",userName);
        json.put("password",password);
        
        HttpServletResponse response = ServletActionContext.getResponse();
        response.setCharacterEncoding("UTF-8");
        response.setContentType("application/json;charset=UTF-8");
        
        try {
            PrintWriter out = response.getWriter();
            out.write(json.toString());
            out.flush();
            out.close();
        } catch (IOException e) {
            e.printstacktrace();
        }
        
        return NONE;
    }
    
    // 省略getter和setter方法
}

action返回json到前台

以上代码中,我们先声明了一个JSONObject对象,然后向其中添加了两个属性值,分别是用户名密码。接着我们获取了HttpServletResponse对象,设置编码和数据类型为JSON格式,然后通过PrintWriter对象将JSON数据输出到前端页面。最后返回的结果类型为NONE,表示不需要返回任何页面

在前端页面中,我们可以使用jQuery中的ajax方法来请求后台Action,获取返回的JSON数据。代码如下:

$.ajax({
    type: "POST",url: "user.do",dataType: "json",success: function(result) {
        console.log(result.username);
        console.log(result.password);
    },error: function(XMLHttpRequest,textStatus,errorThrown) {
        console.log(XMLHttpRequest.status);
        console.log(XMLHttpRequest.readyState);
        console.log(textStatus);
    }
});

以上代码中,我们使用了POST方法请求user.do这个Action,指定dataType为JSON格式。如果请求成功,就可以打印出获取到的用户名密码

总之,使用Action返回JSON数据是非常简单和方便的,可以大大提高Web开发的效率。只需要在后台处理好数据,然后通过PrintWriter对象输出到前端页面即可。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐