一、准备工作及实例1.解压struts-2.1.6-all.zipapps目录:struts2自带的例子程序docs目录:官方文档。lib目录:存放所有jar文件。Src目录:源文件存放地2.六个基本包struts2-core-2.1.6.jar:开发的核心类库freemarker-2.3.13.jar:struts2的UI标签的模板使用freemarker编写commons-logging-1.0.4.jar:日志包ognl-2.6.11.jar:对象图导航语言,通过它来读写对象属性xwork-2.1.2.jar:xwork类库,struts2在其上进行构建commons-fileupload-1.2.1.jar:文件上传组件
MyEclipse8 已经支持struts 2,但是现有的资料包括书籍、视频、网络资料均很少有人介绍在MyEclipse8 环境下的struts 2开发,甚至包括MyEclipse8 自带的帮助文件也是仅介绍其老版本MyEclipse6 开发struts 1.x的操作。本人综合各方面资料,对MyEclipse8 下的struts开发过程进行整理。
学习目标了解类型转换的概念创建自定义类型转换器什么是类型转换所有页面与控制器传递的数据均为String类型,而我们在对其进行处理时可能会用到各种数据类型,程序无法自动完成数据类型的转换,需要我们在代码中手动完成,这个过程称为类型转换。
本章内容Struts2输入基础校验应用输入校验的重要性、Struts2输入校验的实现方式手动编程实现输入校验校验框架实现输入校验Struts2输入校验高级用法自定义校验器visitor校验器的应用方法Struts2输入校验基础为什么要使用输入校验?Struts2中的输入校验手动编程方式:主要是通过在类中编写校验逻辑代码使用struts2校验框架:把校验逻辑放到配置文件中,实现校验逻辑代码与业务逻辑代码的分离。
本章内容Struts2国际化的实现原理国际化资源文件Locale Resource Bundle I18n Interceptor简单的struts2国际化实现过程的讲解。国际化资源文件的优先级手动选择显示语言.
第九章:拦截器主讲:刘雷学习目标拦截器的概念配置拦截器使用拦截器拦截器的概念拦截器(Interceptor)是动态拦截Action调用的对象,类似于Servlet中的过滤器。在执行Action的业务逻辑处理方法(execute())之前,Struts2会首先执行在struts.xml中引用的拦截器。拦截器是struts2的一个重要特性。
本章内容Struts2单文件上传Struts2多文件上传Struts2文件下载表单enctype属性application/x-www-form-urlencoded:默认值,只要是能输出网页的服务器端环境都可以multipart/form-data:上传二进制数据,只有使用multipart/form-data,才能完整的传递文件数据,进行上传操作两个上传框架Common-FileUplaod:apache的开源项目,由jakarta项目组开发。功能强大,简单易用,可以实现一次上传一个或多个文件,并可限制文件大小。
目标掌握OGNL表达式的使用掌握值栈的概念掌握struts2对OGNL表达式的增强OGNL简介Struts2的一个关键特性就是它可以对Action携带的数据进行读写访问。
学习目标掌握struts2的几个主要配置文件:struts.properties、struts-default.xml和struts.xml、struts-plugin.xml掌握struts.xml中各项内容的配置重点掌握Action和Result的配置掌握使用注解来配置
本章目标了解Struts2和XWork的关系,以及各自的职责熟悉Struts2的体系结构了解Struts2框架的调用流程WebWork的数据流图XWork2-----Struts2的基础与WebWork2相同,Struts2框架也是由两部分组成:XWork2和Struts2。XWork是一个命令模式框架,它是Struts2的基础。
Tapestry概述:Tapestry是一个全面web application框架,是使用JAVA写的。Tapestry不是一个application server,Tapestry是一个使用在applicationserver中的框架。Tapestry不是一个application,Tapestry是一个用来创建web application的框架。Tapestry不是JSP的一种使用方式,Tapestry和JSP只能够选择一种。Tapestry不是一个脚本环境,Tapestry使用一种组件对象模式(component object model),这并不是一种简单的脚本,而是用于生成高动态性高互交性的web页面。
0.提示1)Spring发行版本附带了PetClinic示例,它是一个在简单的表单处理的上下文中,利用了本节中说明的注解支持的Web应用程序。
Yii Yii是一个服务于整个框架辅助类。 YiiBase YiiBase是一个助手类,它服务于整个框架。 system.base CApplication CApplication是所有应用程序类的基类。 CApplicationComponent CApplicationComponent是所有应用组件类的基类。
大部分对REST的介绍是以其正式的定义和背景作为开场的。但这儿且先按下不表,我先提出一个简单扼要的定义:REST定义了应该如何正确地使用 (这和大多数人的实际使用方式有很大不同)Web标准,例如HTTP和URI。如果你在设计应用程序时能坚持REST原则,那就预示着你将会得到一个使用 了优质Web架构(这将让你受益)的系统。
Struts 2 自带拦截器 而且还很好用,使用既方便也简单!而Struts 1 没有拦截器的功能,所以就出现了 SAIF(Struts Action Invocation Framework) 插件.
JSON插件提供了一种名为json的ResultType,一旦为某个Action指定了一个类型为json的Result,则该Result无需映射到任何视图资源。将下载到的jsonplugin-0.7.jar文件复制到Web应用的WEB-INF路径下,即可完成JSON插件的安装。
这个标记库中包含用于定义新bean、访问bean及其属性的标记。Struts框架提供了多种自定义标记用来在JSP页中处理JavaBean。这些标记被封装在一个普通的标记库中,在文件struts-bean.tld中定义了它的标记库描述器。
早在我刚学Struts2之初的时候,就想写一篇文章来阐述Struts2如何返回JSON数据的原理和具体应用了,但苦于一直忙于工作难以抽身,渐渐的也淡忘了此事。直到前两天有同事在工作中遇到这个问题,来找我询问,我又细细地给他讲了一遍之后,才觉得无论如何要抽一个小时的时间来写这篇文章,从头到尾将Struts2与JSON的关系说清楚。
Spring发行版本附带了PetClinic 示例,它是一个在简单的表单处理的上下文中, 利用了本节中说明的注解支持的Web应用程序。 可以在“samples/petclinic ”目录中找到PetClinic 应用程序。
Struts2是在WebWork2基础发展而来的。和struts1一样, Struts2也属于MVC框架。不过有一点大家需要注意的是:尽管Struts2和struts1在名字上的差别不是很大,但Struts2和struts1在代码编写风格上几乎是不一样的。那么既然有了struts1,为何还要推出struts2。