Struts2之异步调用机制详解

一、学习案例:通过在getXML.jsp页面改变名称,在不刷新当前页面的情况下修改页面的数据。

二、案例分析:struts和ajax配合,主要是返回数据的定义。我们可以返回json和xml格式的数据。在此只演示xml方式。

a)格式xml数据,一是拼接字符串,但是数据多的情况下,代码维护就不行了。所以在此我们借助dom4j。把下载的dom4j.jar放到lib目录下。

b)创建scripts包,把jquery.js放进去。

c)创建getXML.jsp页面,编写html以及jquery。

d)创建GetInfoAction.java。并实现数据格式化。

e)在struts.xml中配置action。由于我们是ajax请求,是不需要刷新页面的,所以不配置result。

f)注意:

1、$("#bd table:eq(0)").remove();是为了清空表单,不然每次追加会多出table。

2、Action中方法返回值返回空即可。在执行返回之前,我们已经通过response写出数据了,所以此处返回值并没有实际意义。

3、Struts.xml中的action不要配置result。

三、经验之谈:

a)异步调用机制还是比较简单的,关于json格式数据大家有兴趣可以自行百度。在项目中,关于异步调用还是很常见的,如果项目中使用的地方很多,我们不妨可以通过dwr插件实现。少的话用jquery即可。

b)我们虽然是后台开发人员,但是简单的jquery还是必须要掌握的,我们不能说只是学习java的,就只学java,其实有很多东西,我们可以大概了解下,不要求精通,会用就行。

四、参考项目:

五、每日一乐:

今天看见一哥们的日志上写的:

亲爱的老婆,求求你,别把孩子的尿灌到绿茶瓶子里了,下夜班的我伤不起!

最终解释权归爱尚合伙人(www.23hhr.com)所有,转载请注明出处。

时间: 2024-10-02 11:58:20

Struts2之异步调用机制详解的相关文章

Android异步消息处理机制详解及源码分析

PS一句:最终还是选择CSDN来整理发表这几年的知识点,该文章平行迁移到CSDN.因为CSDN也支持MarkDown语法了,牛逼啊! [工匠若水 http://blog.csdn.net/yanbober 转载烦请注明出处,尊重分享成果] 最近相对来说比较闲,加上养病,所以没事干就撸些自己之前的知识点为博客,方便自己也方便别人. 1 背景 之所以选择这个知识点来分析有以下几个原因: 逛GitHub时发现关注的isuss中有人不停的在讨论Android中的Looper , Handler , Me

Handler详解系列(一)——Handler异步消息机制详解(附图)

MainActivity如下: package cc.cn; import android.os.Bundle; import android.os.Handler; import android.os.Looper; import android.os.Message; import android.util.Log; import android.app.Activity; /** * Demo描述: * Android异步消息机制分析(附图) * * ===================

Android应用AsyncTask处理机制详解及源码分析

[工匠若水 http://blog.csdn.net/yanbober 转载烦请注明出处,尊重分享成果] 1 背景 Android异步处理机制一直都是Android的一个核心,也是应用工程师面试的一个知识点.前面我们分析了Handler异步机制原理(不了解的可以阅读我的<Android异步消息处理机制详解及源码分析>文章),这里继续分析Android的另一个异步机制AsyncTask的原理. 当使用线程和Handler组合实现异步处理时,当每次执行耗时操作都创建一条新线程进行处理,性能开销会比

[转]JavaScript异步机制详解

原文: https://www.jianshu.com/p/4ea4ee713ead --------------------------------------------------------------------------- 学习JavaScript的时候了解到JavaScript是单线程的,刚开始很疑惑,单线程怎么处理网络请求.文件读写等耗时操作呢?效率岂不是会很低?随着对这方面内容的了解和深入,知道了其中的奥秘.本篇文章就主要讲解一下JavaScript怎么处理异步问题. 一.同

JavaScript 运行机制详解

JavaScript 运行机制详解——转载: 一.为什么JavaScript是单线程? JavaScript语言的一大特点就是单线程,也就是说,同一个时间只能做一件事.那么,为什么JavaScript不能有多个线程呢?这样能提高效率啊. JavaScript的单线程,与它的用途有关.作为浏览器脚本语言,JavaScript的主要用途是与用户互动,以及操作DOM.这决定了它只能是单线程,否则会带来很复杂的同步问题.比如,假定JavaScript同时有两个线程,一个线程在某个DOM节点上添加内容,另

AsyncTask机制详解

AsyncTask是Android提供的一个轻量级异步任务机制,使用AsyncTask可以方便的执行异步任务,并将结果更新到main thread.AsyncTask中是通过Handler机制来让work thread和main thread通信的.如果你对Handler还不了解的话,可以通过我的这篇博客来了解Android的Handler机制.Android 异步消息处理机制 在这篇文章中我们将了解AsyncTask的基本用法以及从源码的角度来分析AsyncTask机制,首先我们来了解下开发过

Android 接口回调机制详解

在使用接口回调的时候发现了一个经常犯的错误,就是回调函数里面的实现有可能是用多线程或者是异步任务去做的,这就会导致我们期望函数回调完毕去返回一个主函数的结果,实际发现是行不通的,因为如果回调是多线程的话你是无法和主函数同步的,也就是返回的数据是错误的,这是非常隐秘的一个错误.那有什么好的方法去实现数据的线性传递呢?先介绍下回调机制原理. 回调函数 回调函数就是一个通过函数指针调用的函数.如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用为调用它所指向的函数时,我们就说这是回调函数

Android触摸屏事件派发机制详解与源码分析二(ViewGroup篇)

1 背景 还记得前一篇<Android触摸屏事件派发机制详解与源码分析一(View篇)>中关于透过源码继续进阶实例验证模块中存在的点击Button却触发了LinearLayout的事件疑惑吗?当时说了,在那一篇咱们只讨论View的触摸事件派发机制,这个疑惑留在了这一篇解释,也就是ViewGroup的事件派发机制. PS:阅读本篇前建议先查看前一篇<Android触摸屏事件派发机制详解与源码分析一(View篇)>,这一篇承接上一篇. 关于View与ViewGroup的区别在前一篇的A

SpringMVC视图机制详解[附带源码分析]

目录 前言 重要接口和类介绍 源码分析 编码自定义的ViewResolver 总结 参考资料 前言 SpringMVC是目前主流的Web MVC框架之一. 如果有同学对它不熟悉,那么请参考它的入门blog:http://www.cnblogs.com/fangjian0423/p/springMVC-introduction.html 本文将分析SpringMVC的视图这部分内容,让读者了解SpringMVC视图的设计原理. 重要接口和类介绍 1. View接口 视图基础接口,它的各种实现类是无