Struts2+JQuery发送Ajax请求
Action类代码:
1 package com.example.action; 2 3 public class JsonAction { 4 private String name; 5 private int id; 6 7 public String test() { 8 name = "hello world"; 9 id = 100; 10 return "success"; 11 } 12 13 public String getName() { 14 return name; 15 } 16 17 public void setName(String name) { 18 this.name = name; 19 } 20 21 public int getId() { 22 return id; 23 } 24 25 public void setId(int id) { 26 this.id = id; 27 } 28 29 }
struts.xml
1 <?xml version="1.0" encoding="UTF-8" ?> 2 <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd"> 3 <struts> 4 <package name="demo" extends="json-default" namespace="/"> 5 <action name="jsonTest" class="com.example.action.JsonAction" method="test"> 6 <result name="success" type="json"> 7 <param name="contentType">text/plain</param> 8 </result> 9 </action> 10 </package> 11 </struts>
jsonTest.jsp页面代码:
1 <%@ page language="java" contentType="text/html; charset=UTF-8" 2 pageEncoding="UTF-8"%> 3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 4 <html> 5 <head> 6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 7 <script type="text/javascript" src="js/jquery-1.7.min.js"></script> 8 <script type="text/javascript"> 9 $(function(){ 10 $("#test").click(function(){ 11 $.ajax({ 12 url:"jsonTest.action", 13 type:"post", 14 dataType:"json", 15 success:function(data){ 16 alert(data.name); 17 alert(data.id); 18 } 19 }); 20 }); 21 }); 22 </script> 23 <title>JsonTest</title> 24 </head> 25 <body> 26 <input type="button" value="JsonTest" id="test"/> 27 </body> 28 </html>
当返回JSON数据时,Struts2将Action对象转换成JSON对象,返回到浏览器。
posted on 2013-09-05 16:24 Arts&Crafts 阅读(548) 评论(0) 编辑 收藏 举报
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构