今天在学习ajax异步请求的时候不知道为何ajax异步请求的action被自动执行了两次,action中的java代码从头到尾看了好几遍也没有错误,后来经过网上查资料才发现,struts2 中JSON的原理是在ACTION中的get方法都会序列化,所以前面是get的方法只要没指定不序列化,都会执行解决方法。Action中的业务方法前别加get 或者 set(属性的get set 除外)
所有解决方法有两种:
①改方法名,显而易见,只要不用get开头的方法就行。
②用@JSON(serialize=false)指定方法不序列化如import com.googlecode.jsonplugin.annotations.JSON;@JSON(serialize=false) public String getChild() throws
Exception{ .............. .............. return "success"; }