struts2使用ajax的几个方式

来源:互联网 发布:图像识别软件价格 编辑:程序博客网 时间:2024/06/14 04:03
我们知道ajax本质上还是一个标准的http请求,其特别之处在于能完成局部的异步请求。所以这里讲的所谓方式,其实只是怎么把请求的内容返回给客户端的几种方法。

一、response方式

HttpServletResponse response = ServletActionContext.getResponse();response.getWriter().println("ok");

二、返回指定的页面

struts2的action通常在struts.xml中配置一个处理完成后指向的页面,因此可以将整个页面作为返回的内容,这在一些局部列表刷新很有用。


三、返回json格式

struts2对返回json格式有较好的支持,简单示例代码如下

struts2.xml配置:

<package name="jsonaction" namespace="/"  extends="json-default">    <action name="getlist" class="com.taozhi.action.ChatAction" method="getlist">         <result type="json"><param name="root">result</param></result>   </action>          </package>

java代码:

package com.taozhi.action;import java.io.IOException;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import net.sf.json.JSONObject;import org.apache.struts2.ServletActionContext;import org.apache.struts2.json.annotations.JSON;public class ChatAction implements Action{private String result;public String getlist(){Map<String,String> chatroom = new HashMap<String,String>();StringBuffer roomlist = new StringBuffer("room");StringBuffer memberlist = new StringBuffer("member");            chatroom.put("roomlist", roomlist.toString());            chatroom.put("memberlist", memberlist.toString());            JSONObject jo = JSONObject.fromObject(chatroom);            this.result = jo.toString();    return SUCCESS;}public String getResult() {return result;}public void setResult(String result) {this.result = result;}}





原创粉丝点击