日志文章

2007年05月17日 13:45:32

初识struts

Struts是J2EE MVC 架构
Struts的两大优点:
1.Taglib是struts的标签库
2.页面导航.(通过一个配置文件,即可把握整个系统各部分之间的联系,这对于后期的维护有着莫大的好处)

Struts的其他优点:
1.     利用Struts提供的taglib可以大大节约开发时间。
2.     表现和逻辑分离。
3.     维护扩展比较方便。
4.     便于团队开发。

Struts安装配置
Struts框架的安装
  下面的以 Jakarta-tomcat-5.0.14为例,讲述安装过程。
1、     首先请到http://jakarta.apache.org/Struts 下载Struts,建议使用release版,最高版本为Struts-1.2.4,下载后得到的是一个ZIP文件。
2、     将ZIP包解开,可以看到这个目录:lib和webapps。webapps下有一些WAR文件。假设你的tomcat装在c:\Tomcat下,则将那些WAR文件拷贝到c:\Tomcat\wabapps,重新启动Tomcat即可。
3、     打开浏览器,输入http://localhost:8080/Struts-example/index.jsp,若能见到“Password by Struts”的深蓝色图标,即说明成功了。这是Struts自带的一个例子,附有详细的说明文档。可以做为初学者的入门教程。
4、     这样就得到了Struts框架的所有资源。

Struts框架的配置步骤
  结合一个web应用例子,介绍Struts框架的配置过程:
1、     新建一个web应用,在Tomcat\webapps下建立一个firstapp目录。
2、     将Struts目录的lib/commons-*.jar和lib/struts.jar拷贝到web应用的WEB-INF/lib目录。
3、     将Struts目录的lib/struts-*.tld拷到web应用的WEB-INF\lib目录。
4、     修改Web应用目录的WEB-INF/web.xml文件,可以参照Struts例子中的WEB-INF/web.xml文件来了解详细的语法要求。
web.xml文件如下:

<?xml version=”1.0” encoding=”ISO-8859-1”?>
<!DOCTYPE web-app
PUBLIC “-//Sun Microsystems, Inc. //DTD Web Application 2.3//EN”
http://java.sun.com/dtd/web-app_2_3.dtd”>

<web-app>
<display-name>Struts Blank Application</display-name>

<!-- 这是struts中的Controller(控制器),系统的指令中转由其,既ActionServlet类负责,它从struts-config.xml中读取配置信息,并在服务器后台自动启动一个线程。如果没有特别的要求(如添加语言编转功能),程序员可以不管这部分,照用就可以了。 -->

<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
  <param-name>application</param-name>
  <param-value>ApplicationResources</param-value>
</init-param>
<init-param>
  <param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
  </init-param>
<init-param>
  <param-name>debug</param-name>
  <param-value>2</param-value>
</init-param>
<init-param>
  <param-name>detail</param-name>
  <param-value>2</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>

<!—servlet可以映射成do为后缀的文件,当然后缀名可以改成任何名称 -->

<servlet-mapping>
  <servlet-name>action</servlet-name>
  <url-pattern>*.do<url-pattern>
</servlet-mapping>

<!—默认首页是index.jsp,可以有多个,系统按次序找,类似IIS -->

<welcome-file-list>
  <welcome-file>firstapp.jsp</welcome-file>
</welcome-file-list>

<!—Struts框架用到的标签库 -->

<taglib>
  <taglib-uri>struts/bean-el<taglib-uri>
  <taglib-location>/WEB-INF/tld/struts-bean-el.tld</taglib-location>
</taglib>

<taglib>
  <taglib-uri>struts/html-el</taglib-uri>
  <taglib-location>/WEB-INF/tid/struts-html-el.tld</taglib-location>
</taglib>

<taglib>
  <taglib-uri>struts/html-el</taglib-uri>
  <taglib-location>/WEB-INF/tid/struts-logic-el.tld</taglib-location>
</taglib>
<web-app>
5、     创建一个WEB-INF/Struts-config.xml文件来定义你的web应用的action映射关系。可以参照Struts例子中的Struts-config.xml文件来了解详细的语法要求。Struts-config.xml文件如下:
<!DOCTYPE struts-config PUBLIC
“-//Apache Software Foundation//DTD Struts Configuration 1.1//EN”
http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd”>

<struts-config>
  <!-- FormBean是struts的一个概念,本质是JavaBean,用来自动存储页面表单中各个域的值,并在适当的时候回填表单域,不需要象传统那样request.getparameter(“fieldName”);, -->
  <form-beans>
  </form-beans>
   
  <!-- 这里存放整个系统都可以使用的全局转向中转(Forward)地址,也类似于电视控制器上的各种按钮,可以转频道、调色等等是基于Struts的Web 应用的控制流程流转。一般情况下,一个Action处理完毕后,会转发到一个JSP页面进行显示。这也是JSP中的MVC的实现的要点。-->
  <global-forwards>
  </global-forwards>

  <!-- 还记得web.xml中后缀为do的请求吗?它们是转到这里处理的,这里相当于struts的Model部分,Model部分是struts中比较灵活的地方。 -->
  <action-mappings>
  </action-mappings>

  <!-- ApplicationResources.properties 资源文件定义 -->

  <message-resources parameter=”ApplicationResources” null=”false” />
<struts-config>

6、     在WEB-INF目录下建立一个ApplicationResources.properties文件,增加一个属性:
#-- titles –
title.index=Struts Tutorial

7、     在firstapp站点目录下建立firstapp.jsp,代码如下:
<%@ page contentType=”text/html;charset=gb2312” %>
<%@ taglib uri = “struts/logic-el” prefix=”logic” %>
<%@ taglib uri = “struts/bean-el” prefix=”bean” %>
<%@ taglib uri = “struts/html-el” prefix=”html” %>

<html:html locale=”true”>
<head>
<html:base/>
<title>
<bean:message key=”title.index”/>
</title>
</head>
<body>
测试Struts
</body>
<html:html>
8、     重新启动Web服务器Tomcat 5.0,在浏览器中输入:
http://localhost:8080/firstapp/firstapp.jsp
至此,Struts最简单的应用,利用标签建立jsp文件以及访问properties文件运行通过,说明Struts框架安装配置成功。

9、     注意:
(1)     ApplicationResources.properties必须放在WEB-INF/classes所在目录以下,相应地在struts-config.xml中如下配置才可用:
<!-- ApplicationResources.properties message resources Definitions -->
<message-resources parameter=”ApplicationResources” null=”false”/>

(2)     ApplicationResources.properties如果放在classes的子文件夹aa中,相应地在struts-config.xml中如下配置才可用:
<!—ApplicationResources.properties message resources Definitions -->
<message-resources parameter=”aa.ApplicationResources” null=”false”/>

安装文件
下载地址:http://struts.apache.org/download.cgi
可直接输入:http://apache.justdn.org/struts/binaries/jakarta-struts-1.2.4.zip
下载后得到一个名为:jakarta-1.2.4.zip的压缩包,解压后的目录如下:
  Contrib.——与JSTL相关的内容,一般都不会用到。
  Lib——此目录包含struts的核心JAR包、第三方JAR包、TLD和DTD文件。此目录是安装Struts的关键目录。
  Webapps——WAR形式的Struts文档和例子,可用WinRAR打开并解压。
   
在Eclipse中安装Struts的具体步骤如下:
1、     将Struts解压目录lib中所有的*.jar文件都复制到项目的…(项目名)/Web-INF/lib目录下。
2、     打开myweb的项目属性,将…(项目名)/Web-INF/lib包下的*.jar文件添加到库引用中。
3、     在…(项目名)/Web-INF下创建一个tlds文件夹,然后将Struts解压目录lib下所有的*.tld文件复制到这个tlds文件夹中。
4、     修改hello/Web-INF下创建一个web.xml文件,web.xml是Tomcat的应用配置文件.

Tags: struts  

类别: j2ee开发 |  评论(0) |  浏览(2479) |  收藏
发表评论
看不清楚,换一张