千家信息网

JSP开发中Servlet之如何实现导入事件驱动技术

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,小编给大家分享一下JSP开发中Servlet之如何实现导入事件驱动技术,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!JSP
千家信息网最后更新 2026年11月01日JSP开发中Servlet之如何实现导入事件驱动技术

小编给大家分享一下JSP开发中Servlet之如何实现导入事件驱动技术,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

JSP-Servlet为Web应用程序开发者提供了一个优秀的平台。但是,现在国内大多数的基于JSP-Servlet的开发都处在最基础的状态,代码重用率低,开发效率低,无法适应大型、复杂的Web开发要求。

对于在JSP-Servlet中导入事件驱动技术,首先,要实现事件驱动,必须在JSP-Servlet开发中采用MVC技术。

◆M=Model(模型)

◆V=View(视图)

◆C=Control(控制)

视图(V)定义了用户界面。模型(M)定义了抽象类和逻辑。控制(C)则负责根据视图发生的事件调用模型的逻辑完成业务处理。

一般

◆Model(模型)由普通的Java类来实现。

◆View(视图)由Jsp来实现。

◆Control(控制)由Servlet来实现。

视图和模型是紧密关联,又相互独立的。

模型是视图的抽象,必须包含一定的逻辑来处理视图所表现的对象的事件。

同时对于相同的逻辑,视图可以以各种方式表现。

对于在JSP-Servlet中导入事件驱动技术的实例中的问题,例如,在Web开发中,

[1] 对于一个代表"单选"抽象的SingleSelection类,在用户的浏览器上可以显示为Radio button, 也可以是单选下拉框,或者是其他任何的单选性质的控件。

[2] 对于一个代表"提交"抽象的Submition类,在用户的浏览器上可以显示为Submit button, 也可以是超链接、图片,甚至可以是可触发JavaScript的submit()方法的任何控件。

事件驱动对于MVC技术是极其重要的,主要由Control(控制)来实现。而JSP-SERVLET的实现本身就非常适合于编写事件驱动的程序。

众所周知,javax.servlet.http.HttpServlet类每次都调用

doPost(HttpServletRequest req, HttpServletResponse resp)

或者

doGet(HttpServletRequest req, HttpServletResponse resp)

方法来响应客户端的submit操作。

Servlet响应的事件就是客户端浏览器的submit操作。客户端浏览器的submit事件触发Servlet的特定事件处理方法,但是入口只有一个:javax.servlet.http.HttpServlet类的service(HttpServletRequest req, HttpServletResponse resp)方法。(具体到对于客户端的操作的响应,则可能是doPost(HttpServletRequest req, HttpServletResponse resp)或者是doGet(HttpServletRequest req, HttpServletResponse resp)方法。

所以可以重写这些方法来控制Servlet对submit事件的响应处理,调用不同的JSP,JAVA BEAN,甚至于EJB。

例:EventDrivenServlet继承javax.servlet.http.HttpServlet,并且重写doPost(HttpServletRequest req, HttpServletResponse resp)和doGet(HttpServletRequest req, HttpServletResponse resp)方法,令这2个方法都直接调用同一个方法,我们把这个方法命名为"act"??

void act(HttpServletRequest req, HttpServletResponse resp)

act方法应该根据req参数传入的信息,调用相应的类以及方法,***将resp返回给客户端。

act方法进行的处理必须包括如下几点:

◆解析req。

◆根据上一步的解析结果初始化(或者更新)相应的类。

◆调用相应的方法进行逻辑处理。

◆将处理结果反映到resp里。

◆根据逻辑处理结果指定下一个显示的页面

◆forward到下一个页面。

但是,act方法又是怎么知道该调用哪一个类的哪一个方法,该迁移到哪一个画面去的呢?

答案是传递给act方法一个消息 Message。

对于在JSP-Servlet中导入事件驱动技术,Message类是消息的抽象,应该定义成abstract的,可以是一个空类。从这个Message类派生出所有的具体的消息类。所有的消息类都必须从Message类继承。

前面讲过,画面上(JSP)的每一个可submit的控件在逻辑上都对应一个Submition,每一个Submition都和一个特定的消息类相关联。这样,只要我们在Control层能够截获这些消息类,并且解析这些消息类携带的信息,并将它们委派给相应的类的方法去处理,就可以实现事件驱动。

例:

画面上有一个"登录"按钮,它对应着一个Submition类,并且产生一个LoginMessage的消息。LoginMessage继承Message,并且加入了一个Hashtable成员变量,携带了用户名和密码的信息。

画面上还一个"变更密码"按钮,它对应着一个ChangePasswordSubmition类,并且产生一个ChangePasswordMessage的消息。ChangePasswordMessage继承Message,并且加入了一个Hashtable成员变量,携带了用户名和密码的信息。

对于在JSP-Servlet中导入事件驱动技术,当Servlet响应这个submit时,可以根据传来的消息的类型和携带的信息来委派处理。

具体实现时,我们应该重载EventDrivenServlet的act()方法,加入一个Message类的参数。

void act(HttpServletRequest req, HttpServletResponse resp,Message message)

对于在JSP-Servlet中导入事件驱动技术,如果message instanceof LoginMessage为true,那么就将message造型成LoginMessage,并且将LoginMessage传递给相应的方法,处理完成后指定相应的画面并发回客户端。

对于在JSP-Servlet中导入事件驱动技术,如果message instanceof ChangePasswordMessage为true, 那么就将message造型成ChangePasswordMessage,并且将ChangePasswordMessage传递给相应的方法,处理完成后指定相应的画面并发回客户端。

以上是"JSP开发中Servlet之如何实现导入事件驱动技术"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

方法 事件 驱动 处理 技术 消息 开发 视图 客户 逻辑 模型 画面 中导 信息 客户端 用户 控制 浏览器 浏览 密码 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 上海睿民互联网科技有限公司 云之行互联网科技 互联网科技工作委员会毛军 科技互联网龙头 互联网扶贫科技 致骋互联网科技 苏州大垚互联网科技 科技类的互联网平台 新华互联网科技校企合作 互联网巨头投资的硬核科技 深圳前海聚择互联网科技有限公司 栖莱科技互联网股份有限公司 江阴互联网智能科技产品进口 四川慕妮娅互联网科技有限公司 科技大学互联网 江苏互联网智能科技软件 互联网科技数字货币 互联网高科技行业有哪些企业 科技互联网经济论坛 互联网科技创业计划的风险分析 互联网科技公司简介 互联网科技卖菜 中盈科技互联网信息有限公司 移动互联网科技股 互联网时代科技改变生活 互联网科技股为什么大涨 上海创道互联网络科技有限公司 互联网科技融合创新 广东鹅鹅鹅互联网科技有限公司 互联网的科技体现在哪里
0