博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Struts2工作原理及流程
阅读量:5264 次
发布时间:2019-06-14

本文共 1332 字,大约阅读时间需要 4 分钟。

Struts2是基于MVC设计模式的JavaWeb 框架技术。

基于Struts2开发Java Web项目的主要步骤如下:

(1)在web.xml中配置FilterDispatcher。

(2)设计和编写视图组件(JSP页面)。

(3)编写用来实现视图组件的业务逻辑组件JavaBean。

(4)编写视图组件对应的业务控制器Action,在该Action中调用业务逻辑组件JavaBean,进行业务逻辑处理。

(5)配置Action,即修改struts.xml配置文件。在struts.xml中配置逻辑视图与物理视图之间的跳转关系。

Action调用模型组件(业务逻辑组件)处理后,返回处理结果(逻辑视图,即返回的字符串),根据处理结果进行下一步页面跳转。页面怎么跳转都是事先在struts.xml中配置好的。

 

1、Struts2控制器组件:核心控制器FilterDispatcher、业务控制器Action;

(1)FilterDispatcher是一个过滤器,是Struts2的核心控制器,控制着整个Java Web项目中数据的流向和操作,FilterDispatcher需在web.xml中进行配置。

(2)Struts2的核心配置文件是struts.xml

  用户请求提交给核心控制器FilterDispatcher后,具体由哪个业务控制器Action来完成,是在struts.xml配置文件中事先配置好的,

  根据struts.xml配置文件中的数据,FilterDispatcher调用某个具体的业务控制器Action来完成数据的处理,

  处理完数据后把处理结果通过其它对象返回给FilterDispatcher,FilterDispatcher根据struts.xml文件的配置,决定下一步操作。

(3)Action控制器

  Action:业务控制器。不实现任何业务逻辑,只负责组织调度业务模型组件

  Action类完全是一个简单的Java对象(Plain Old Objects,POJO),实际上就是一个普通的JavaBean

  Action类无须与Servlet API关联,降低了与Servlet的耦合度,所以应用和测试比较简单

  Action类的execute()方法仅返回一个字符串作为处理结果,该处理结果可传到任何试图或者另一个Action

 

2、Struts2模型组件:包括业务逻辑组件和数据库访问组件;

  模型组件是可以实现业务逻辑的模块,如JavaBean、POJO或EJB。

  Struts2框架的业务控制器Action不会对用户请求进行实质的处理,用户请求最终由模型组件负责处理,Action只是提供处理场合,是负责调度模型组件的调度器

  Struts2框架的目的是使用Action来调用模型组件

3、Struts2视图组件,包括HTML、JSP、Struts2的标签等等。

  除了HTML、JSP、Struts2标签外,还可以采用模板技术作为视图技术,如FreeMaker、Velocity等视图技术

 

转载于:https://www.cnblogs.com/Donnnnnn/p/5668470.html

你可能感兴趣的文章
shell脚本——正则表达式
查看>>
ubuntu如何安装虚拟机的工具条
查看>>
Alpha的过程总结
查看>>
printf格式输出知识整理
查看>>
sed 命令用法
查看>>
当DIV内出现滚动条,fixed实效怎么办?
查看>>
方维分享系统二次开发, 给评论、主题、回复、活动 加审核的功能
查看>>
Matlab parfor-loop并行运算
查看>>
Python中的正则表达式(翻译自DiveintoPython3)
查看>>
java设计模式学习(五):命令模式
查看>>
JavaScript点击按钮创建列表
查看>>
jQuery 学习笔记之五 (jQuery 案例)
查看>>
Using mongo in django to develop web app with python
查看>>
Angular4的依赖注入
查看>>
Struts2 拦截器
查看>>
A - 娜娜梦游仙境系列——诡异的钢琴
查看>>
django中的静态文件管理
查看>>
kinect笔记 四、kinect中的一些脚本和参数的作用(持续更新)
查看>>
laravel 创建自定义全局函数
查看>>
javascript剔除数组重复元素的简单方法
查看>>