文章目录

  • struts2 简介
    • 介绍
    • 优点
    • 开发struts2最少需要的jar文件
      • 推荐使用maven做包管理
    • struts2的处理流程
    • struts1和struts2的区别

struts2 简介

介绍

struts2是在webwork上发展过来的,是mvc模式。 但是推荐使用springmvc作为控制层 ^ _ ^,因为江湖传闻struts漏洞多。

优点

struts2提供了

  • 拦截器,可以进行AOP编程,如实现权限拦截
  • 类型转换器,把特殊的请求参数转化成需要的类型。
  • 多种表现层技术技术,如JSP,freemarker,velocity等
  • 输入校验可以可以对指定方法进行校验
  • 提供了全局范围,包范围,和Action范围的国际化资源文件管理实现。

开发struts2最少需要的jar文件

  • struts2-core-2.x.x.jar, struts2框架的核心类库
  • xwork-2.x.x.jar XWork类库,struts2在其上构建
  • ognl-2.6.x.jar 对象图导航语言,Struts2框架通过其读写对象的属性
  • freemarker-2.3.x.jar Struts的ui标签模板使用freemarkder编写
  • commons-logging-1.1.x.jar, ASF出品的日志包,struts2框架使用这个日志包来支持log4和jdk1.4+的日志记录
  • commons-fileupload-1.2.1.jar 文件上传组件,2.1.6版本后必须加入此文件

推荐使用maven做包管理

不建议单独下载jar包,推荐直接使用maven来管理包,现在想得到的几个好处:

  • 可以避免包冲突问题,自己弄各个包版本不匹配可能会冲突,有些包天然就冲突,Maven已经帮我们很好的规避了冲突。
  • 可以使得开发时项目比较小,因为依赖包都在maven仓库中
  • 不必再为找包而烦恼

struts2的处理流程

StrutsPrepareAndExecuteFilter是struts2的核心控制器,它负责拦截由<url-pattern>/*</url-pattern>指定的所有用户请求。

  • 拦截用户所有请求,留下用户请求的后缀名为.action或者没有后缀名继续处理,其它的视情况而定(比如获取静态资源等等)
  • 经过拦截器链,有默认的拦截器,我们也可以自定义拦截器添加上去
  • 在经过action,action就是我们主要做业务的地方
  • action处理后会返回一个字符串的返回类型,根据这个字符串在struts.xml中找到对应的视图进行返回

struts1和struts2的区别

struts1和servlet,服务器整个生命周期内只会存在一个实例,单例模式

struts2 每次访问都新建一个,原型模式。

2015-07-20-struts-struts2简介相关推荐

  1. 【struts2】struts2简介

    Struts2其实并不是一个陌生的Web框架,Struts2是以Webwork的设计思想为核心,吸收了Struts1的优点,因此,可以认为Struts2是Struts1和Webwork结合的产物. 一 ...

  2. 张珺 2015/07/13 个人文档

    姓名 张珺 日期 2015/07/13 主要工作及心得 今天主要和任笑萱一起完成了对客户端中提供者的调试以及数据库的修改工作. 通过今天的调试工作,我对整个项目有了更深入的认识,对于用java编写客户 ...

  3. 【plan】【01】2015.07月计划

    [2015.07计划  分为学习.工作与实战] 学习 : 1.慕课网 PHP工程师学习计划 2.读书+笔记 工作: 1.多学习 2.做工作日志,自省 3.工作计划 实战: nextPHPer网站制作

  4. Struts框架简介

    (一)个人整理Struts框架简介 一,什么是框架?  所谓框架就是提供了一组统一的接口和编程方式的可以重用组件,同时我们可以在框架中扩充我们自己的特定逻辑.   二,MVC设计模式        将 ...

  5. 海洋视音盒 v1.2 - 2015.1.20 更新 终结版

    软件大小:2.91MB 软件语言:中文 软件类型:国产软件 软件授权:免费软件 更新时间:2015/1/20 软件类别:视频播放 应用平台:WinXP,win7 本软件是一款集百度随心听.豆瓣音乐电台 ...

  6. http://www.cnitblog.com/ffan/archive/2007/07/20/30291.html

    http://www.cnitblog.com/ffan/archive/2007/07/20/30291.html

  7. 浅显易懂 SQLite3 笔记(07)— 数据库视图简介及操作

    文章目录 前言 一.数据库系统的三级模式 二.视图定义和作用 1.什么是视图? 2.视图的作用? 三.SQL语句操作视图 1.创建视图 2.查询视图 3.更新视图 4.修改视图 5.删除视图 总结 前 ...

  8. GMOJ - 2021.07.20【普及组】模拟赛C组 - 排座椅(seat)、传球游戏(ball)、立体图(drawing)、间谍派遣、seek

    文章目录 luogu博客链接 GMOJ - 2021.07.20[普及组]模拟赛C组 - 排座椅(seat).传球游戏(ball).立体图(drawing).间谍派遣.seek T1 排座椅(seat ...

  9. C++ 20 新特性简介

    导语:本篇介绍的内容源自于 C++ 之父 Bjarne Stroustrup 的论文--HOPL4 .HOPL 是 History of Programming Languages(编程语言历史)的缩 ...

  10. 推荐|深度学习领域引用量最多的前20篇论文简介

    来源:全球人工智能 作者:Pedro Lopez,数据科学家,从事金融与商业智能. 译者:海棠,审阅:袁虎. 深度学习是机器学习和统计学交叉领域的一个子集,在过去的几年里得到快速的发展.强大的开源工具 ...

最新文章

  1. 库对比工具mysqldiff使用
  2. GitHub 4K+Star!SpaceX火箭数据开放API接口,可用Python进行抓取分析
  3. 爬虫cookie过期_python instagram 爬虫
  4. 词根 sent/sens
  5. weak_ptr概述,weak_ptr常用操作、尺寸
  6. [vue-router] Duplicate named routes definition
  7. 有关cdsn论坛被封后如何解封
  8. 745. 前缀和后缀搜索(每日一难phase2--day27)
  9. 【机器学习-周志华】学习笔记-第十章
  10. 2022年P气瓶充装考试模拟100题模拟考试平台操作
  11. P1038 神经网络
  12. CSS特效--图像悬停效果
  13. 辛苦编码好几年,一朝栽在算法前
  14. mean IOU是什么意思
  15. 汇编语言: 试编制一个程序:从键盘输入一行字符,要求第一个键入的字符必须是空格符,如不 是,则退出程序;如是,则开始接收键入的字符并顺序存放在首地址为buffer的缓冲区中(空 格符不存入),直到接收
  16. Alwayson 同步模式的坑
  17. 程序员护眼心得——20171229
  18. 足球比赛常用英语单词集锦
  19. 高职高考数学可以用计算机吗,什么学习水平高职高考数学可以答满分
  20. python爬虫之使用BeautifulSoup模块抓取500彩票网竞彩足球赛果及赔率

热门文章

  1. Django用admin开发的幼儿园薪资管理系统-3
  2. 2023年美国大学生数学建模C题:预测Wordle结果建模详解+模型代码(一)
  3. 数据库的并运算和差运算
  4. Python实现---南邮离散数学实验四:图的生成及欧拉(回)路的确定
  5. PCA主成分分析算法专题【Python机器学习系列(十五)】
  6. linux远程不了怎么办,linux不能远程访问
  7. 联想ghost重装系统_一步一步教你手动ghost重装win7 64位系统
  8. 虚拟机安装Hadoop
  9. matlab求积分 没有解,详解Matlab求积分的各种方法
  10. JavaScript打字小游戏