Struts是一个非常流行并被许多企业级应用程序采用的WEB框架,Struts2在Struts1.x的基础上进行了大量改造,和WebWork合二为一,引进了更多的新观念、新思想和新技术,使之更符合J2EE应用程序开发的需要。
学一门新技术时,第一个应用程序非常重要,本文简单介绍了下struts2写了一个hello world程序,并有部分讲解希望能够给struts爱好者提供一点点帮助
struts2与struts1.x有很大差异,struts2的配置文件为struts.xml相当于struts1中的struts-config.xml文件 其次放的位置也不同 struts.xml放在项目的src下面使用myeclipse发布的时候会自动复制到classes下面
struts.xml代码
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="com.struts2.demo" extends="struts-default">
<action name="Hello" class="com.struts2.demo.Hello">
<result>/index.jsp</result>
</action>
<!-- Add your actions here -->
</package>
</struts>
将Struts2所带的过滤器org.apache.struts2.dispatcher.FilterDispatcher配置到工程的web.xml文件中,默认情况下,该过滤器拦截请求字符串中以.action结尾的请求,并将该请求委托给指定的Action进行处理。最直观的表现就是调用Action的execute()方法。代码如下 <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> 我们的java文件 相当于使用struts1的action 但这里是继承了ActionSupport 是webwork中的类
package com.struts2.demo;
import com.opensymphony.xwork2.ActionSupport;
public class Hello extends ActionSupport{
private String message;
public void setMessage(String message){
this.message = message;
}
public String getMessage(){
return message;
}
public String execute() throws Exception{
setMessage("Hello my first Struts2 demo");
return SUCCESS;
}
}
注:ActionSupport是Struts2提供的类,功能类似于Struts1.x中的Action类,该类封装了几个有用的功能,比如:
getText():从资源文件中获取国际化消息。
addFieldError():验证输入未通过时添加错误消息,支持国际化。
execute():该方法一般会被重写,当客户端向Action发送请求时,会调用此方法。
标签名称 说明
include 包含其他xml文件,在示例中,这意味着struts.xml可以访问定义在struts-default.xml文件中的组件。
该元素可以使得Struts2定义多个配置文件,“分而治之”。
要注意的是,任何一个struts2配置文件都应该和struts.xml有相同的格式,包括doctype,并且可以放在类路径下的任何地方。
package 为Action或截拦器分组。
name:名称,必填项,名称自定义,没特别要求。方便别的package引用。
extends:package能继承其他的package,即通过该属性实现,值为另一个package的name。
在示例中,extends =”struts-default”是从struts-default.xml中继承的。
action 定义Action,name属性为访问时用到的名称,class属性是Action的类名。
result 根据Action的返回值定义页面导航。
Action的预定义的返回值有:
String SUCCESS = "success";
String NONE = "none";
String ERROR = "error";
String INPUT = "input";
String LOGIN = "login";
比如,当Action返回SUCCESS时希望转到index.jsp页面,则可以这样写:
<result name=”success”>index.jsp</result>
其中,name的缺省为success。
返回的页面代码 <%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<title>Hello World!</title>
</head>
<body>
<h2><s:property value="message" /></h2>
</body>
</html>
最后访问http://127.0.0.1:8081/Hello.action 可能和你建的项目路径不同
这样就完成了一个hello world程序
还在 如果有好的资料希望可以分享一下 最后还是希望可以提出宝贵意见
分享到:
相关推荐
【JSP+Bean循序渐进教程】是一个全面学习JSP与JavaBean技术的资源集合,旨在帮助初学者和开发者逐步掌握这两种核心技术在Web开发中的应用。本教程以理论结合实践的方式,深入浅出地讲解了如何使用JSP和JavaBean进行...
针对读者的不同学习阶段,共分技术篇、实践篇与部署篇三大部分进行循序渐进地讲解。 本书为高性能Java EE应用开发人员提供一整套实用的主流开发技术,融入了作者多年的高性能Java EE应用开发经验。
教材采用循序渐进的方式,从简单到复杂,逐步引导读者掌握Struts2框架的使用。 Struts2的安装环境构建步骤包括安装JDK、配置环境变量、安装Web服务器(如Tomcat)以及部署Struts2应用。在安装Struts2之前,需要确保...
我的基本观念是,面向对象的思维方式是可以循序渐进地培养出来的。通俗地讲,就是不断地编码实践,量变会引起质变。记得参加工作后做的第一个项目是某电信局的运营支撑系统开发,采用的开发框架是Struts1+EJB+...
针对读者的不同学习阶段,共分技术篇、实践篇与部署篇三大部分进行循序渐进地讲解。 本书为高性能Java EE应用开发人员提供一整套实用的主流开发技术,融入了作者多年的高性能Java EE应用开发经验。 ----------大型...
充分考虑初学者的需要 以实例讲解为基础 探索组件的设计思想 书中实例都来源于真实的项目开发 力争与实际工作紧密结合 内容讲解由浅入深 循序渐进 可以满足不同层次读者的需求本书详细讲解了Struts 2 1 Hibernate 3 ...
充分考虑初学者的需要 以实例讲解为基础 探索组件的设计思想 书中实例都来源于真实的项目开发 力争与实际工作紧密结合 内容讲解由浅入深 循序渐进 可以满足不同层次读者的需求本书详细讲解了Struts 2 1 Hibernate 3 ...
《Struts Hibernate Spring集成开发宝典》选取的实例繁简适中,与实际开发工作紧密结合,内容讲解由浅入深、循序渐进,可以满足不同层次读者的需求。 作者简介 陈天河,具有多年的软件开发经验,从事基于Java的Web...
本书是共分为12章,内容以实用为主,原理和实例相辅相承,由浅入深,循序渐进。前7章是Struts的基础,其中有Struts基本概念、Struts的AcitionForm、Struts标签和Struts的Action等内容;第8-11章是Struts比较高级的...
请下载Struts Hibernate Spring集成开发宝典.part1.rar和Struts Hibernate Spring集成开发宝典.part2.rar 《Struts Hibernate Spring集成开发宝典》中文...·内容讲解由浅入深、循序渐进,可以满足不同层次读者的需求
Struts Hibernate Spring集成开发宝典》中文pdf版 计算机电子书下载,《Struts Hibernate Spring集成开发宝典》以Struts,Hibernate,Spring为核心详细地...·内容讲解由浅入深、循序渐进,可以满足不同层次读者的需求
Struts Hibernate Spring集成开发宝典》中文pdf版 计算机电子书下载,《Struts Hibernate Spring集成开发宝典》以Struts,Hibernate,Spring为核心详细地...·内容讲解由浅入深、循序渐进,可以满足不同层次读者的需求
那还等什么,本套视频教程从底层原理代码入手,循序渐进,透彻地向你展示了Spring 2.5的基本应用和各项新功能,清晰地讲解了如何使用Spring的最新和最优雅的方式来集成Struts,Struts2,Hibernate,JPA等流行的框架和...
在学习Struts的过程中,"Struts八步教程:Struts让我试着了解你"提供了一个循序渐进的方法来熟悉和掌握这个框架。下面,我们将详细讲解这八步教程中可能涵盖的关键知识点。 1. **环境配置**:首先,你需要设置Java...
那还等什么,本套视频教程从底层原理代码入手,循序渐进,透彻地向你展示了Spring 2.5的基本应用和各项新功能,清晰地讲解了如何使用Spring的最新和最优雅的方式来集成Struts,Struts2,Hibernate,JPA等流行的框架和...
全书分为9篇,内容层次清晰,难度循序渐进。第1篇为入门篇,内容包括Java Web开发概述等;第2篇为基础篇,内容包括Servlet技术、JSP技术、会话跟踪、过滤器Filter、监听器Listener等;第3篇为高级篇,内容包括JSTL...