`

struts2入门 struts2简介-第一个程序

阅读更多
                    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, 创建请求进行访问。

*附件中为第一个简单入门例子


0
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics