JSON

Struts2整合jQuery和JSON进行简单的异步数据交换入门教程

字号+ 作者:H5之家 来源:H5之家 2015-10-10 15:20 我要评论( )

最近做项目的时候,需要用到JSON和jQuery进行异步数据交换 在网上查了好久,搞了一天多才写出来,所以拿出来和大家分享一下 好了,废话到此为止 1. 搭建Struts2运行环境 引入Struts2所需的jar包,另外还要引入一个JSON插件包:struts-2.3.4.1/lib/(前面是位

最近做项目的时候,需要用到JSON和jQuery进行异步数据交换

在网上查了好久,搞了一天多才写出来,所以拿出来和大家分享一下

好了,废话到此为止


1. 搭建Struts2运行环境

引入Struts2所需的jar包,另外还要引入一个JSON插件包:struts-2.3.4.1/lib/(前面是位置)struts2-json-plugin-2.3.4.1.jar


2. 编写web.xml

<?xml version="1.0" encoding="UTF-8"?> <web-app version="3.0" xmlns="" xmlns:xsi="" xsi:schemaLocation=" "> <display-name></display-name> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <!-- Struts2核心Filter --> <filter> <filter-name>struts</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> </filter> <filter-mapping> <filter-name>struts</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> </web-app>

3. struts.xml

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" ""> <struts> <!-- 设为开发模式,是出错提示信息更详细 --> <constant name="struts.devMode" value="true"></constant> <!-- 当配置文件修改时,自动重新加载该配置文件 --> <constant name="struts.configuration.xml.reload" value="true"></constant> <!-- Struts2使用JSON和jQuery进行数据交互 --> <!-- 这里要注意的是:1. package必须继承json-default 2. result的类型必须是json --> <package name="json" namespace="/json" extends="json-default"> <action name="JsonAction" class="org.action.JsonAction"> <result type="json"></result> </action> </package> </struts> 4. Person.javapublic class Person{ // 姓名 private String name; // 密码 private String password; //getter/setter略 } 5. JsonAction.javapackage org.action; import java.util.ArrayList; import java.util.List; import org.model.Person; import com.opensymphony.xwork2.ActionSupport; public class JsonAction extends ActionSupport { //Person对象 private Person person; //爱好 private String hobby; //集合测试 private List<String> dragons = new ArrayList<String>(); @Override public String execute() throws Exception { //为Action的属性赋值,方便在JSP页面获取值 this.hobby = "行侠仗义"; this.dragons.add("jQuery"); this.dragons.add("Json"); this.person.setName("萧峰"); this.person.setPassword("123"); System.out.println("执行execute()方法"); return super.execute(); } //getter/setter略 } 6. index.jsp(记得引入jQuery库) <!-- import jQuery library --> <script type="text/javascript" src="jQuery/jquery-1.9.0.js"></script> <script type="text/javascript"> $(document).ready(function(e) { $("button#btn").click(function(e) { //通过data可以直接访问Action中的属性 $.post("json/JsonAction", function(data){ alert("姓名:" + data.person.name + "\n密码:" + data.person.password + "\n爱好:" + data.hobby + "\n集合:" + data.dragons ); }); }); }); </script> <body> <button type="button" id="btn">JSON</button> </body>

这个程序不是很难,解释我都写在代码里了,这只是初级的使用方法,不过可以满足进行简单的数据交换了

我的理解是:使用JSON进行数据交换其实就是读取Action类里可序列化的属性(这个属性必须要有getter方法)

呵呵,就这样了

如果有错的,请大家放心指正,共同进步。


更详细的内容可以查看下面链接

Struts2配置JSON的更多细节

JSON的简介



 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • jquery each遍历json

    jquery each遍历json

    2016-01-31 16:17

  • struts2+ajax+json action向页面返回int型数据,页面报异常org.a

    struts2+ajax+json action向页面返回int型数据,页面报异常org.a

    2016-01-31 15:35

  • jQuery解析json格式数据简单实例

    jQuery解析json格式数据简单实例

    2016-01-26 08:00

  • jQuery+json实现的简易Ajax调用实例

    jQuery+json实现的简易Ajax调用实例

    2016-01-20 18:01

网友点评