读书人

struts2组合JSON的Ajax支持

发布时间: 2012-11-07 09:56:10 作者: rapoo

struts2结合JSON的Ajax支持
参考资料http://json.org/json-zh.html


<%@ page language="java" import="java.util.*" pageEncoding="GBK"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><script src="prototype-1.6.0.2.js" type="text/javascript"></script><script src="json2.js" type="text/javascript"></script><script type="text/javascript">function RegisterAction(){//请求地址var url='register.action';//将表单域中的值序列号var params=Form.serialize('registerForm');//创建Ajax.request对象,对应发送请求var registerAjax=new Ajax.Request(url,{//请求方式method:'post',//请求参数parameters:params,//回调函数onComplete:processResponse,//是否异步发送asynchronous:true});}function processResponse(request){//使用JSON对象将服务器响应解析成JSON对象var res=JSON.parse(request.responseText);//遍历JSON对象的每个属性for(var theProperty in res){$("show").innerHTML+=theProperty+":"+res[theProperty]+"<br/>"}}</script><body><form id="registerForm" method="post">账号:<input type="text" name="username" id="username" /><br />密码:<input type="text" name="password" id="password" /><br />邮箱:<input type="text" name="email" id="email" /><br />地址:<input type="text" name="address" id="address" /><br /><input type="button" value="提交" onclick="RegisterAction()" /></form><div id="show"></div></body></html>

package demo;import java.util.HashMap;import java.util.Map;import org.apache.struts2.json.annotations.JSON;import com.opensymphony.xwork2.Action;import com.opensymphony.xwork2.ActionSupport;public class Register extends ActionSupport {/*----------------------------------------------------*/private int[] ints = {10, 20};public int[] getInts() {return ints;}public void setInts(int[] ints) {this.ints = ints;}/*----------------------------------------------------*/private Map map=new HashMap();public Map getMap() {return map;}public void setMap(Map map) {this.map = map;}/*----------------------------------------------------*/private String username;private String password;private transient String email;private String address;public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}//被注释掉的GET方法不会被序列化//public String getPassword() {//return password;//}public void setPassword(String password) {this.password = password;}public String getEmail() {return email;}public void setEmail(String email) {this.email = email;}public String getAddress() {return address;}public void setAddress(String address) {this.address = address;}/*----------------------------------------------------*/@JSON(name="newName")@Overridepublic String execute() throws Exception {// TODO Auto-generated method stubmap.put("name", "熊佳佳");return Action.SUCCESS;}}

<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd"><struts><package name="demo" extends="json-default"><action name="register" class="demo.Register"><result type="json"/></action><action name=""><result>.</result></action></package></struts>    

读书人网 >JavaScript

热点推荐