框架

框架含义

  • 是一系列jar包的集合,其本质是对JDK功能的扩展。
  • 是一组程序的集合,包含了一系列的最佳实践,作用是解决某一个领域的问题,不同类型的框架解决了不同领域的问题。
  • 框架其实就是一个半成品,一般做开发是基于框架,在框架上继续做开发。

最佳实践

三要素:可读性、可维护性、和拓展性。

Web开发中的最佳实践:分层开发模式

  • 表现层:负责处理与页面交互的相关操作

Structs2、Spring MVC

  • 业务层:负责复杂的业务逻辑计算和判断

Spring

  • 持久层:负责将业务逻辑数据进行持久化储存

Hibernate、MyBatis

三层关系如下所示:

Structs2介绍

Structs1

Structs1是最早的基于MVC模式的轻量级Web框架,它能够合理的划分代码结构,并包含验证框架、国际化框架等多种使用工具框架。但是随着技术的进步,Structs1局限性越来越多。因此,为了符合更加灵活、高效的开发需求,Structs2出现了。

Structs2   

Structs2是Structs1的下一代产品,是在Structs1和WebWork技术的基础上进行合并后的全新框架。WebWork是由OpenSymphony组织开发的Web框架。Structs2与Structs1设计思想很大不同,Structs是以WebWork为核心的,它采用拦截器的机制来处理用户的请求。这样的设计使得业务逻辑控制器能够与Servlet API完全脱离开。

Structs2的下载

下载官网https://struts.apache.org/download.cgi#struts2520。

不同链接下载不同的内容:

  • Full Distribution

下载Structs2的完整版(包含后面的全部)。

  • Example Applicarions

仅下载Structs2的实例应用。

  • Essential Dependencies Only

仅下载Structs2的核心库。

  • All Dependencies

仅下载Structs2的所有库。

  • Documentation

仅下载Structs2的相关文档。

  • Source

仅下载Structs2的全部源代码

Structs2文件目录结构

下载解压缩后的文件目录结构如下所示:

  • apps

该文件夹用于存放官方提供的Structs2的示例程序。

  • docs

该文件夹用于存放官方提供的Structs2的文档。

  • lib

该文件夹用于存放官方提供的Structs2的核心类库。

  • src

该文件夹用于存放官方提供的Structs2框架的源码。

Structs2的基础JAR包

一般开发中,只需要将lib文件夹下所依赖的几个基础JAR包赋值到Web项目的WEB-INF/lib路径下即可。所依赖的基础JAR如下所示:

asm-5.2.jar 操作Java字节码的类库
asm-commons-5.2.jar 提供了基于事件的表现形式
asm-tree-5.2.jar 提供了基于对象的表现形式
struts2-core-2.5.20.jar Struts2框架的核心类库
ognl-3.1.21.jar 对象图导航语言,Struts2框架通过其读写对象的属性
freemarker-2.3.28.jar Struts2标签模板使用的类库
javassist-3.20.0-GA.jar JavaScript字节码解释器
commons-fileupload-1.4.jar Struts2文件上传组件依赖包
commons-io-2.6.jar Struts2的输入输出,传文件依赖的JAR
commons-lang-2.4.jar 包含一些数据类型工具,是对java.lang包的增强
log4j-api-2.11.1.jar Struts2的日志管理组件依赖包的API

Structs2-基础相关推荐

  1. JAVA基础知识学习全覆盖

    文章目录 一.JAVA基础知识 1.一些基本概念 1.Stringbuffer 2.局部变量成员变量 3.反射机制 4.protect 5.pow(x,y) 6.final ,finally,fina ...

  2. SpringMVC从基础到源码

    写在前面: 我是「沸羊羊_」,昵称来自于姓名的缩写 fyy ,之前呕心沥血经营的博客因手残意外注销,现经营此账号. 本人是个小菜,正向着全栈工程师的方向努力着,文章可能并不高产,也很基础,但每写一篇都 ...

  3. 知了课堂 Python Flask零基础 笔记整理

    目录 起步 安装Python2.7: Python虚拟环境介绍与安装: pip安装flask: 认识url: URL详解 web服务器和应用服务器以及web应用框架: Flask 第一个flask程序 ...

  4. java入门 慕路径,Java入门基础知识总结学习教程大全【必看经典】

    类型的表达式,是循环条件,表达式3是党执行了一遍循环之后,修改控制循环的变量值. ??? for语句的执行过程是这样的:首先计算表达式1,完成必要的初始化工作:然后判断表达式2的值,如果表达式的值为t ...

  5. 提交表单自动刷新_Web自动化测试:元素的基础操作和浏览器基础操作

    上一节,我们了解了如何定位元素,其实也有涉及对于元素的操作,这一节我们就详细的介绍一下对于元素的操作和对于浏览器的一些操作 一.对于元素的基础操作: clear():清除输入框内的文本 send_ke ...

  6. java mybatis基础

    java mybatis基础 1.1 什么是mybatis? mybatis是一个优秀的持久层框架. 避免几乎所有的JDBC代码和手动设置参数以及获取结果集的过程. 可以使用简单的xml或者注解来配置 ...

  7. 【J2SE】学习基础

    Java基础 语法基础 OO Exception Array 基础类 I/O Stream Collection/Generic Thread TCP/UDP GUI Meta Data Regula ...

  8. 【Linux系统】基础总结

    我不太清楚运维部门具体是做什么的,就接触过一点点运维部门! 也就是是知道他们负责管理服务器,管理网络,管理项目部署 偶尔自己需要部署,不得不接触一些linux命令.简单总结一些基础 linux系统发展 ...

  9. 【Java 2 Platform Enterprise Edition】基础

    问题1:为什么java是无关平台? 你之前用C或者C++写的源代码,编译好后,换一种操作系统,可能就执行不了了.因为新的操作系统不识别,你需要修改你的源码,并在新的操作系统上重新编译才能运行,比如Wi ...

  10. SpringCloud Alibaba微服务实战(一) - 基础环境搭建

    说在前面 Spring Cloud Alibaba 致力于提供微服务开发的一站式解决方案.此项目包含开发分布式应用微服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来 ...

最新文章

  1. 样式集(四)搜索框样式
  2. 服务器开启虚拟机就死机,解决ESXi服务器上磁盘锁导致虚拟机卡死的问题
  3. 链表中倒数第k个节点 1
  4. 【luogu P4005 清华集训2017】小Y和地铁
  5. 关于picgo中阿里云图床的设置
  6. 修改选择文件按钮,变成自己设置的样式
  7. java第一季2.2
  8. Java官方操纵byte数组的方式
  9. 浅谈 CSRF 攻击方式
  10. springboot使用curator来实现leader选举
  11. unity连接mysql并读取所有数据库_Unity 3D 连接Mysql数据库
  12. World Wind Java开发之六——解析shape文件(转)
  13. 【格局】一张图看懂全球人工智能竞争格局|湾区人工智能
  14. 构建 Vue.js 2.0项目
  15. 科大讯飞/百度/阿里/腾讯(BAT)智能语音识别(ASR)性能对比选择预计价格分享 - pytorch中文网...
  16. 国外英文版云购夺宝网站项目开发制作代码解析
  17. 如何去掉空格 oracle,oracle数据库中如何去除空格
  18. 下载文件进度显示--小小Demo——桃先森
  19. 一个女留学生在美国的七年(转载)
  20. 无人驾驶小车调试笔记(五)-- 命令行通信

热门文章

  1. oracle网络ora文件,Oracle错误—ORA-03113:在通信信道文件的末尾(归档日志处理)...
  2. 2021-05-19 C语言逻辑取反! 学习
  3. war文件放到服务器乱码,maven 打war包tomcat服务器乱码问题
  4. xlsx 解析excel 后渲染到表格里(前端实现 解析excel渲染到表格)
  5. 大专计算机办公应用,计算机办公软件应用论文
  6. 计算机一级移动是复制粘贴吗,学会着几种复制粘贴的方法你做事会事半功倍
  7. dubbo源码解析之服务发布与注册
  8. 解决office 2010每次启动都出现配置进度的方法
  9. 边缘检测——Roberts算子
  10. AMS1117S三端稳压低压降稳压器ic