spring 2.5 mvc 注解 ajax 实现
spring 2.5 的mvc 大量的使用了注解,减少了xml文件的配置,使spring 使用起来更为简单,在下面我以一个spring 2.5 mvc 注解的一个 ajax 的实现。
雷武銮
首先来看一下action类的配置:
import com.web.comm.actions.BasicAction;import com.web.module.user_manager.services.UserManagerService;@Controller@RequestMapping("/userManager.do")public class UserManagerAction extends BasicAction {@Autowiredprivate UserManagerService userManagerService;@RequestMapping(params="method=addUser")public void addUser(HttpServletResponse response,ModelMapmodelMap){JSONObject json=new JSONObject();try{json.put("username", "雷武銮");json.put("age", 22);this.outJsonString(response, json.toString());}catch(Exception e){e.printStackTrace();}}} 红色字的方法是本人写在主类当中用于后回用户请求的数据
主类也很简单,给方法传入一个response 然后用这个response 向客户端输入 ,这边用到了一个工具包:json-lib-2.2-jdk13.jar 如下代码
import java.io.IOException;import java.io.PrintWriter;import javax.servlet.http.HttpServletResponse;import net.sf.json.JSONArray;import net.sf.json.JSONObject;public class BasicAction {public void outJsonString(HttpServletResponse response,String json) {response.setContentType("text/javascript;charset=UTF-8");outString(response,json);}public void outJson(HttpServletResponse response,Object obj) {outJsonString(response,JSONObject.fromObject(obj).toString());}public void outJsonArray(HttpServletResponse response,Object array) {outJsonArray(response,JSONArray.fromObject(array).toString());}public void outString(HttpServletResponse response,String json) {try {PrintWriter out = response.getWriter();out.write(json);} catch (IOException e) {e.printStackTrace();}}public void outXMLString(HttpServletResponse response,String xmlStr) {response.setContentType("application/xml;charset=UTF-8");outString(response,xmlStr);}}
客服端请求:
<script type="text/javascript">function testAjax(){Ext.Ajax.request({url:ctx+'/userManager.do?method=addUser',success:function(response){var user=Ext.util.JSON.decode(response.responseText);alert('username:'+user.username+'\tage:'+user.age);},failure:function(response){alert('failure');}});}</script>
http://dl.iteye.com/upload/attachment/213752/ba3d5725-8a5f-3ae6-9435-6478866f869a.jpg
页:
[1]