一、helloworld示例:
1. 新建web工程,解压strutsstruts2-core-2.1.x 。在其中找到struts.xml放进src下,2.1.6\apps\struts2-blank-
2.1.6下的struts.xml。 然后在lib下拷贝所有的jar除了junit和sprint-test放入工程lib下。
2.在web.xml下添加struts的配置:
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
这里是固定写法,约定俗成,不需要改动。
3.注释掉struts.xml多余内容,添加我们需要的内容:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<!--
<constant name="struts.enable.DynamicMethodInvocation" value="false" />
<constant name="struts.devMode" value="false" />
<include file="example.xml"/>
<package name="default" namespace="/" extends="struts-default">
<default-action-ref name="index" />
<action name="index">
<result type="redirectAction">
<param name="actionName">HelloWorld</param>
<param name="namespace">/example</param>
</result>
</action>
</package>
-->
<!-- Add packages here -->
</struts>
在其中加入如下配置,来完成我们的第一个helloworld:
<constant name="struts.devMode" value="true" />
<package name="default" namespace="/" extends="struts-default">
<action name="hello">
<result>
/hello.jsp
</result>
</action>
</package>
在webroot下建立hello.jsp,在web browser中输入:http://localhost:8080/projectName/hello.action
就会跳转到hello.jsp。第一个helloworld就完成了。
解释一下struts.xml:
<constant name="struts.devMode" value="true" />
开发模式,设为true后,修改了srtus.xml后不用每次都重启tomcat了。
namespace="/",是跟路径有关的,extends用它默认的就行。
4.在Eclipse中加入对struts2xml的标签提示:
windows > preference > 搜xml > xml Catalog > Add > key type:URI , key: http://struts.apache.org/dtds/struts-2.0.dtd , localcation : 指定dtd文件的路径 > OK >重新打开struts.xml.
二、运行机制说明:
http://localhost:8080/projectName/hello.action 的http请求request后,tomcat服务器收到该请求,从projectName知道了客户端要请求的webapps,所以进该webapps中参考web.xml,我们在web.xml中配过一个filter,所有的/*的请求都会交给filter处理,filter会参考strtus.xml,找到对应的namespace、action、result,找到result后,filter将这个请求forward到result对应的jsp文件,然后jsp把页面response给客户端。
三、为什么要使用strtus:
将请求拦截做处理,解析请求,根据struts写好的配置,分发到不同的页面,这样带来的好处是灵活性比较高,要修改跳转jsp页面,字需要修改result节点就行了。strtus还实现了业务逻辑(Model)与视图(View)的分离,业务逻辑不再混杂在jsp中,全部写到action中就行了,action起到了控制器(controller)的作用,这就是我们常说的MVC框架的实现。
四、对strtus2.2.1.1:
目前apache官方发布的最新struts版本是2.2.1.1,搭建环境跟2.0基本一致。
http://wenku.baidu.com/view/746440ee5ef7ba0d4a733bfd.html
分享到:
相关推荐
Struts2.0是一个流行的Java Web开发框架,用于构建企业级的MVC(Model-View-Controller)应用程序。它的核心是Action,一个处理用户请求并返回结果的组件。Struts2.0以其强大的功能、易用性和灵活性在开发社区中备受...
本篇文章将详细讲解如何通过JAR包对一个简单的Struts2 HelloWorld应用进行调试。 首先,我们来看一下压缩包中包含的文件: 1. **xwork-2.1.2.jar**:这是Struts2的核心库之一,包含了Action、Result和Validator等...
Struts2.0是Java Web开发中一个非常重要的框架,它基于MVC(Model-View-Controller)设计模式,极大地简化了Web应用的开发过程。这个"完整的struts2.0中文教程"提供了全面的学习资源,帮助开发者快速理解和掌握...
3. 编写JSP页面作为视图,展示"Hello, World!"。 **Struts2的拦截器(Interceptor)** Struts2的拦截器是处理请求和响应的重要组件,可以用来实现日志记录、权限检查、事务管理等功能。在`struts.xml`中,你可以...
利用Strtus2+hibernate+spring实现的用户管理小项目(内含mysql数据库脚本和所需的所有jar包),另外里面自己也做了一些封装,这个项目的说明可以参考我发表的博客"对SSH的一些认知
"strtus2自动漏洞检测工具"是一个专门针对Struts2框架的安全扫描工具,它能够帮助开发者和系统管理员自动化检测Struts2应用中存在的安全漏洞。 Struts2框架的安全性问题主要源于其组件的不恰当使用或配置错误,可能...
Struts2.0是一个强大的Java Web应用程序框架,用于构建基于MVC(Model-View-Controller)设计模式的Web应用。这个框架提供了丰富的功能,包括动作调度、类型转换、结果渲染、异常处理等,大大简化了开发流程,提高了...
在"Strtus2+spring+hibernate"的整合中,Spring通常作为整个应用的中心,负责管理其他组件(如Struts2的Action和Hibernate的SessionFactory)。Struts2负责接收HTTP请求,调用Spring管理的业务服务,这些服务通常会...
#### 一、`<html:form>` 标签 - **作用**:创建表单。 - **必备属性**:`action` 属性,用于指定用户提交表单后,由哪个组件进行处理。若缺少此属性,JSP将抛出异常。 - **其他常用属性**: - `enctype`:指定...
### 使用Struts构建登录页面详解 #### 知识点一:环境配置与工具选用 - **J2EE基础知识**:确保对JSP、Servlet、JavaBean等技术有一定的了解,这有助于更好地理解Struts框架的工作原理及其如何应用于项目中。...
一个简单的struts例子一个简单的struts例子一个简单的struts例子一个简单的struts例子一个简单的struts例子一个简单的struts例子一个简单的struts例子一个简单的struts例子一个简单的struts例子一个简单的struts例子...
而"Strtus2Login"可能是一个登录功能的示例,展示了Struts2如何处理用户登录请求,包括表单验证、数据校验和动作跳转等。 通过下载和研究这个SSH2项目,开发者不仅可以学习到SSH2框架的综合运用,还能掌握MySql...
在探讨Spring与Struts框架中XML配置文件的修改这一主题时,我们首先需要理解这两个框架的基本概念以及它们是如何通过XML配置文件协同工作的。Spring框架是一个轻量级的控制反转(IoC)容器,用于管理Java应用程序中...
### Maven2 完成 Struts2.0 项目打包实例详解 #### 一、Maven与Struts2.0简介 Maven是一个项目管理和理解工具,它提供了完整的生命周期管理,帮助开发者更容易地构建和管理Java项目。Struts2是Apache基金会下的一...
黑马程序,传播智客Strtus基础教学视频,四天课时,视频很清楚讲的很仔细
Struts2.0+Hibernate+Spring 是一个经典的Java企业级应用开发框架组合,也被称作SSH框架。这个组合提供了模型-视图-控制器(MVC)架构模式的支持,数据库持久化处理,以及依赖注入和面向切面编程的能力,极大地提高...
当你不会strtus2的配置的时候你可以来这里参考下,我自己做的笔记,感觉会帮助你的。
【基于Struts和JDBC的图书管理系统】是一个典型的Java Web应用程序,它利用了Struts框架进行业务逻辑控制,以及JDBC技术与SQL Server 2000数据库进行数据交互。这个项目非常适合Java初学者,因为它提供了从设计到...
- Location: D:\share\0750_Struts2.1.6\soft\struts-2.1.6\lib\struts2-core-2.1.6\struts-2.0.dtd 2. **导入示例项目失败** - JDK版本检查:确保使用JDK 6 - 项目右键 > Properties > Java Compiler > 选择6.0 ...
在Java Web开发中,Struts2和iBatis是两个非常重要的框架。...本文将详细介绍如何将这两个框架进行集成,以便于初学者理解。 **一、Struts2框架** Struts2是基于Apache Jakarta Struts的下一代MVC框架,它提供了强大...