Struts2 简介
Struts2的诞生
经过了六年的发展,struts1已经比较成熟了,但是它当初在设计上的缺陷一直都限制了他的发展,比如说,他只能够继承Action或者dispatchAction 继承是单继承。Action中的execute方法 无法调试 这说明struts1对servletAPI太过依赖。为了更好的发展struts2出现了,struts2使用的拦截器来处理客户请求,使得控制器和servletAPI完全分离。Struts2使用的webwork的核心设计模式来实现的。
目前web框架的现状
struts2:简单灵活的web框架
Spring web framework:最全面的web框架
Struts1:资源最丰富的web框架
Tapestry:组件最完美的web框架
Jsf:最接近asp.net的web框架
Struts2与其他的web框架的比较
Struts1 vs struts2:struts1的缺陷 action的单继承,对容器的依赖,表达式语言不完整,难使用,验证时类型转化错误。
Struts2 vs jsf:jsf缺陷 aop实现的依赖注入,过于依赖容器。
Struts2 vs spring web framework:后者的标签库缺乏,类型转化问题。
Struts1与struts2的详细比较
Action比较:struts1中action只能够进行单继承,当这个类继承了action类后就不能继承其他的类,限制了继承action类的扩展。Struts2中可以显现action接口,或者继承actionsupport类。
线程比较:struts1中的action是单例的,也就是说当用户访问action时它只会创建一个action来处理用户的请求,这样也就会出现一个线程安全的问题,当多个用户同时访问时,就会出现资源占用问题。 Struts2很好的解决了这个问题,它会一个访问创建一个action,不会出现线程问题,但是同时也有一个问题就是,它会不停的创建action实例占用类存。
Servlet API:struts1中实现了servlet API中暴露在外边的一个方法,过度依赖servlet API容器。Struts2不依赖容器。
获取对象比较:struts1中通过actionform来获取值。Struts2直接通过实现action的类的属性即可获取,更加方便直接。
前台语言比较:struts1是jstl el 。 struts2通过 ognl
Struts下载和介绍
下载struts2的压缩文件,解压后 有文件夹
Apps:struts2实例文件,对于初学者很有帮助。
Lib:struts2框架的核心jar包。
Src:包括struts2的全部的源代码。
Docs:相关的文档,api文档,快速入门等。
J4:让struts2支持jdk1.4的jar包
注意:struts2对tomcate服务器要求必须是5.5以上版本。
实际案例开发准备:
1. 拷贝所需要的jar包进项目中,在struts2中核心的有五个jar包:common-logging.jar ognl.jar, xwork.jar, struts2-core.jar, freemarker.jar
2. Struts.xml 用来描述action,是struts2的核心运用。
实际开发 实现一个简单的运用struts2的简单项目 步骤
1, 将刚才准备好的jar包贴进项目的lib目录下。
2, 修改web.xml文件,配置拦截器。
3, 创建一个struts.xml文件放在src目录下,由于struts2是默认在src目录下读取struts2.xml 文件,所有文件名和路径是固定的。
4, 创建action类 实现Action接口,或者继承actionsupport类
5, 修改struts.xml 在struts.xml文件中注册action类。
6, 创建请求进行访问。
*附件中为第一个简单入门例子
分享到:
相关推荐
这个"struts2入门例子"旨在帮助初学者理解Struts2的基本架构和核心功能,通过实际操作来学习如何配置Struts2框架以及实现页面跳转。 在Struts2中,`struts.xml`是核心配置文件,它是整个应用的入口点,负责定义动作...
2. **创建第一个Struts2应用**: 一个简单的"Hello, World!"示例是开始的最佳方式。你将创建一个Action类,它包含一个返回字符串的方法,这个字符串会被Struts2用来决定显示哪个页面。然后,你需要在Struts2配置文件...
Struts2的出现是为了结合Struts1和WebWork的技术优势,形成了一个全新的框架。它以WebWork为核心,同时保留了Struts1风格的开发流程。Struts2框架的版本号分为两个系列,即1.x和2.x,分别代表了Struts1和Struts2。 ...
在入门Struts2之前,需要准备以下开发环境和工具: - 开发工具:MyEclipse6(尽管它不直接支持Struts2,但可以使用其进行基础开发) - Web服务器:Tomcat6(用于部署和测试Web应用程序) - Struts版本:Struts*.*.**...
这个"默然说话struts2入门1-配置及第一个应用.rar"压缩包文件旨在帮助初学者理解Struts2的基本配置和如何创建一个简单的用户登录应用程序。下面将详细介绍Struts2的基础知识及其在实际应用中的步骤。 1. **Struts2...
Struts2是一个流行的Java Web应用程序框架,用于构建和维护可扩展、模块化和易于管理的Web应用。在本实例中,我们将深入探讨如何将Google的依赖注入框架Guice与Struts2整合,以实现更高效、更灵活的代码管理。 在...
创建第一个Struts2程序** - **配置web.xml**:在Web应用的`web.xml`中,添加Struts2提供的过滤器`FilterDispatcher`,并设置所有请求都通过这个过滤器处理。这与Struts1.x中的Servlet配置不同,Struts2使用过滤器...
在Eclipse中创建和运行第一个Struts应用程序包括: - 获取Jakarta Struts项目,并将其库文件添加到项目构建路径中。 - 创建一个新的动态Web项目,设置必要的项目属性。 - 创建ActionForm类,实现业务逻辑处理所需的...
在实践中,学习Struts2应从创建第一个Hello World程序开始,理解Action的生命周期,学习如何通过配置文件或注解进行URL映射。然后,接触Interceptor,了解其工作原理和编写自定义拦截器的方法。接着,学习Struts2的...
struts2 将要进行自定义类型转换的点数据从1个增加到3个 struts3 进行全局的类型转换 struts4 使用Struts2中内部类中的方法进行自定义类型转换,用到的类StrutsTypeConverter struts5 增加集合类型,使用范型 ...
Struts2框架是Java Web开发中的一个强大工具,它基于MVC(Model-View-Controller)设计模式,为开发者提供了一种结构化、易于维护的Web应用开发方式。本资源包含"15_学员用书_STRUTS2核心_IMAGE版.pdf"这本书的源码...
### 建立第一个Struts2应用程序:深入解析与实践 #### Struts2入门与环境搭建 在构建第一个Struts2应用程序的过程中,我们不仅需要掌握基本的开发流程,还应了解其与Java、Hibernate和Spring等框架的整合方法。...
- **第一个Struts2应用**:通过创建简单的“Hello World”应用,熟悉Struts2的基本配置和运行流程。 #### 三、Struts2核心概念 - **体系结构**:介绍Struts2的架构组成,包括FilterDispatcher、Action、Result、...
Struts2是一个基于MVC设计...了解并掌握Struts2的基础知识,包括其核心库、配置文件以及IDE的集成,是成为一名熟练的Struts2开发者的第一步。随着实践的深入,你将更熟悉如何利用Struts2实现复杂的业务逻辑和用户界面。
在MyEclipse中,创建一个Struts2项目的第一步是新建一个Dynamic Web Project,并导入Struts2的库。这些库包括struts2-core、struts2-convention、struts2-plugins等,它们包含了Struts2框架运行所需的所有组件。 接...