Struts 01

一、框架概述

1、框架的意义与作用:
        所谓框架,就是把一些繁琐的重复性代码封装起来,使程序员在编码中把更多的经历放到业务需求的分析和理解上面。
        特点:封装了很多细节,程序员在使用的时候会非常简单。
2、三大框架:
        Struts2,Hibernate,Spring
3、学好框架:
        由于框架中细节很多,知识点比较零散,课后总结和做好笔记就变得尤为重要。

二、关于三层架构

这里写图片描述

三、控制器:MVC中的控制器

1、MVC回顾
    M:Model 模型,封装数据。javabean
    V:view  视图,展示界面。jsp
    C:Controller 控制器,控制程序流程。Servlet
2、Servlet和Filter
    Servlet:

这里写图片描述

Filter:

这里写图片描述

四、案例中的问题

这里写图片描述

规律:
1、获取请求正文,用户要做什么事情
2、根据不同的请求,做出不同的判断
3、执行具体的方法代码(动作)
4、转向页面,展示给用户

缺陷:
1、重复性劳动太多,具体的执行代码也有冗余代码。
2、到底要做什么全是硬编码,像用户要做什么事情,对应执行什么代码,可以写在配置文件中。

五、Struts2简介

1、Struts2概述
    Struts2是Apache发行的MVC开源框架。注意:它只是表现层(MVC)框架。
2、Struts2的来历
    Struts1:也是apache开发的一套mvc的开源框架。在2005年之前非常流行。
    弊端:Struts1的核心控制器就是一个Servlet。随着使用者的增多,弊端开始出现。
    Struts2:在long long ago,有一个设计超前的框架XWork,后来推出了XWork1和WebWork2。Struts2就是apache和OpenSymphony组织合并开发出来。
    里面包含了WebWork2的核心及Struts的一些特性和功能。除此之外,和Struts1没有任何关系了。

六、搭建Struts2开发环境

1、下载Struts2开发包
        http://struts.apache.org
2、开发包目录结构
3、搭建开发环境
    3.1、拷贝必要jar包到classpath中

这里写图片描述

拷贝哪些jar包?
找到Struts2自带的例子中,struts-blank的war包,在它的\WEB-INF\lib目录下的jar包全拷贝。
3.2、建立Struts2的配置文件
at the top of classpath(在最顶层的构建路径),建立一个默认名称为struts.xml的配置文件。

注意:
1.文件名大小写。
2.创建位置。
3.该名称允许修改,但是我们一般不改。
3.3、配置控制器
a、配置位置:在web.xml中
b、配置什么: struts2已经写好了的一个过滤器。

结论:
struts2比struts1优秀的一个体现就是,它用了更为强大的过滤器作为控制器了。

这里写图片描述

3.4、验证是否成功
部署应用,启动Tomcat,不报错表示搭建成功。

六、关于struts.xml没有提示的问题

分析原因:没有找到对应的dtd约束文件。
解决办法:
a.上网
b.不能上网:

这里写图片描述

这里写图片描述

七、第一个Struts2案例

以下步骤是日后实际开发中经常重复的。

1、建立一个jsp文件

这里写图片描述

2、在struts.xml文件中配置

这里写图片描述

3、建立动作类和动作方法

这里写图片描述

4、结果视图页面

这里写图片描述

5、测试:

这里写图片描述

八、第一个案例的执行过程

这里写图片描述

多例:每次实例化,线程安全

明确:

这里写图片描述

九、Struts2的配置文件

这里写图片描述

1、加载时机:
当应用被tomcat加载的时候,struts2的配置文件就已经被加载过了。
2、加载顺序

注意:
    1、Struts2提供了两种配置的方式。一种是key=value的方式,即使用.properties文件。另一种是xml文件配置。我们推荐使用xml文件(它能描述层级关系)。
    2、当多个配置文件中,有相同的参数,后面的会把前面的值给覆盖了。

这里写图片描述

十、Struts2框架提供的常量
1、常用的常量
常量定义在了default.properties配置文件中,体现形式都是key=value。所有的struts2应用都会用到这些常量。
常用的:

2、在struts.xml中覆盖常量

使用<constant name="" value=""></constant>元素进行覆盖
例如:

这里写图片描述

这里写图片描述

3、创建struts.properties文件覆盖
在应用的构建路径中创建一个struts.properties的文件。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值