1.Struts2概述:
  1. Struts2是一个用来开发MVC应用程序的框架。
  2. Struts2提供了web应用程序开发过程中一些常见问题的解决方案;
  • 对用户输入的数据进行合法性验证
  • 统一的布局
  • 可扩展性
  • 国际化和本地化
  • 支持Ajax
  • 表单的重复提交
  • 文件的上传和下载
  • ... ...
2.Struts2相对于Struts1的优势:
  1. 体系结构更优秀
  • 类更少, 更高效:在Struts2中无需使用“ActionForm” 来封装请求参数
  • 扩展更容易:Struts2通过拦截器完成了框架的大部分工作,在Struts2中插入一个拦截器相当简单

更容易测试:即使不使用浏览器也能对基于Struts2的应用进行测试

3.Struts2的本质:
  1. Struts2严格来说并非是从Struts1升级而来,而是换了品牌标签的webwork
  2. 从Struts1到Struts2的升级:
Struts1使用ActionServlet作为控制器
Struts2使用过滤器作为控制器
Struts1中每一个HTML表单都对应一个ActionServlet实例
Struts2中HTML表单直接被映射到一个POJO
Struts1的验证逻辑编写在ActionServlet中
Struts2的验证逻辑编写在Action中
Struts1中Action类必须继承org.apache.struts.action.Action类
Struts2中任意一个POJO都可以是Action类
Struts1使用el和jstl
Struts2在页面中使用ognl来显示各种对象模型
4.Struts2环境搭建:

  1. 添加jar包:将jar包添加到应用程序的webContent下的WEB-INF/lib目录下
  2. 在当前应用程序的web.xml文件中配置Struts2
  3. 添加Struts2配置文件Struts2.xml到src目录的根目录下
  4. 关联Struts2的智能提示:
  • 复制http://struts.apache.org/dtds/struts-2.5.dtd →proferences→xml→xml catalog→粘贴到key中→File System→struts-2.5.14.1\src\core\src\main\resources\struts-2.5.dtd
  • 注意:Key Type必须选择URI
  1. 注意:在使用struts2.3以上版本时,如果启动服务器后出现404 NOT FOUND错误则删除掉lib目录下的struts2-rest-plugin-2.5.14.1.jar
5.使用strut2的优点:
  1. Filter的使用:不需要直接在Filter中编写代码,而是通过struts2的配置文件实现
  2. 取值:只需要使用${属性名}:${requestScope.product.productId }→${productId }
  3. 使用步骤:
  • 在index.jsp页面跳转到/WEB-INF/pages/input.jsp
  • 在input.jsp页面中跳转到Product类中的save方法,save返回一个"details",并通过Struts2的反射跳转到/WEB-INF/pages/details.jsp
  • struts.xml配置文件:
6.详解:

转载于:https://www.cnblogs.com/lxc-2017/p/8530328.html

01_Struts2概述及环境搭建相关推荐

  1. Java语言概述以及环境搭建

    Java语言概述以及环境搭建 计算机系结构 硬件 软件 人机交互方式 常见的DOS命令 Java语言的概述 Java语言的背景 Java语言的特点 Java的主要版本 JDK下载 <1>J ...

  2. android概述和环境搭建

    概述及环境搭建 前言 1> 搭建Android开发环境 2> 创建与启动手机模拟器 屏幕分辨率 HVGA:320×480 QVGA:240x320 WQVGA400:240X400 WQV ...

  3. 【ROS理论与实践-赵虚左老师】Chap1 ROS概述与环境搭建

    第一章 ROS概述与环境搭建 学习新的知识三部曲:先去了解相关概念,然后安装官方软件包,最后搭建集成开发环境. 1.1 ROS简介 机器人是各种硬件和软件集成,甚至可以说机器人系统是当今工业体系的集大 ...

  4. 品达物流TMS项目_第1章 项目概述和环境搭建

    第1章 项目概述和环境搭建 文章目录 第1章 项目概述和环境搭建 1. 项目概述 1.1 项目介绍 1.2 物流行业介绍 1.3 系统架构 1.4 技术架构 2. 业务需求说明 2.1 产品需求和原型 ...

  5. Day_01 传智健康项目-项目概述和环境搭建

    第1章 项目概述和环境搭建 1. 项目概述 1.1 项目介绍 传智健康管理系统是一款应用于健康管理机构的业务系统,实现健康管理机构工作内容可视化.会员管理专业化.健康评估数字化.健康干预流程化.知识库 ...

  6. 传智健康—第1章 项目概述和环境搭建

    传智健康-第1章 项目概述和环境搭建 文章目录 传智健康-第1章 项目概述和环境搭建 第1章 项目概述和环境搭建 1. 项目概述 1.1 项目介绍 1.2 原型展示 1.3 技术架构 1.4 功能架构 ...

  7. linux概述及环境搭建

    1. 入门概述 我们为什么要学习Linux linux诞生了这么多年,以前还喊着如何能取代windows系统,现在这个口号已经小多了,任何事物发展都有其局限性都有其天花板.就如同在国内再搞一个社交软件 ...

  8. 【Java学习笔记1】Java概述 -背景+环境搭建

    文章目录 Java语言概述 Java介绍 1. 软件开发概述 2. 计算机语言 3. Java 简史 4. Java 技术体系平台 6. Java语言特点 7. Java核心机制一-Java虚拟机 8 ...

  9. 大数据实战之用户画像概念、项目概述及环境搭建

    下面跟着我一起来学习大数据获取用户画像: 项目Profile课程安排 : 用户画像概念 1.用户画像概述 1.1.产生背景 早期的用户画像起源于交互设计之父Alan Cooper提出的"Pe ...

最新文章

  1. python变量词是什么意思_python1变量,表达式和语句
  2. mysql查询为0的值_MySql查询整型字段空字符时出现为0的数据
  3. 服务器发消息给所有人,我需要服务器向所有客户端(Python、sockets)发送消息...
  4. hive性能调优实战pdf_1分钟带你入门JVM性能调优,实战解析调优工具
  5. 基于小波变换的图像解压缩
  6. 数据结构---判断一棵树是否是二叉搜索树
  7. python基础:迭代器、生成器(yield)详细解读
  8. Wait waitpid
  9. 控Proxool连接池的活动连接变化情况
  10. python 如何在一个for循环中遍历两个列表
  11. linux查看php日志命令,linux查看日志的三种命令是什么,linux查看进程命令
  12. 毕业季,我的Linux求职之路
  13. ESFramework Demo -- 简单的网络硬盘Demo
  14. ________________springbootのMybatis
  15. 伺服驱动器--增益调整
  16. 文件上传(FileUpload)
  17. ajax调用一般应用程序,【Web前端】---js调用本地应用程序
  18. 自定义View之MultiStateView根据不同状态显示不同布局的View(雷惊风)
  19. Web前端:改变鼠标样式
  20. RT-Thread 4.1.0 开启 PM 电源管理框架

热门文章

  1. android ipc 多个客户端,Android IPC之AIDL进阶篇
  2. java arraylist排序_最全Java集合笔记
  3. 163 coremail_Icoremail企业邮箱
  4. postgresql建表带注释_postgresql建表带自增id和注释语句
  5. kotlin 覆盖属性_Kotlin程序| 方法覆盖的示例
  6. array_column php什么版本可以用,array_column兼容php5.5以下版本
  7. jmp、JE、JZ、JNE、JNT指令
  8. java wed登录面 代码_JavaWeb实现用户登录注册功能实例代码(基于Servlet+JSP+JavaBean模式)...
  9. uva 10883——Supermean
  10. LeetCode(合集)两数之和总结 (1,167,1346)