文档章节

Java Web(8)struts2 result 返回json,jQuery 解析显示

Jagery
 Jagery
发布于 2015/11/25 18:37
字数 378
阅读 73
收藏 4

1. 今天在项目中使用jQuery.ajax的时候,想通过服务端返回Json,然后再使用ajax的回调函数来显示处理结果。

2. 在阅读了struts2关于json-plugin的文档后,便对项目按文档说明进行了部署

    首先在pom.xml添加plugin类库依赖

<dependencies>
   ...
   <dependency>
       <groupId>org.apache.struts</groupId>
       <artifactId>struts2-json-plugin</artifactId>
       <version>STRUTS_VERSION</version>
   </dependency>
   ...
</dependencies>

    接着是在struts.xml中配置一个package   

    //这里一定要继承json-default 否则会报错
<package name="json" extends="json-default" namespace="/json">
	    <action name="jsonTest" 
	        class="JsonAction" method="json">
	        <result type="json" name="success">
	        <!-- 不要添加param 	        
	            <param name="enableSMD">true</param>
	            一配置这个,就返回的是一堆版本什么鬼的json数据,不是action里的json数据
	        -->
	        </result>	        
	    </action>
</package>

    然后编写一个对应的Acion类   

import com.opensymphony.xwork2.ActionSupport;
import org.apache.struts2.json.annotations.JSON;
public class JsonAction extends ActionSupport {
    private String name;
    private String sex;
    private String phone;
    public String json(){
        name = "asdf";
        sex = "man";
        phone = "1234567";
        return "success";
    }
    @JSON(name="name")//指定返回的json的对应的name键名
    public String getName(){
        return this.name;
    }
    public String getSex(){
        return this.sex;
    }
    pulibc String getPhone(){
        return this.phone;
    }
    //setter ...
}

    再然后就是在网页中通过$.get或$.post()来异步请求json咯,下面只是写了javascript的代码

$(document).on("click","#jsonBtn",function(){
        //struts2 的标签,生成action的访问链接
	var actionUrl = '<s:url action="jsonTest" namespace="/json"></s:url>';
	var data = {};//一数要请求的数据
	$.post(
		actionUrl,
		data,
		//其中的data已经是jQuery对象表示的json
		function(data){
			$('p').text(data.name+" "+data.sex+" "+data.phone);
		},
		"json" //指定向服务器请求返回的数据类型
	);		
})



© 著作权归作者所有

Jagery
粉丝 3
博文 23
码字总数 11583
作品 0
玉林
程序员
私信 提问
公开课

课程名称:Java EE企业级应用开发 课程大纲: 一、Java面向对象 1. Java面向对象编程 2. 泛型集合框架 3. I/O输入输出 4. 多线程 5. 网络编程 6. 反射Reflection 7. JDBC 二、HTML+CSS 8. H...

柯普瑞杨老师
2017/10/24
1
0
Java程序员从笨鸟到菜鸟之(八十六)跟我学jquery(二)大话jquery选择器

本篇博客我将带大家来学习一下jquery的第一个比较重要的知识点,这个知识点对学习jquery的同学来说是必须掌握的,因为他是所有操作的基础,这个知识点就是jquery的对象选择器,我们利用jquer...

长平狐
2012/11/12
185
1
Java程序员从笨鸟到菜鸟全部博客目录【2012年十一月七日更新】

本文来自:曹胜欢博客专栏。转载请注明出处:http://blog.csdn.net/csh624366188 大学上了一年半,接触java也一年半了,虽然中间也有其他东西的学习,但是还是以java为主路线,想想这一年半,...

长平狐
2012/11/12
219
0
《Java程序员由笨鸟到菜鸟》电子版书正式发布,欢迎大家下载

在众多朋友的支持和鼓励下,《Java程序员由菜鸟到笨鸟》电子版终于和大家见面了。本电子书涵盖了从java基础到javaweb开放框架的大部分内容。在编写的过程中,难免会出现一些错误,希望大家能...

长平狐
2012/11/12
265
0
《Java程序员由笨鸟到菜鸟》电子版书正式发布,欢迎大家下载

在众多朋友的支持和鼓励下,《Java程序员由菜鸟到笨鸟》电子版终于和大家见面了。本电子书涵盖了从java基础到javaweb开放框架的大部分内容。在编写的过程中,难免会出现一些错误,希望大家能...

长平狐
2012/11/12
151
0

没有更多内容

加载失败,请刷新页面

加载更多

Dubbo-自适应拓展机制

背景 在 Dubbo 中,很多拓展都是通过 SPI 机制进行加载的,比如 Protocol、Cluster、LoadBalance 等,这些都是Dubbo的基础组件。这些基础组件的拓展不是在系统框架启动阶段被加载,而是拓展方...

rock-man
26分钟前
5
0
Kali安装fcitx输入法(五笔)

安装fcitx > sudo apt-get install fcitx-rime fcitx-config-gtk3 重启 > sudo reboot fcitx配置 效果就是这样 配置输入法切换 系统设置...

yeahlife
28分钟前
4
0
IE之css3效果兼容

本文转载于:专业的前端网站▷IE之css3效果兼容 一、兼容css阴影效果(ie滤镜) 1.Shadow,阴影 .shadow { -moz-box-shadow: 3px 3px 4px #000; -webkit-box-shadow: 3px 3px 4px #000; box-sha...

前端老手
31分钟前
4
0
NiushopB2C开源商城功能列表说明:

B2C单商户免费版:PC商城+微商城 B2C单商户标准版:PC商城+微商城组合套餐+阶梯优惠核销功能 B2C单商户企业版:PC商城+微商城拼团+组合套餐阶梯优惠+核销功能 B2C单商户分销版:PC商城+微商城...

niushop-芳
32分钟前
4
0
图片如何转GIF图片呢

如何将生活中拍摄的好玩有趣的图片制作成GIF动图呢?相信很多小伙伴都不知道要如何制作,其实制作方法非常的简单,下面分享一个图片转GIF动图的方法,希望这个方法能够帮助大家在与好友斗图时...

白米稀饭2019
39分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部