码迷,mamicode.com
首页 > 其他好文 > 详细

Struts2

时间:2015-06-12 00:32:14      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:

     struts框架具有组件的模块化,灵活性和重用性的优点,同时简化了基于MVC的web应用程序的开发。

     strutsstruts可以清晰地区分控制,事务逻辑和外观,从而简化了开发应用程序的过程。struts提供的类使得开发工作更加简单,这些类包括:实现和执行程序事务逻辑的类

自定义的标记库使得创建和验证HTML表单更加容易

   

文件夹jakarta-struts-1.0.2包含两个目录,lib和webapps。在lib目录中有使用struts创建应用程序是所需的文件。

1 jdbc2_0-stdext.jar 包含JDBC2.0 Optional Package API类。如果我们要使用struts提供的数据资源,就需要将这个文件拷贝到WEB-INF\lib下

2 Struts.jar 包含struts中所有的java类。同样也需要拷贝到WEB-INF\lib下

3 *.tld 标记库描述器文件,描述了多个struts标记库中的自定义标记。同样要拷贝到WEB-INF\lib下

在webapps目录下有如下文件:

1 Struts-blank.war 一个简单的web应用程序

2 Struts-documentation.war 包含struts站点上所有struts文档

3 Struts-example.war Struts很多特性的示范

4 Struts-exercisetaglib.war 主要用于对自定义标签库进行增加而使用的测试页,但也可以示范如何使用struts标记

5 Struts-template.war 包含struts模板标记的介绍和范例

6 Struts-upload.war 一个简单的例子,示范如何使用struts框架上传文件让我们从MVC角度观察struts框架中的组件,框架中三个部分:模型,视窗和控制器。

 

安装Struts2 这一步对于Struts1.x和Struts2都是必须的,只是安装的方法不同。Struts1的入口点是一 个Servlet,而Struts2的入口点是一个过滤器(Filter)。因此,Struts2要按过滤器的方式配置。

下面是在web.xml中配置Struts2的代码:

<filter>

<filter-name>struts2</filter-name>

<filter-class>

org.apache.struts2.dispatcher.FilterDispatcher

</filter-class>

</filter>

<filter-mapping>

<filter-name>struts2</filter-name>

<url-pattern>/*</url-pattern>

</filter-mapping>

 


这一步和Struts1.x也必须进行。只是Struts1.x中的动作类必须从Action类中继承,而Struts2.x的动作类需要从com.opensymphony.xwork2.ActionSupport类继承。下面是计算两个整数代码和的Action类,代码如下:

 

package action;

import com.opensymphony.xwork2.ActionSupport;

public class FirstAction extends ActionSupport

{

   private int operand1;

   private int operand2;

public String execute() throws Exception

{

if (getSum()>=0)//如果代码数和是非负整数,跳到positive.jsp页面

{

return "positive";

}

else//如果代码数和是负整数,跳到negative.jsp页面

{ return "negative";

}

}

public int getOperand1()

{

return operand1;

}

public void setOperand1(int operand1)

{

System.out.println(operand1);

this.operand1=operand1;

}

public int getOperand2()

{

return operand2;

}

public void setOperand2(int operand2)

{

System.out.println(operand2);

this.operand2=operand2;

}

public int getSum()

{

return operand1+operand2;//计算两个整数的代码数和

}

}

从上面的代码可以看出,动作类的一个特征就是要覆盖execute方法,只是Struts2的execute方法没有参数了,而Struts1.x的execute方法有四个参数。而且execute方法的返回值也不同的。Struts2只返回一String,用于表述执行结果(就是一个标志)。上面代码的其他部分将在下面讲解。  

 

Struts2

标签:

原文地址:http://www.cnblogs.com/yangdeiwei/p/4570413.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!