站内搜索: 请输入搜索关键词

当前页面: 开发资料首页Struts 专题Strutsnbsp;初学指南

Strutsnbsp;初学指南

摘要: Strutsnbsp;初学指南 Struts 应该已经不算很新的东西了, 不知道还有没有初学者需要下面的内容 一、Struts 简介 Struts 是 apache 组织 jakarta 项目...
Strutsnbsp;初学指南



↑返回目录
前一篇: Strutsnbsp
后一篇: Jakarta Struts应用框架介绍

    Struts 应该已经不算很新的东西了,
       不知道还有没有初学者需要下面的内容


一、Struts 简介
    Struts 是 apache 组织 jakarta 项目的一个子项目,用以改善 web 系统的结构。

    Web 系统本身的复杂性与业务流程的不确定性,是相当棘手且难于处理的。
例如,用户可能随时使用一个链接从系统的这部分跳到另一部分。又或者登陆一个
页面后可能隔半天没反映,而突然又请求另一项服务 …………
如果 Web系统没有一个很好地设计结构,这些烦人的问题能缠着你直到你崩溃,
或者系统崩溃。 即使你硬撑着闯过几关,后期维护工作又能把你逼疯,或者把
其他的维护人员逼疯! :)

    MVC(模型-视图-控制器)模式最重要的思想就是 业务代码 与 视图代码 分离。
能有效地理清系统结构,降低系统复杂度与维护难度。

Struts 就是基于J2EE 的 web 形式 MVC 模式实现!

    当然, Struts 不只是如此。 它主要由两大部分组成,其一是上面所说的改善
web 系统结构的 MVC 框架部分。 另一部分是 Struts 的标签库,主要由 web
页面制作人员使用。 

我们主要讲的是第一部分,一些入门级的内容,以及新手会碰到的一些问题。


二、环境配置
    我们用 Tomcat 4.1.29 + Struts1.1 来做演示。
Tomcat 的下载地址:
http://apache.linuxforum.net/dist/jakarta/tomcat-4/v4.1.29/bin/jakarta-tomcat-4.1.29.zip
Struts 的下载地址:
http://apache.linuxforum.net/dist/jakarta/struts/binaries/jakarta-struts-1.1.zip

添加环境变量: (例如:)
JAVA_HOME     C:\j2sdk1.4.2\
TOMCAT_HOME   C:\tomcat\

同时,你也需要将 Struts\lib\struts.jar 、Tomcat\common\lib\servlet.jar
文件添加到 CLASSPATH 变量中,代码编译时会用到。
(当然,有 eclipse 等集成环境就方便多了)

运行 Tomcat  \bin\startup.bat 启动 Tomcat 
Tomcat 测试: http://localhost:8080/        能看到那只猫就算成功了

Struts 其实根本不需要多少配置
解压 Struts 的下载压缩包,复制 \webapps\struts-example.war 文件
到 Tomcat 的 \webapps\ 目录下,然后重启 Tomcat 就可以测试
输入:http://localhost:8080/struts-example/  看到蓝色的“Struts”图标就OK了
注意:如果你测试老不成功,建议换台机子试试。
      Java 环境太乱测试会失败?!(我就这样憋了一天)



三、实例演示
    如果上面的配置做完了,我们开始要做个小演示。 演示任务是做一个用户
注册/登陆 的“站点”。 关于 Struts 的演示,这类用户注册/登陆的例子算是老套了。
不知道我的例子能否激起你的兴趣。 :)

首先,在 Tomcat\webapps\ 目录下建个子目录 取名 StrutsDemo
StrutsDemo 下的目录结构如图
 

StrutsDemo 下放所有的 .jsp 页面文件
复制 Struts 解压目录 lib\ 下的所有 *.tld 文件到 WEB-INF\ 下
这些是 Struts 的标签库文件,我们的例子会用到一点。

复制 Struts目录lib\ 下的所有 *.jar 文件到 WEB-INF\lib\ 目录
用到的 .jar 包都要放这儿,否则会发生找不到类资源的错误
(要做 Struts 相关的,起码要把 Struts 解压目录下 \lib 下的 .jar 考过来)

WEB-INF\classes\ 目录下(或它的子目录下) 还需要有个 .properties 资源文件
用来支持国际化

上面是准备一个基于 Struts 工程最基本的准备工作

本来打算贴代码,限于篇幅提供代码下载,已包含详细注释
下载:StrutsDemo.rar



四、初学者需要注意的问题
(1) 2个 .xml 的配置文件确实很烦人,特别是直接用记事本的朋友
   要有耐心, 格式一定要正确, 可以参考 Struts 自带的例子

(2) struts-config.xml 文件里Acturn 属性的 validate 字段属性需要设置为 “true”
   才能启动 对应 Form 的 validate 方法启动页面检测

(3) strturs_config.xml 配置文件中<action> 的 scope 字段,用来指定 Action 的活动范     围,默认的值是"session",所以一般我们将scope设置为"request"。 如果需要设置
为"session",则留心一下对应 Form Bean 的 reset() 方法还原 Form Bean 初始值;

(3)怎样制作 *_zh.properties 中文资源文件
   使用  JAVA_HOME\bin\ 目录下的 native2ascii 工具
   先制作一个 ApplicationResources.properties文件里采用中文书写信息
   然后 命令行窗口键入 
   native2ascii -encoding gb2312 ApplicationResources.properties 
                                           ApplicationResources_zh.properties

一时想不出来了,以后再添吧  -___-!!


参考资料:
《一些Struts方面的使用经验》   An LianWu (swimren@163.net)
《实例学习 Struts》   胡海生
…………