Struts2学习笔记(1)

时间:2023-02-26 18:50:25

框架的意义与作用:

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

搭建开发环境

拷贝必要jar包到classpath中,找到Struts2自带的例子中,struts-blank的war包,在它的\WEB-INF\lib目录下的jar包全拷贝。
Struts2学习笔记(1)

Struts2的配置文件

1、加载时机:
当应用被tomcat加载的时候,struts2的配置文件就已经被加载过了。
2、加载顺序
1 default.properties
2 struts-default.xml
3 strtuts-plugin.xml
4 struts.xml
5 struts.properties
6 web.xml

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

xml配置文件的主要元素

1、package元素
1.1、作用:
在struts2的配置文件中引入了面向对象思想,使用了分包管理。易于管理动作类。便于模块化开发动作类。
1.2、属性:
name:包的名称。必须写。且必须唯一。
extends:一般情况下需要继承struts-default包,但不是必须的。不过如果不继承的话,将无法使用struts2提供的核心功能。
struts-default.xml中定义着struts-default这个包。而struts-default.xml是在我们的struts.xml加载之前加载。
abstract:把包声明为抽象包,抽象包就是用来被继承的。只要是没有元素的包,就可以声明为抽象包。
namespace:名称空间。
名称空间 + 动作名称 = 访问路径

自定义结果类型

结果类型就是一个类,这些类都实现了com.opensymphony.xwork2.Result接口。 或者继承自该接口的实现类org.apache.struts2.dispatcher.StrutsResultSupport。
这些类都有一个doExecute方法,用于执行结果视图。
综上:可以自己写一个结果视图。
例子:验证码
第一步:写一个类,实现接口或者继承接口的实现类
第二步:在struts.xml文件中配置结果类型
第三步:在action配置时引用