一个使用Ajax技术的Struts应用程序经典示例(含所有代码)

StrutsAjax高级程序设计》样章连载——12.4 Struts与Ajax<o:p></o:p>


1. 经典Struts著作,涵盖Ajax<o:p></o:p>

2. 深入剖析Web编程思想和Struts各种高级主题<o:p></o:p>

3. 注重实践,提升你解决实际问题的能力<o:p></o:p>

4. Pro Spring作者新著<o:p></o:p>

<o:p> </o:p>

更多详细信息:http://www.china-pub.com/38127<o:p></o:p>

 

12.4  AjaxStruts

在本节中,我们将创建一个使用Ajax技术的简单Struts应用程序。这个应用程序类似于Google Suggest的特性,后者向用户提供搜索关键字来辅助输入。让我们考虑JavaEdge应用程序中的City字段。想象一下,如果用户在开始输入城市时,你能够给他们提供城市输入建议,这会让用户输入更加容易。比如,假设用户所选国家字段是India,如果用户输入“Ba”,就向他们提供所有以“Ba”开头的城市,如图12-2所示。

12-2  Ajax“建议的”下拉列表

本章的其余内容集中介绍如何使用AjaxStruts来实现这个特性。我们将创建一些基本的Struts代码,实现与图12-2相同的功能。它将使用图12-1中所演示的请求—答复循环。

12.4.1  Cities.jsp文件

如下的Cities.jsp文件是一个JSP文件,我们使用它来调用Ajax代码,当用户在文本字段输入某些字符时,向用户提供对应的城市列表:





上述代码使用XMLHttpRequest对象,向某Struts动作发出指令,获取城市列表。下面我们将解释这个Struts动作。

12.4.2  GetCitiesNamesAction

GetCitiesNamesAction是个典型的Struts动作类,调用后端数据访问对象来获取城市列表:


正如你看到的那样,这个Struts动作本身是没有什么玄机的。现在我们研究DAO

12.4.3  CitiesDAO

这个DAO类与非AjaxDAO类没有什么区别,甚至与非Struts应用程序中的DAO类也没有区别。这个类的主要功能是从数据库中获取数据,因为它是基于Ajax技术的,会返回XML。作为一种良好的编程习惯,这个DAO类应该返回一个String或者StringBuffer对象。应该在一个独立的帮助器类或者代理类中实现到XML的转换(但是,在这里我们不会研究面向对象设计模式)。

正如你看到的那样,这个Struts动作本身是没有什么玄机的。现在我们研究DAO

12.4.3  CitiesDAO

这个DAO类与非AjaxDAO类没有什么区别,甚至与非Struts应用程序中的DAO类也没有区别。这个类的主要功能是从数据库中获取数据,因为它是基于Ajax技术的,会返回XML。作为一种良好的编程习惯,这个DAO类应该返回一个String或者StringBuffer对象。应该在一个独立的帮助器类或者代理类中实现到XML的转换(但是,在这里我们不会研究面向对象设计模式)。


这就是实际所需的全部代码。使用这个Struts应用程序,可以完成自己的应用程序。现在,需要在struts-config.xml文件中注册这个动作,并像其他Struts JSP和动作类一样设置它。运行这个范例,就会看到期望的结果。

12.5  小结

Ajax是一种非常时髦的新技术,为Web应用程序中的用户界面实现开创了一片新天地。但是,使用它时还需要谨慎。在W3CAjax采纳为标准之前,使用Ajax进行编程时,都需要关注跨浏览器问题。同样,不要滥用Ajax。比如,坚持只对后台的有用数据使用Ajax,不要尝试使用它来跳过信息对话框,等等。在使用Ajax之前,一定明确自己看重Ajax的哪些方面。

本文仅供学习交流使用,严禁抄袭和转载,如果将本文内容用于商业用途,将追究法律责任!<o:p></o:p>

好书推荐,精彩明天继续······<o:p></o:p>

你是一位Java Web开发者吗?如果是,我诚挚地、强烈地向您推荐两本业界公认的经典Struts教程······<o:p></o:p>

1.Struts基础教程》<o:p></o:p>

<o:p> </o:p>

(1)       针对Java Web开发人员的一本基础教程<o:p></o:p>

(2)       能够帮助读者迅速掌握Struts基础<o:p></o:p>

更多详细信息:http://www.china-pub.com/33567

<o:p></o:p>

2.《深入浅出Struts<o:p></o:p>

<o:p> </o:p>

(1)       Amazon畅销书<o:p></o:p>

(2)       深入全面地阐释Structs的方方面面..<o:p></o:p>

(3)       专门章节剖析Struts源代码<o:p></o:p>

更多详细信息:http://www.china-pub.com/35778

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
本火锅店点餐系统采用Java语言和Vue技术,框架采用SSM,搭配Mysql数据库,运行在Idea里,采用小程序模式。本火锅店点餐系统提供管理员、用户两种角色的服务。总的功能包括菜品的查询、菜品的购买、餐桌预定和订单管理。本系统可以帮助管理员更新菜品信息和管理订单信息,帮助用户实现在线的点餐方式,并可以实现餐桌预定。本系统采用成熟技术开发可以完成点餐管理的相关工作。 本系统的功能围绕用户、管理员两种权限设计。根据不同权限的不同需求设计出更符合用户要求的功能。本系统中管理员主要负责审核管理用户,发布分享新的菜品,审核用户的订餐信息和餐桌预定信息等,用户可以对需要的菜品进行购买、预定餐桌等。用户可以管理个人资料、查询菜品、在线点餐和预定餐桌、管理订单等,用户的个人资料是由管理员添加用户资料时产生,用户的订单内容由用户在购买菜品时产生,用户预定信息由用户在预定餐桌操作时产生。 本系统的功能设计为管理员、用户两部分。管理员为菜品管理、菜品分类管理、用户管理、订单管理等,用户的功能为查询菜品,在线点餐、预定餐桌、管理个人信息等。 管理员负责用户信息的删除和管理,用户的姓名和手机号都可以由管理员在此功能里看到。管理员可以对菜品的信息进行管理、审核。本功能可以实现菜品的定时更新和审核管理。本功能包括查询餐桌,也可以发布新的餐桌信息。管理员可以查询已预定的餐桌,并进行审核。管理员可以管理公告和系统的轮播图,可以安排活动。管理员可以对个人的资料进行修改和管理,管理员还可以在本功能里修改密码。管理员可以查询用户的订单,并完成菜品的安排。 当用户登录进系统后可以修改自己的资料,可以使自己信息的保持正确性。还可以修改密码。用户可以浏览所有的菜品,可以查看详细的菜品内容,也可以进行菜品的点餐。在本功能里用户可以进行点餐。用户可以浏览没有预定出去的餐桌,选择合适的餐桌可以进行预定。用户可以管理购物车里的菜品。用户可以管理自己的订单,在订单管理界面里也可以进行查询操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值