搭建struts2框架
struts是一个经典的MVC模式
拦截器比过滤器拦截的力度更大
搭建struts2框架
1.引入lib包 9个(2.3版本的)
common-fileupload;
common-io;
common-lang3;
common-logging;
freemaker;
javassistGA;
ognl;
struts2-core;
xwork-core;
2. struts2.xml
3. web.xml
将所有的跳转都交给struts2处理
4.写一个Action
5.页面<form action="loginAction.action" method="post">
2.1.18(7个架包)
2.o.11(5个架包)
strutsPrepareAndExecuteFilter增强版修复了过滤器被忽略失效的问题
--------------------------------
strusts2内核是webwork,低侵入的框架,没有formbean是ognl方式存取数值,更
加简洁。
-------一个请求在struts2框架中的处理分为以下几个步骤:
1.用户通过浏览器提交HttpServletRequest请求
2.这个请求经过一系列的过滤器,这些过滤器的调用是有先后顺序的,先调用
ActionContextCleanUp,在调用其他的过滤器,在调用FilterDispatcher
3.FilterDispatcher是struts2中实现控制器Controller的核心,它接到请求后会
向ActionMapper查询这个请求是否需要调用某个action。如果AtionMapper决定调
用,FilterDispatcher把请求的处理交给AtionProxy
4.ActionProxy通过Configuration Manager查询struts.xml文件,找到需要调用
的action对象类型
5.AtionProxy创建一个ActionInvocation的实例,ActionInvocation通过代理模
式调用action对象。ActionInvocation对象在调用action对象的前后,涉及相关
的拦截器(interceptor);
6.一旦ation执行完毕,actionInvocation负责根据struts.xml中的配置找到对应
的result,result通常是一个jsp页面或FreeMaker等模板页面,在渲染页面过程
中可以使用struts2标签
7.最终,把返回给用户的内容封装成HttpServletResponse后,返回给浏览器
搭建struts2框架的更多相关文章
- 使用Maven搭建Struts2框架的开发环境
一.创建基于Maven的Web项目
- 如何搭建struts2框架
一.首先,下载5个Struts2核心jar包: commons-logging-1.1.1.jar freemarker-2.3.15.jar ognl-2.7.3.jar struts2-core- ...
- struts2框架搭建(一)
struts2是一个基于mvc的web应用框架.struts2本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器层(Controller)来建立模型与视图的数据交互. str ...
- Struts2框架学习(一)——Struts2的概念及搭建
一.Struts2的概念 使用优势:1)自动封装参数 2)参数校验 3)结果的处理(转发|重定向) 4)国际化 5)显示等待页面 6)防止表单重复提交 Struts2具有更加先进的架构以及思想 Str ...
- eclipse搭建struts2环境及所遇到的问题
最近几天一直在搭建struts2框架,本身struts2框架的搭建是非常简单的,但不知道为什么最近就是总是报错,报了一大串的错 首先就是每次在类的根路径下创建struts.xml时,就报错,也不知道为 ...
- 2018.11.17 Struts2框架入门
Struts2 框架学习 一.struts2是什么? (1)概念 (2)struts2使用优势 自动封装参数 参数校验 结果的处理(转发|重定向) 国际化 显示等待页面 表单的防止重复提交 (3)st ...
- Maven构建Struts2框架的注意事项
[本人出错点:404,就是在web.xml配置文件中少配置了struts.xml的路径] 1.创建Maven,搭建Struts框架,实现最基本的Hello World 在pom.xml中加入strut ...
- 搭建一个简单struts2框架的登陆
第一步:下载struts2对应的jar包,可以到struts官网下载:http://struts.apache.org/download.cgi#struts252 出于学习的目的,可以把整个完整的压 ...
- Struts2 框架的快速搭建
方便myEclipse 手动配置Struts2框架,写下此文,需要的朋友拿走不谢~ 一.引入JAR包 WEB工程->WebRoot->WEB-INF->lib引入Struts2对应版 ...
随机推荐
- Windows、VS 与 .net
原文地址:https://msdn.microsoft.com/en-us/library/bb822049(v=vs.110).aspx .NET Framework version CLR ver ...
- 在 Visual Studio Code 中使用 PoweShell - CodeShell
一直希望在 Visual Studio Code 中使用 PowerShell,插件 CodeShell 提供了对于 PowerShell 的支持. 安装 首先按 F1,打开命令窗口,输入安装插件的命 ...
- MFC之动态创建按钮
打开VS 创建MFC基于对话框的工程,在对话框初始化方法中动态创建一个按钮实例: 1> CButton *pMyButton = new CButton();CEdit *pMyEdit = n ...
- DEV中dx:ASPxPopupControl 控件的使用(在窗口关闭或隐藏时,清楚文本框中的内容)
//在窗口关闭或隐藏时,清楚文本框中的内容(核心代码) function(s, e) { ASPxClientEdit.ClearGroup('entryGroup'); } <asp:Cont ...
- 浅谈js的键值对key和value
> 昨晚无意中看到类似下面结构的一段代码的取值问题,引起我的兴趣,花了点时间写了个demo给大家分享一下... var obj = [ {"2011":{"name ...
- 【MySQL】InnoDB: Error: checksum mismatch in data file 报错
参考:http://www.jb51.net/article/66951.htm 用5.7版本启动原5.5实例后,再用5.5启动出现以下报错 InnoDB: Error: checksum misma ...
- php判断 !==false
测试 if($res !== false){ echo "未定义通过<br>"; }else{ echo "未定义不通过<br>"; } ...
- 【EF学习笔记05】----------DBContext基础查询
遍历所有实体 //遍历所有学生 DBSet using (var db = new Entities()) { foreach (var student in db.Student) { Object ...
- webService访问加密
WebService加密,可以对 WebService设置访问用户名和密码,增强 WebService的安全性 使 WebService只能被授权用户使用. 具体实现步骤: 1. 定义一个 soaph ...
- 多个 git ssh key 配置 Ubuntu os
1.生成ssh key: ssh-keygen -t rsa -C “email@sss.com” 此时,在~/.ssh/文件夹下会有两个文件, id_rsa 和 id_rsa.pub.分别保存ssh ...