服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

struts的优点及其在apusic上的安装


  struts开放源码框架的创建是为了使开发者在构建基于java servlet和javaserver pages(jsp)技术的web应用时更加容易。struts框架为开放者提供了一个统一的标准框架,通过使用struts作为基础,开发者能够更专注于应用程序的商业逻辑。struts框架本身是使用java servlet和javaserver pages技术的一种model-view-controller(mvc)实现,因此可以很好的运行在apusic应用服务器上。本文就将介绍如何在apusic上安装struts。struts是jakarta项目的一个子项目,发布版和源代码可用从http://jakarta.apache.org/struts/index.html获得。
  
  安装的先决条件
  struts发布版需要其他三个软件包首先被安装。你的系统可能已经安装了这些软件包。如果你要编译struts的源代码,那么就需要获得并安装另外一些软件包。完整的列表如下:
  ? java development kit--必须首先下载并安装java development kit。struts需要jdk1.2或更高版本,可以从http://java.sun.com/j2se下载。如果已经安装了apusic2.0,那么就包含了jdk1.3或jdk1.4。
  ?servlet容器--必须下载并安装servlet容器。struts要求这个servlet容器实现servlet规范2.2或更高版本和javaserver pages (jsp)规范1.1或更高版本。apusic2.0完全实现了servlet2.3和javaserver pages (jsp)1.2,非常适合。apusic可以从http://www.apusic.com/product/download.jsp获得。
  ?ant--如果你希望编译struts的源代码,那么就必须下载并安装ant1.3或更高版本。可以从http://jakarta.apache.org/ant/index.html下载获得。如果你使用的是ant1.3,那么还需要去下载"optional.jar"文件,用来实现ant的<style>命令。把ant_home/bin目录加入到系统的环境变量path中使ant和ant.bat脚本可用。
  ?servlet api 类--为了编译struts自身,或者应用程序使用了struts,那么你需要包含servlet api和jsp api类文件的jar。如果已经安装了apusic,那么apusic_home/lib目录下的apusic.jar就为你所需要的文件。
  ?jdbc 2.0可选包--struts支持jdbc可选的实现javax.sql.datasource。安装了apusic就已经包含了这个包。
  ?xml解析器--struts需要兼容java api for xml parsing (jaxp)的xml解析器。apusic 内置的xml解析器支持sax2 和dom level 2 应用编程接口,支持命名空间, 提供对xml高效的处理。
  ?xslt处理器--如果你希望编译struts源代码,那么就需要下载并安装xslt处理器。apusic_home/lib/ apxml.jar中已经包含了xslt处理器。
  
  通过上面的列表,我们知道了要安装struts所需要的先决条件。如果只是想在apusic上使用struts,那么步骤就非常简单:下载并安装apusic即可!
  
  安装struts
  首先下载struts的二进制发布版,然后确定你已经安装好了apusic服务器。
  把下载的struts发布版解压到一个确定的目录,包含如下的内容:
  ?lib/struts.jar--这个jar文件包含了所有的struts java类。这个文件应该拷贝到web应用的web-inf/lib目录下。如果你的多个web应用都使用了struts,就可以考虑把struts.jar放到一个共享的地方。例如同一个企业应用ear中包含的多个web应用都使用了struts,可以把struts.jar解开以目录的形式直接ear应用的根目录下。
  ?lib/struts*.tld--标记库描述文件,用来描述struts中使用的自定义标记。这些文件应该被拷贝到web应用的web-inf目录下。
  ?webapps/struts-blank.war--这是一个简单的war的文件。可以作为构建你自己的基于struts的web应用的一个起点。
  ?webapps/struts-documentation.war--这是一个war文件,包含了所有的struts文档。可以把这个应用部署到apusic上。
  ?webapps/struts-example.war--这是一个范例web应用,使用了很多struts特性。可以把这个应用部署到apusic上运行。
  ?webapps/struts-exercise-taglib.war--这个应用包含了测试页面,用来测试struts中定义的标记库。
  ?webapps/struts-template.war--这个web应用介绍和示范了struts模版标记。
  ?webapps/struts-upload.war--这个web应用展示了一个简单的文件上传的例子。
  
  如果你在web应用中使用struts,需要以下几个步骤:
  1. 拷贝lib/struts.jar文件到web应用的web-inf/lib目录下。
  2. 拷贝所有的lib/struts*.tld文件到web应用的web-inf目录下。
  3. 修改web应用的web-inf/web.xml文件。增加<servlet>标签来定义"控制servlet"和<servlet-mapping>标签来建立这个servlet的请求url映射。可以参考范例应用中web-inf/web.xml的语法。
  4. 修改web应用的web-inf/web.xml文件,增加标记库描述:
  
  <taglib>
  ??<taglib-uri>/web-inf/struts-bean.tld</taglib-uri>
  ??<taglib-location>/web-inf/struts-bean.tld</taglib-location>
  </taglib>
  
  <taglib>
  ??<taglib-uri>/web-inf/struts-html.tld</taglib-uri>
  ??<taglib-location>/web-inf/struts-html.tld</taglib-location>
  </taglib>
  
  <taglib>
  ??<taglib-uri>/web-inf/struts-logic.tld</taglib-uri>
  ??<taglib-location>/web-inf/struts-logic.tld</taglib-location>
  </taglib>
  
  <taglib>
  ??<taglib-uri>/web-inf/struts-template.tld</taglib-uri>
  ??<taglib-location>/web-inf/struts-template.tld</taglib-location>
  </taglib>
  5. 创建web-inf/struts-config.xml文件,定义动作映射和其他应用相关的特性。可以参考范例应用中web-inf/ struts-config.xml的语法。
  6. 在每一个需要使用struts标记库的jsp页面的开始处增加标记库声明,宣告这个页面将使用到的struts标记库。例如:
  <@ taglib uri="/web-inf/struts-bean.tld" prefix="struts-bean" %>
  <@ taglib uri="/web-inf/struts-html.tld" prefix="struts-html" %>
  <@ taglib uri="/web-inf/struts-logic.tld" prefix="struts-logic" %>
  <@ taglib uri="/web-inf/struts-template.tld" prefix="struts-template" %>
  7. 当编译应用的java类时,确定struts.jar在classpath中。

扫描关注微信公众号