struts2使用ajax的几个方式

我们知道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;
	}

}





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值