第一个Struts2应用开发


对于Struts2,以前曾经接触过,使用过,但是还是按照Struts1的方法使用,结果好好的一个Struts2的无侵入式设计让我搞的成了不伦不类,现在重新开始学习Struts2,希望用的更加规范一些,首先是第一个Struts2的第一个例子。

首先需要搭建开发环境,当然了,struts2可以从Apache的网站下载,这个不用多说。需要说一下在lib目录下面那些众多的jar包需要其中必须的jar包有六个。

开发Struts需要最少的jar
struts2-core-2.1.8    Struts2框架的核心类库
xwork-core-2.1.6     XWork类库,Struts 2 在其上构建
ognl-2.7.3 对象图导航语言,struts 2框架通过其读写对象的属性
freemarker-2.3.15  Struts2的UI标签模版使用FreeMarker编写
commons-logging-1.0.4     ASF出品的日志包,Struts2框架使用这个日志包来支持Log3j和JDK1.4+的日志记录
commons-fileupload-1.2.1   文件上传组建


然后把包导入到路径下面,接着写struts的配置文件,struts.xml需要配置在WEB-INF 下面的classes文件下面,所以把struts.xml放到src目录下面就行了。下面是代码

  1. <?xml version="1.0" encoding="UTF-8" ?>  
  2. <!DOCTYPE struts PUBLIC  
  3.     "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"  
  4.     "http://struts.apache.org/dtds/struts-2.0.dtd">  
  5.   
  6. <struts>  
  7.     <package name="bird" namespace="/test" extends="struts-default">  
  8.         <action name="helloworld" class="com.bird.action.HelloWorld" method="execute">  
  9.             <result name="success">/WEB-INF/jsp/hello.jsp</result>  
  10.         </action>  
  11.     </package>  
  12.     
  13.   
  14. </struts>  

其中包含了对一个Action类的配置信息,namespace命名空间是对这个action的一个访问路径限制,访问这个类Action就必须使用这个路径,/test/hellowold,然后必须继承struts-default包才能使用struts的大部分功能,

然后需要在web.xml 文件中配置启动struts信息,struts是使用filter启动的,详细配置如下

  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"  
  3.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  4.     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee    
  5.     http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">   
  6.     <display-name></display-name>  
  7.   
  8.     <filter>  
  9.         <filter-name>struts2</filter-name>  
  10.         <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>  
  11.     </filter>  
  12.   
  13.     <filter-mapping>  
  14.         <filter-name>struts2</filter-name>  
  15.         <url-pattern>/*</url-pattern>  
  16.     </filter-mapping>  
  17.       
  18.     <welcome-file-list>  
  19.         <welcome-file>index.jsp</welcome-file>  
  20.     </welcome-file-list>  
  21.       
  22. </web-app>  

然后把Action代码完善

  1. package com.bird.action;  
  2.   
  3. public class HelloWorld {  
  4.       
  5.     private String message;  
  6.   
  7.       
  8.       
  9.     public String getMessage() {  
  10.         return message;  
  11.     }  
  12.   
  13.   
  14.   
  15.     public String execute(){  
  16.         message = "我的第一个Struts2应用";  
  17.         return "success";  
  18.     }  
  19. }  

然后建立一个jsp页面就可以使用了

相关内容