Struts2基础教程:从入门到实践

需积分: 10 3 下载量 165 浏览量 更新于2024-07-30 收藏 2.93MB PDF 举报
"这是一份Struts2的入门教程,旨在帮助初学者快速理解并掌握Struts2框架。教程由作者在2009年制作,基于Struts2 V3.0版本,融合了Struts1和Webwork的优势,提供了一个简明的学习路径。教程强调实用性,适合希望短时间内对Struts2有基本了解的读者。教程内容可能不包含深入精通Struts2所需的所有细节,但鼓励读者通过与其他开发者交流和自我学习来进一步提升。教程作者呼吁社区成员贡献自己的知识,以使教程更加完善。同时,教程作者推荐了一些相关的JavaWeb和JSF书籍,以便读者巩固基础知识和深化理解。" Struts2是一个强大的Java Web应用程序框架,它是Apache软件基金会下的一个开源项目。这个框架主要用来解决MVC(模型-视图-控制器)设计模式在实际应用中遇到的问题,为开发者提供了更好的控制层结构。Struts2的核心是Webwork框架,它引入了拦截器(Interceptor)的概念,使得处理请求和响应的过程更加灵活和可扩展。 Struts2的入门涉及以下几个关键知识点: 1. **Action类**:在Struts2中,Action类是业务逻辑的载体,负责接收用户请求,执行相关操作并返回结果。 2. **配置文件**:`struts.xml`是Struts2的主要配置文件,用于定义Action及其对应的URL映射、结果类型、拦截器栈等。 3. **拦截器**:拦截器是Struts2的一大特色,它们按照预定义的顺序在Action执行前后执行,提供了事务管理、日志记录、权限验证等功能。 4. **结果类型(Result)**:Action执行后的结果可以重定向到不同的视图,如JSP、Freemarker模板等。 5. **OGNL(Object-Graph Navigation Language)**:Struts2使用OGNL作为默认表达式语言,用于在Action与视图之间传递数据。 6. **插件机制**:Struts2拥有丰富的插件库,支持与各种技术(如Hibernate、Spring等)的集成。 7. **Action上下文(ActionContext)**:存储请求和会话中的数据,为Action提供上下文信息。 8. **表单验证**:Struts2提供了基于注解和XML的表单验证机制,可以方便地实现客户端和服务器端的数据验证。 9. **国际化(i18n)支持**:Struts2内置了对多语言的支持,可以方便地切换不同语言环境。 10. **模板技术**:Struts2支持多种模板技术,如JSP、FreeMarker、Velocity等,用于生成动态视图。 学习Struts2的过程中,了解和掌握这些基本概念和机制是至关重要的。通过阅读本书籍和参与社区交流,初学者能够迅速建立起对Struts2框架的理解,从而在实际项目中运用自如。同时,作者提供的相关书籍推荐,如《JSF编程》、《JavaWeb整合》和《精通JSF》,可以帮助读者从更广泛的角度理解和比较其他Web框架,从而更好地掌握Struts2。
2013-01-11 上传
第 1章 STRUTS2入门................................................................................................................................................3 第 2章STRUTS2晋级.................................................................................................................................................9 第 3章 STRUTS2核心概念......................................................................................................................................15 3.1 struts2的体系结构..................................................................................................................................16 3.2 struts2配置文件......................................................................................................................................17 3.3 Action配置.................................................................................................................................................25 第 4章 表单验证...................................................................................................................................................28 4.1 手动完成输入校验.....................................................................................................................................31 4.2 struts2框架实现数据校验.....................................................................................................................34 第 5章 国际化实现...............................................................................................................................................37 5.1 页面的国际化.............................................................................................................................................38 5.2 Action的国际化.........................................................................................................................................39 5.3 验证信息的国际化.....................................................................................................................................41 第 6章 拦截器浅析...............................................................................................................................................42 6.3 拦截器基础.................................................................................................................................................42 6.2 使用拦截器.................................................................................................................................................43 6.3 自定义拦截器.............................................................................................................................................45 6.4 综合示例.....................................................................................................................................................49 第 7章 探讨IOC模式..............................................................................................................................................49 第 8章 STRUTS2标签..............................................................................................................................................54 第 9章 表达式OGNL...............................................................................................................................................78 9.1 OGNL概述.....................................................................................................................................................79 9.2 OGNL基础.....................................................................................................................................................80 9.3 struts2中OGNL..........................................................................................................................................82 9.4 OGNL使用示例.............................................................................................................................................83 第 10章 上传下载.................................................................................................................................................85 第 11章 视图浅析.................................................................................................................................................89 第 12章 集成AJAX..................................................................................................................................................89 12.1 JSON概述...................................................................................................................................................89 12.2 JSON-RPC概述...........................................................................................................................................90 12.3 JSON示例...................................................................................................................................................90 12.4 struts2与JSON例................................................................................................................................93 第13章 集成HIBERNATE...........................................................................................................................................96 13.1系统总体设计图........................................................................................................................................96 13.2系统用例图................................................................................................................................................97 13.3 数据库.......................................................................................................................................................97 13.4系统效果图展示........................................................................................................................................98 13.5代码清单..................................................................................................................................................105 13.6 代码树形图.............................................................................................................................................125 第14章 集成SPRING.............................................................................................................................................125 第 15章 集成IBATIS.............................................................................................................................................134 第 16章 集成JQUERY 16.1 什么是Jquery.........................................................................................................................................134 16.2 Jquery操作CSS.......................................................................................................................................134 16.3 Jquery操作DOM.......................................................................................................................................136 16.4 Jquery处理text.....................................................................................................................................142 16.5 Jquery处理xml.......................................................................................................................................144 16.4 Jquery处理json.....................................................................................................................................144
2016-01-07 上传
一、准备工作及实例 3 1.解压struts-2.1.6-all.zip 3 2.六个基本包 3 3.初识struts2配置文件 4 (1).web.xml文件 4 (2).struts.xml文件 4 (3).struts.properties(参default.properties) 4 (4)struts-default.xml 4 (5)其它配置文件 4 4.让MyEclipse提示xml信息 4 5.如何使用alt+/提示 4 6.实例 4 7.开启struts2自带的开发模式常量 6 8.vo传参模式 7 9.ModerDriven传参模式(不建议采用) 7 10.为什么要使用struts2代替struts1.x 7 二、struts.xml配置及例程 7 1.配置文件的优先级 7 2.配置形式 8 3.package配置相关 8 4.分工合作include:指定多个配置文件 10 5.tomcat认证访问 10 6.初识拦截器 11 7.Action中的method属性 12 8.使用ForwardAction实现页面屏蔽。 13 8.使用default-Action配置统一访问 14 小结Action 14 9.使用通配符 14 10.使用0配置:ZERO Annotation 15 11.Result配置详解 15 探讨type类型: 16 Type类型值 16 作用说明 16 对应类 16 chain 16 用来处理Action链 16 com.opensymphony.xwork2.ActionChainResult 16 dispatcher 16 用来转向页面,通常处理JSP 16 org.apache.struts2.dispatcher.ServletDispatcherResult 16 redirect 16 重定向到一个URL 16 org.apache.struts2.dispatcher.ServletRedirectResult 16 redirectAction 16 重定向到一个Action 16 org.apache.struts2.dispatcher.ServletActionRedirectResult 16 plainText 16 显示源文件内容,如文件源码 16 org.apache.struts2.dispatcher.PlainTextResult 16 freemarker 16 处理FreeMarker模板 16 org.apache.struts2.views.freemarker.FreemarkerResult 16 httpheader 16 控制特殊http行为的结果类型 16 org.apache.struts2.dispatcher.HttpHeaderResult 16 stream 16 向浏览器发送InputSream对象,通常用来处理文件下载,还可用于返回AJAX数据。 16 org.apache.struts2.dispatcher.StreamResult 16 velocity 16 处理Velocity模板 16 org.apache.struts2.dispatcher.VelocityResult 16 xslt 16 处理XML/XLST模板 16 org.apache.struts2.views.xslt.XSLTResult 16 全局result: 17 动态Result:了解 18 12.异常处理 18 三、在Action获取Scope对象 19 方式一、与Servlet解耦合的非IOC方式 20 方式二、与Servlet解耦合的IOC方式 21 方式三、与Servlet耦合的非IOC方式 21 方式四、与Servlet耦合的IOC方式 22 四、OGNL与ValueStack(VS) 22 1.值栈入门 22 2.OGNL入门 24 3.普通方法访问 24 4.静态方法访问 24 5.默认类Math的访问 24 6.调用普通类的构造方法 25 7.集合对象初步 25 8.集合对象进阶 25 9.N语法top语法 26 10.获取Stack Context中的信息 26 11.总结$ # %的区别 27 12.总结OGNL[重点] 27 五、拦截器 28 1.概述strust2中的拦截器 28 2.自定义拦截器 28 方式一,实现Interceptor接口。 28 方式二、继承AbstractInterceptor抽象类 29 方式三、继承MethodFilterInteceptor类 30 3.使用来MethodFilterInterceptor灵活拦截 32 4.使用默认的execAndWait拦截器 33 5.