`
xpp02
  • 浏览: 1016751 次
社区版块
存档分类
最新评论

Struts2教程 - 1.4 Web项目中使用Struts2初探

 
阅读更多

在开始创建新的 Web 项目让其使用 Struts2 技术之前,请读者先去 Struts2 的官方网站 http://struts.apache.org/2.0.9/index.html  下载 Struts2 。个人推荐下载 struts-2.0.11.1-all.zip ,因为它包含了 Struts2 所有的内容,而且之后的说明和解释都是以该包解压后内容基础上进行的。

如果以上操作都完成了,请解压下载的 Struts2 开发包( struts-2.0.11.1-all.zip )。会看到图 1.4 显示的红框中的几个文件夹。


1.4  Struts2 文件结构图

在上图中除了两个文本文件是介绍 license 和官方网站介绍外,笔者对五个文件夹的内容逐一介绍。

Apps 文件夹中都是使用 Struts2 的一些官方示例。特别是 struts2-blank-2.0.11.1.war Struts2 Web 项目中基础配置的例子。如图 1.5 所示。


1.5  apps 文件结构图

Backport 文件夹中提供了是一些 Struts2 使用 Java4 Java5 互相转化的示例。由于 Struts2 主要是支持 Java5 JDK Java Develop Kit ),而有些公司还在使用 Java4 Java1.4 JDK 。因此 Struts2 设计者提供了这两个版本 Java 互相支持的转化工具和项目的示例。具体内容如图 1.6 所示。


1.6  backport 文件结构图

Docs 文件夹则是 Struts2 设计者提供给入门者的所有学习文档,这样初学者可以使用这些文件配合自己实际操作来加深对 Struts2 的理解。内容如图 1.7 所示。


1.7  docs 文件结构图

Lib 文件夹提供了 Struts2 在项目开发中所有应该支持的 jar 包,读者可以将这些包导入自己开发的 Web 项目使用的类库中。

注意:不是所有的 jar 包都是在读者的 Web 项目中需要的,读者可以选择部分 jar 包导入到自己的 Web 项目类库中。一般情况下 xwork-2.0.4.jar struts2-core-2.0.11.1.jar ognl-2.6.11.jar freemarker-2.3.8.jar commons-logging-1.0.4.jar 这些 jar 包是一定需要导入的。

文件结构图如图 1.8 所示。


1.8  lib 文件结构图

Src 文件夹是 Struts2 所有的源代码,因为 Struts2 也是一个开源的框架之一。因此所有的源代码都开放给开发者,开发者可以去查阅这些代码,了解 Struts2 的内部或底层实现机制。因此从这一角度来看也是入门者学些 Struts2 的一个很好的文档资料。如图 1.9 所示。


1.9  src 文件结构图

熟悉完 Struts2 的文件架构后,打开 MyEclipse ,如图 1.10 MyEclipse 的整体视图。


1.10  MyEclipse 开发视图

单击 File|New|Project 菜单,打开图 1.11 界面。


1.11   新建 Web 项目界面

选择图 1.11 中蓝色显示的 Web Project 项,单击“ Next ”按钮,打开图 1.12 界面。


1.12   设置新项目属性

在图 1.12 中,我们在界面中输入项目名称,比如本章是第一章笔者输入的项目名称是 C01 。项目文件一般都是放在缺省的 MyEclipse 设置的 workspace 文件夹下,当然读者也可以把“ Use defult location ”前的勾去掉,然后单击下一行右侧的“ Browse ”按钮选择自己想存放的项目路径。余下的都是项目中源代码即 Java 代码存放的路径和 JSP 等视图文件存放的路径。还有就是 URL ,以后项目部署成功后,都是按照这个 URL 去访问 Web 系统的。然后可以选择支持的 J2EE 的版本,这里是选择 Java EE 5.0 。然后单击“ Finsih ”按钮就完成 Web 项目初始配置。一个没有任何 Java 文件,视图文件以及配置文件的空白项目就如图 1.13 所示。在这基础上就能方便的把相应的 Struts2 文件配置在这个项目里。


1.13  C 01 项目基础结构

在此基础上我们将 Struts2 lib 文件夹中最基本的类库放到 C01 项目的 WEB-INF\lib 下。如图 1.14 所示。


1.14

也可右击项目名,在弹出的菜单中选择“ properties ”属性,如图 1.15 所示。


1.15   单击最下方的“属性”选项

在弹出的视图 1.16 中选择“ Java Build Path ”项,然后在右侧第三个选项卡“ Libraries ”中可以看到已经导入的 Struts2 的几个 jar 包。可以单击最右侧的几个选择 jar 包路径选择新的 jar 包或更改原有 jar 包设置按钮。弹出视图如图 1.16 所示。


1.16   导入项目支持的 jar

在图 1.13 中,在 WebRoot/WEB-INF/ 下有一个名为 web.xml 文件。该文件是 Web 项目的属性整体配置文件,特别是一些过滤器,拦截器还有 Servlet 的配置都在该文件里定义。如果要把 Struts2 C01 项目中使用,则要把 web.xml 修改成如下代码:

<!------------------------------------------- 文件名: web.xml-------------------------------->

<?xml version="1.0" encoding="UTF-8"?>

<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"

         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee

         http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">

         <filter>

                   <!-- 过滤器名字   -->

                   <filter-name>struts2</filter-name>

                   <!--  过滤器支持的 struts2   -->

                   <filter-class>

                            org.apache.struts2.dispatcher.FilterDispatcher

                   </filter-class>

         </filter>

 

         <filter-mapping>

                   <!-- 过滤器拦截名字   -->

                   <filter-name>struts2</filter-name>

                   <!-- 过滤器拦截文件路径名字   -->

                   <url-pattern>/*</url-pattern>

         </filter-mapping>

         <welcome-file-list>

                   <welcome-file>index.jsp</welcome-file>

         </welcome-file-list>

</web-app>

从代码中可知已经将 Struts2 的过滤转发器的映射以及 Struts2 拦截的文件路径定义都声明了,具体的代码含义将在之后章节会有介绍,这里只是让读者明白怎么在 Web 项目里用 Struts2

Struts2 还有自己基本的配置文件需要放置在 C01 项目中,也就是之前介绍过的 struts.xml struts.properties 文件。新建这两个文件,将其放在项目的 src 文件夹下,以后 build 整个项目时候,它们也会在 WebRoot\WEB-INF\classes\ 中出现。

放置完之后,效果图 1.17 如图 1.17 所示。


1.17   项目属性文件放置图

1.17 中的 messageResource.properties 是由 struts.properties 定义的扩展属性文件。它们之间关系就相当于 Java 中父类和子类的关系。子类扩展父类。同理也适用于这两个属性文件。现将这三个文件代码内容显示,只不过让读者知道里面有些什么内容,至于这些内容代表含义以后章节会详细介绍。

<!------------------------------------------- 文件名: struts.xml-------------------------------->

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE struts PUBLIC

"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"

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

<struts>

<!-- Action 所在包定义   -->

<package name="C01" extends="struts-default">

           <!--  全局导航页面定义   -->

           <global-results>

                    <result name="global">/jsp/login.jsp</result>

           </global-results>

<!-- Action 名字,类以及导航页面定义   -->

           <!--  通过 Action 类处理才导航的的 Action 定义   -->

           <action name="Login"

                    class="com.example.struts.action.LoginAction">

                    <result name="input">/jsp/login.jsp</result>

                    <result name="success">/jsp/success.jsp</result>

           </action>

           <!--  直接导航的的 Action 定义   -->

           <action name="index" >

                    <result >/jsp/login.jsp</result>                    

           </action>

</package>

</struts>

<!------------------------------------------- 文件名 struts.properties -------------------------------->

struts.custom.i18n.resources=messageResource

<!------------------------------------------- 文件名 messageResource.properties -------------------------------->

user.required= 请输入用户名!

pass.required= 请输入密码!

请读者看图 1.18


1.18   项目文件整体结构

该图的文件结构就是笔者配置的使用 Struts2 Web 项目 C01 的基础配置,然后就可以在里面新建视图文件和 Java 文件进行自己的 Web 项目开发。

通过简单的配置,也可以知道 Struts2 配置不是很难,而且在 MyEclipse 帮助下开发工作也是相当快捷的就能完成,并且 Struts2 提供的学习资料和示例也是非常丰富的,因此学习曲线是相当的平缓。在之后章节,笔者将对 Struts2 的各个组成部分和技术细节使用代码示例进行说明。

 

 

 更多信息请查看 java进阶网 http://www.javady.com

 

  • 大小: 16 KB
  • 大小: 7.9 KB
  • 大小: 27.3 KB
  • 大小: 29.9 KB
  • 大小: 43.9 KB
  • 大小: 11.8 KB
  • 大小: 16.5 KB
  • 大小: 13.4 KB
  • 大小: 17.9 KB
  • 大小: 13.7 KB
  • 大小: 6.7 KB
  • 大小: 9.5 KB
  • 大小: 21.9 KB
  • 大小: 2.5 KB
  • 大小: 10 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics