第1讲 Struts 2框架入门

第1讲 Struts 2框架入门

Struts2简介

Struts2下载与安装

Struts2项目的基本组成

Struts2的配置文件

搭建Struts2开发环境

使用MyEclipse开发Struts2项目

1. Struts2简介

(1)web应用开发模式:

Model1:JSP+JavaBean

Model2:MVC模式 模型一视图一控制器(=Model-View-Controller)

第1讲 Struts 2框架入门_第1张图片

Model2开发模式

Struts1于2001.7月正式发布,它存在许多的缺陷:

l 只支持JSP作为其表现层技术

l 与Servlet API耦合严重,严重依赖于Web服务器,脱离服务器难于测试

l 属于侵入式设计(Struts1.0的Action中包含了大量的Struts1.0 API),影响代码重用)

 

Struts2于2006年底正式发布,较好的解决了Struts1的缺陷,使用了WebWork的设计理念,相对于Struts1而言,Struts2是一个全新的框架,它继承了Struts1和WebWork的许多优点。

l 增加了拦截器功能。在Struts2框架中,采用了来自WebWork框架中强大的拦截器功能。通过使用拦截器,实现了AOP功能,可以简化Web开发中的某些功能,如权限检查、日志功能等。

l 能够支持多种视图表现技术。在Struts1框架中,只支持JSP作为视图资源,而Struts2框架除了仍支持JSP作为视图资源外,还可以使用其它视图技术,例如:FreeMarker、Velocity、JasperReports等提供了类型转换功能。Struts2框架使用了数据类型转换器的处理机制,提供比较完善的数据类型转换支持。Struts2框架不但可以自动实现用户参数的类型转换,而且还提供了类型转换异常处理功能。

l 功能强大的表达式语言OGNL(Object Graph Navigation Language)。OGNL是Struts2框架默认的表达式语言,增强了Struts2的数据访问能力,同时简化了代码。

 

(2)什么是Struts2框架?

    Struts2实质上是在WebWork2框架的基础上发展而来的,和Struts1框架有着很大的不同。Struts2框架和Struts1框架并没有关系,之所以使用Struts2这个名称,主要是考虑到了Struts1框架已经被广泛使用,具有较高的市场占有率,这应该是一个战术上的问题。Struts2框架的技术更接近于WebWork2框架,对于熟悉WebWork框架技术的开发人员来说,使用Struts2框架进行Web应用开发会更得心应手,而对于熟悉Struts1框架技术的开发人员来说,使用Struts2框架进行Web应用开发则是一个全新的体验。

 第1讲 Struts 2框架入门_第2张图片

Struts2体系结构

2. Struts2下载与安装

(1)下载

l 打开网页http://struts.apache.org/,找到所需版本Struts2的链接

l 点击Struts 2.2.1.1链接,进入下载页面

(2)安装

       下载Struts2的完整版压缩包,下载后解压缩

 

3. Struts2项目的基本组成

l Struts项目的基本组成:

–  控制组件:核心控制器和业务控制(Action)

–  模型组件:JavaBean、EJB等

–  视图组件:JSP、HTML页面等

–  配置文件:web.xml、struts.xml等

l Struts2项目的文件结构

第1讲 Struts 2框架入门_第3张图片

 

4. Struts2的配置文件

(1)web.xml文件

所在目录为WEB-INF,主要用于配置Struts2的核心控制器,配置代码如下:

       struts2

      

       org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

      

       struts2

       /*

(2)struts.xml文件

核心配置文件,所在目录为WEB-INF\classes,主要用于负责管理Struts2框架的业务控制器Action,可在其中定义动作包、动作、拦截器等内容。可以应用include标识将复杂的配置文件分为多个文件,代码如下:

    "-//Apache Software Foundation//DTDStruts Configuration 2.0//EN"

   "http://struts.apache.org/dtds/struts-2.0.dtd">

      

             

                     /login.jsp

                     /welcome.jsp

             

      

(3)struts-default.xml文件

是struts2的预定义配置文件,保存在struts2-core类包中,定义了Struts2的各种常用类、动作包和拦截器。在struts.xml定义动作包时需要使用extends关键字设置指定包名继承struts-default包,例如:

(4)default.properties文件

保存在struts2-core类包中,用于保存Struts2的各种默认属性。常用属性如:

l struts.action.extension: 定义struts2动作的扩展名,默认为action;

l struts.i18n.encoding: 定义struts2的编码机制,默认值为UTF-8

default.properties文件中的所有属性可以通过自定义struts.properties(保存在src目录下)或struts.xml文件的constant标识进行修改,例如:

5.  搭建Struts2 开发环境

(1)前期工作

1)    安装JDK,配置好JDK环境变量;

2)    安装Web服务器(如Tomcat、Jboss等);

3)    配置好Web服务器。

(2)操作步骤

1)    创建一个web项目;

2)    通过buildpath命令将所需jar包(例如:前面提到的7个jar包)l加入项目中,或直接拷贝到lib目录;

3)    进行后续操作。

6. 使用MyEclipse开发Struts2项目

(1)操作步骤

1)     创建web项目;
2)     为项目添加Struts2类包支持;
3)     设置核心控制器(配置web.xml);
4)     创建业务逻辑控制器(Action),该Action类就是普通的Java类,一般有一个execute()方法;
5)     创建struts.xml配置Action,内容包括:定义Action、Action返回的视图资源,以及包命名空间信息等内容;
6)     创建视图页面;
7)     部署和运行struts2项目。

你可能感兴趣的:(JAVA,EE)