SFD2008 in GuiZhou University Eddan

Tuesday Jan 20, 2009

一、Struts是采用Java Servlet/JavaServer Pages技术,开发Web应用程序的开放源码的framework。
采用Struts能开发出基于MVC(Model-View-Controller)设计模式的应用构架。
Struts有如下的主要功能:
1. 包含一个controller servlet,能将用户的请求发送到相应的Action对象。
2. JSP自由tag库,并且在controller servlet中提供关联支持,帮助开发员创建交互式表单应用。
3. 提供了一系列实用对象:XML处理、通过Java reflection APIs自动处理JavaBeans属性、国际化的提示和消息。
下载地址:http://jakarta.apache.org/struts
JSP Framework - Struts介绍 
Struts是采用Java Servlet/JavaServer Pages技术,开发Web应用程序的开放源码的framework。 

采用Struts能开发出基于MVC(Model-View-Controller)设计模式的应用构架。 

Struts有如下的主要功能: 

1. 包含一个controller servlet,能将用户的请求发送到相应的Action对象。 

2. JSP自由tag库,并且在controller servlet中提供关联支持,帮助开发员创建交互式表单应用。 

3. 提供了一系列实用对象:XML处理、通过Java reflection APIs自动处理JavaBeans属性、国际化的提示和消息。

Struts是Jakarta项目的一部分,主页在http://jakarta.apache.org/struts

Version 0.5的下载地址:http://jakarta.apache.org/builds/jakarta-struts/release/v0.5 

二、Struts的安装 
1 安装Struts需要的软件 

Java Development Kit - 你需要download和install 1.2(或之后)版本的JDK。下载地址:http://java.sun.com/j2se
Servlet Container - 通常的选择是下载Tomcat(至少是3.1版,推荐使用3.2版)。下载地址:http://jakarta.apache.org/tomcat
Ant Build System - 如果你通过Struts源码发布包安装,你必须下载1.1或之后版本的ant build system。在你通过Struts来开发你自己的Web应用程序是,我也推荐使用ant来build你的应用。下载地址:http: //jakarta.apache.org/ant
Servlet API Classes - 为了编译Structs自己,或应用程序使用Struts,你需要一个包含Servlet和JSP API对象的servlet.jar包。大多数 Servlet container(例如Tomcat)已经自带了这个文件。否则,你必需下载:http: //jakarta.apache.org /builds/jakarta-servletapi
XML Parser - Structs需要一个与Java API for XML Parsing(JAXP)规格兼容的XML处理器。我推荐使用Xerces。下载地址:http://xml.apache.org/xerces-j
Xalan XSLT Processor - 如果你通过Structs源码发布版来构造你的Structs系统,你必须下载和安装1_2_D01或之后版本的Xalan XSLT处理器(Xerces 中已自带Xalan)。这个处理器用于将基于XML的Structs文档转换为Html文档。



2 通过源码构造Structs

2.1.下载Structs的源码发布包。
2.2.设置ANT_HOME环境变量,指向你的Ant目录。
2.3.设置JAVA_HOME环境变量,指向你的JDK目录。
2.4.设置SERVLETAPI_HOME环境变量,指向你的Servlet API目录(如果你的CLASSPATH已经包含了servlet.jar,就不需要指定该目录)
2.5.将Structs的源码发布包进行解包。
2.6.进入Structs目录,运行以下命令:
./build.sh dist
该命令将创建Struts的二进制发布包,目录在../dist/structs(相对于你的编译目录)。



3 通过Struts的二进制发布包安装Structs 

3.1.下载Struts的二进制发布版。
3.2.将Struts的二进制发布版进行解包。(如果你是通过Struts源码构造Struts,build的结果就已经是已解包的Struts)。解包后的Struts包含以下内容:
lib/struts.jar - 这个文件包含了Struts的所有Java对象。你需要把它拷贝到你的Web应用的WEB-INF/lib目录。
lib/structs.tld - 这是一个"tag library descriptor"文件,它描述了Struts库的自由tag。需要将它拷贝到你的Web应用的WEB-INF目录。
webapps/struts- documentation.war - 这是一个"web application archive"文件,包含了所有的Struts文档。你可以将它安装到支持Servlet API 2.2或之后版本的servlet container(推荐使用tomcat)中。
webapps/struts-example.war - 这是一个web应用实例,它广泛地演示了Struts的许多功能。你可以将它安装到兼容Servlet2.2或之后版本以及JSP1.1或之后版本规范的servlet容器中(推荐使用tomcat)。
webapps/struts-test.war - 这个web应用包含了Struts支持的许多tag的测试网页,可以作为使用Struts tag的例子.

可通过以下的步骤在你自己的应用程序中使用Struts:
1.将Struts目录的lib/struts.jar拷贝到web应用的WEB-INF/lib目录。
2.将Struts目录的lib/struts*.tld拷贝到web应用的WEB-INF目录。
3.修改Web应用目录的WEB-INF/web.xml文件,增加一个元素来定义controller servlet,增加一个元素来建立URI请求与servlet的对应关系。可以参照Struts例子中的WEB-INF/web.xml文件来了解详细的语法要求。
4.修改Web应用目录的WEB-INF/web.xml文件,使之包含以下的tag库定义:

/WEB-INF/struts.tld
/WEB-INF/struts.tld

/WEB-INF/struts-bean.tld
/WEB-INF/struts-bean.tld

/WEB-INF/struts-logic.tld
/WEB-INF/struts-logic.tld

5.创建一个WEB-INF/action.xml文件来定义你的web应用的action映射关系。可以参照Struts���子中的action.xml文件来了解详细的语法要求。
6.在使用Struts tag库的JSP网页中加入以下tag库定义:
<@ taglib uri="/WEB-INF/struts.tld" prefix="struts" %>
<@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
7.最后,在编译你的web应用的java程序时,不要忘了在CLASSPATH中包含struts.jar文件。

经过实验:在Netbeans平台上,在选择了stucts时,勾上后“添加structs TLD”,以上需要struct的二进制包会自动产生,若是没有勾上这个选项就按照上述步骤手动下载二进制包,然后复制粘贴相关文件到对应目录。
Reference:http://www.javaresearch.org/article/53961.htm

Comments:

Post a Comment:
  • HTML Syntax: NOT allowed