Struts2基础
Struts2基础
玉要阳客 1、struts2概述 2、简单的struts2程序 3、struts2配置文件 4、struts2国际化 5、 struts:2输入校验 周 6、 struts2OGNL(对象图形化导航语言) struts2拦截器 8、 圈 struts.2类型转换 9、 struts:2标签库 10、访问数据库 超
主要内容 1、struts2概述 2、简单的struts2程序 3、struts2配置文件 4、struts2国际化 5、 struts2输入校验 6、 struts2 OGNL(对象图形化导航语言) 7、 struts2拦截器 8、 struts2类型转换 9、 struts2标签库 10、访问数据库
Struts2橇述 Struts框架的主要架构设计和开发者是Craig R.McClanahan(克雷格.麦克拉那罕),并且在2000年的时 候捐献给了ASF(阿帕奇软件基金会),2001年7月推出 1.0版本。 Struts:2(2005)是一个用来开发MVC应用程序的框架.它 提供了Web应用程序开发过程中的一些常见问题的解决 方案: 对页面导航活动进行管理(MVC中的C或V) >对来自用户的输入数据进行合法性验证 统一的布局 ~可扩展性 国际化和本地化 ,支持Ajax 表单的重复提交
Struts2概述 Struts框架的主要架构设计和开发者是Craig R.McClanahan (克雷格.麦克拉那罕 ),并且在2000 年的时 候捐献给了ASF(阿帕奇软件基金会 ),2001年7月推出 1.0版本。 Struts2(2005) 是一个用来开发 MVC应用程序的框架. 它 提供了 Web 应用程序开发过程中的一些常见问题的解决 方案: ➢ 对页面导航活动进行管理(MVC 中的C 或V) ➢ 对来自用户的输入数据进行合法性验证 ➢ 统一的布局 ➢ 可扩展性 ➢ 国际化和本地化 ➢ 支持 Ajax ➢ 表单的重复提交 ➢
Struts2 软件下载 到http://struts.apache.org/download.cgi#struts2014下载struts- 2.x.x-al1.zip,目前最新版为2.3.1.2。下载完后解压文件,开发 struts?2应用需要依赖的jar文件在解压目录的1ib文件夹下。不同的应用 需要的JAR包是不同的。 下面给出了开发Struts2程序最少需要的JAR。 struts2-core-2.x.x.jar Struts2框架的核心类库 xwork-2.x.x.jar XWork类库,Struts2在其上构建 ognl-2.6.x.jar 对象图导航语言(Object Graph Navigation Language),Struts2框架使用的一种表达式语言 freemarker-2.3.x.jar:Struts2的UI标签的模板使用FreeMarker?编写 commons-logging-l.1.x.jar:ASF出品的日志包,Struts2框架使用这个 日志包来支持og4J和JDK1.4+的日志记录。 Commons-fileupload.ar实现文件的上传 还有一种最省事的做法是: 如果不需要跟第三方框架集成,把不带-plugin结尾的jar文件都添加入 类路径即可。如果需要跟第三方框架集成,这时候还需要加入对应的- plugin jar文件。例如跟spring集成,需要加入struts:2-spring-plugin- 2.x.x.jar
到http://struts.apache.org/download.cgi#struts2014下载struts- 2.x.x-all.zip,目前最新版为2.3.1.2。下载完后解压文件,开发 struts2应用需要依赖的jar文件在解压目录的lib文件夹下。不同的应用 需要的JAR包是不同的。 下面给出了开发Struts 2程序最少需要的JAR。 struts2-core-2.x.x.jar : Struts 2框架的核心类库 xwork-2.x.x.jar : XWork类库,Struts 2在其上构建 ognl-2.6.x.jar : 对象图导航语言(Object Graph Navigation Language),Struts 2框架使用的一种表达式语言 freemarker-2.3.x.jar : Struts 2的UI标签的模板使用FreeMarker编写 commons-logging-1.1.x.jar: ASF出品的日志包,Struts 2框架使用这个 日志包来支持Log4J和JDK 1.4+的日志记录。 Commons-fileupload.ar 实现文件的上传 还有一种最省事的做法是: 如果不需要跟第三方框架集成,把不带 - plugin结尾的jar文件都添加入 类路径即可。如果需要跟第三方框架集成,这时候还需要加入对应的- plugin jar文件。例如跟spring集成,需要加入struts2-spring-plugin- 2.x.x.jar. Struts2 软件下载
Welcome-360安全浏览器4.0正式版 8请登录文件E)查看)收藏(但)帐户) 工具(工) 帮助) ▣X ←)→Xg合恢复,品无痕,、htp:/tuts,apache.org v号加速> 8】struts网站 命收藏, 。http:w⊕网址大全尚游戏中心器好123图百度 回, 图百度提索struts网站 X、Welcome + G①9x Apache Software Foundation Struts h tt p /www a p a c h e.or g/ Last Published:2012-01-26 Apache I Struts 2 I Struts 1 Apache Struts Welcome Releases Recent Releases Announcements LIcense Kickstart FAO Scroll down for more about Apache Struts,the Apache Struts project,and Struts for Newbies Roadmap FAQ Website Stats ThanksI Sponsorship Documentation Key Technologies 22 January 2012-Struts 2.3.1.2 General Availability Release Struts 2.3.1.2 (GA Struts 1.3.10(GA) Prior Releases The latest production release of Struts 2 is Struts 2.3.1.2,which was promoted to "General Support Availability"(or "Ready for Primetime")on 25 December 2011.The release notes are available User Mailing List Issue Tracker (JIRA) online. Reporting Security Issues Development Struts2,×Draft Docs Struts 1.x Draft Docs How to Help FAQ Development Lists 04 Dec 2008-Struts 1.3.10 General Availability Release Source Code Release Guidelines PMC Charter The latest production release of Struts 1 is Struts 1.3.10,which was promoted to "General Minutes Availability"(or "Ready for Primetime")on 04 Dec 2008. Volunteers
→X9合)复,血无痕,八-tu西单ahe,crg v加随得sus网站 9 收寐·9p小州子大全典游就中心怒好123图百度 回- 图百度接来u5网站 X、welcome ×+ 008 Source Repository Related Projects Apache Struts The Apache Struts web framework is a free open-source solution for creating Java web applications. Apacha Cocoon Web applications differ from conventional websites in that web applications can create a dynamic response.Many websites deliver only static pages.A web application can interact with databases and business logic engines to customize a response. Web applications based on JavaServer Pages sometimes commingle database code,page design code,and control flow code.In practice,we find that unless these concerns are Java 5 for Struts 1 separated,larger applications become difficult to maintain. See Also One way to separate concems in a software application is to use a Model-View-Controller(MVC)architecture.The Model represents the business or database code,the View represents the page design code,and the Controler represents the navigational code.The Struts framework is designed to help developers create web applications that utilize a MVC architecture maven The framework provides three key components: .A 'request'handler provided by the application developer that is mapped to a standard URI. .A 'response'handler that transfers control to another resource which completes the response. .A tag library that helps developers create interactive form-based applications with server pages The framework's architecture and tags are buzzword compliant.Struts works well with conventional REST applications and with nouveau technologies like SOAP and AJAX. The Apache Struts Project The Apache Struts Project is the open source community that creates and maintains the Apache Struts framework.The project consists of a diverse group of volunteers who share common values regarding collaborative,community-based open source development.The Apache Struts Project is proud to share these values with our parent organization: The Apache Software Foundation. that joins the vanous elements of the standard Java platform into a coherent whole.Our goal is to leverage existing standards by producing the missing pieces we need to create enterprise-grade applications that are easy to maintain over time. The Apache Struts Project offers two major versions of the Struts framework.Struts 1 is recognized as the most popular web application framework for Java.The 1.x framework is mature,well-documented,and widely supported.Struts 1 is the best choice for teams who value proven solutions to commo probiems. Struts 2 was originally known as Webwork 2.After working independently for several years,the Webwork and Struts communities joined forces to create Struts 2.The 2.x ■问宽模式合E打开B000零下莱,司国国Q10%
Struts2-Welcome-360安全测览器4.0正式版 8请登录文件)查看)收藏(但) 帐户)工具(工)帮助仙) ←→T×g合恢复,命无痕、htp/uts.apache.org2.x/index.html √号加速81P0]0 Q 收藏·?http:/w①网址大全尚游戏中心器好123图百度 回 □图百度搜索PO0 x、Struts2-Welcome ×+ Javaserver卜aca号 Build!Deploy!Maintain! OVAL ·Bid o Easy startup -Jumpstart new projects with our bootstrap tutorial and template application or Sitegraph Maven archetype. Sitemesh o Improved Design-Code clean against HTTP-independant framework interfaces o Enhanced Tags -Code less with stylesheet-driven form tags that provide their own markup. o Stateful Checkboxes -Avoid special handling with smart checkboxes that know when they are toggled. r3 ft Doc o Flexible Cancel Buttons-Go directly to a different action on cancel. How to Help FAO First-class AJAX support -Add interactivity and flexibility with AJAX tags that look and feel just like standard Struts tags. o Easy Spring integration-Inject dependencies into Actions using Spring without glue code or red tape.(Plexus support also available. PMC Charter o Enhanced Results -Do more with speciality results for JasperReports,JFreeChart,Action Sandbox Source Repository chaining,and file downloading. Modules o PoJO forms-No more ActionForms!Use any JavaBean to capture form input or put properties XWork:Core directly on an Action class.Use both binary and String properties! o POJO Actions-Use any class as an Action class -even the interface is optional! ·Deploy o Easy plugins -Add framework extensions by dropping in a JAR.No manual configuration required! Struts 2 Maven Bundled plugins add support for JavaServer Faces,JasperReports,JFreechart,Tiles,and more . o Integrated profiling-Peek inside Struts2 to find where the cycles are going! Project Documentation o Precise Error Reporting-Flip directly to the location and line of an error ·aintain! o Easy-to-test Actions Test Struts2 Actions directly,without resorting to mock HTTP objects. Integration o Intelligent Defaults -Skip obvious and redundant settings.Most framework configuration Dependencies Dependency elements have a default value that we can set and forget.Say it once! o Easy-to-customize controller-Customize the request handling per action,if desired.Struts2 only does what you want it to do! Distribution o Integrating Debugging-Research problem reports with built-in debugging tools. o Easy-to-tweak tags-Customize tag markup by editing a FreeMarker template.No need to grok e Tracking the taglib API!JSP,FreeMarker,and Velocity tags are fully supported. agement 完毕 □切换浏览模式©打开d@●○四南下载·同日0)Q100%·
d5tus2·Projc0ep3 nden9gs-36安全览器4.0正式板 8请录文件E)查包)株户凹工具D帮助出管一可X ←→:X9合勺枚复,盘无精,\p/apache.cg2Xu20 repednces.tm v腿→MPO0 收毫·9p士同址大全尚将戏中心密好123图百度 回 图百度搜季PQ0 Struts 2-Project Dependencies 0008 Project Dependencies 4 D compile The following is a list of compile dependencies for this project.These dependencies are required to compile and run the application: ing gement Groupld Artifactld Version classifler Type License Optional commons-fileupload commons-fileupload立 1.2.2 jar The Apache Software License,Version 2.0 No commons-io commons-io 20.1 jar The Apache Software License,Version 2.0 No ognl ognl之 3.03 jar The Apache Software License,Version 2.0 No arg.apache.struts,*work wa-Cora的 2.3.2-SNAPSHOT jar The Apache Software License,Version 2.0 No org.freemarker freemarker 2.3.18 jar BsD-style license位 maven 多 junit unit边 4,8.2 Jar Common Public License Version 1.0 Yes org.apache.struts struts-annotations 1.0.5 jar The Apache Software License,Version 2.0 Yes org.apache.velocity velocity它 1.63 jar The Apache Software License,Version 2.0 Yes org.apache.velocity velocity-tools 1.3 r Apache2 Yes org.springframeworl spring-core 3.0.5.RELEASE Jar Yes org.testng testng的 5.1 k15 Apache License,Version 2.0 ves test The folowing is a list of test dependencies for this project.These dependencies are only required to comple and run unit tests for the application: Groupld Artifactld version Type License jmock mock史 1.2.0 jar BsD位 log4j log4j 1.2.9 jar mockobjects mockobjects-alt-jdk1.3 0.0g jar mockobjects mockobjects-alt-jdk1.3-j2ee1.3 0.09 jar mockobjects mockobjects-core 0.09 mockobjects mockobjects-jdk1.3 0.09 mockobjects mockobjects-jdk1.3-j2ee1.3 0.0g ■切执览式eE打开日0●D四@下载,8面0Q100%
Struts2比较重要的类 包名 说明 org.apache.struts2. 该包封装视图组件,Struts2在视图组件上有了很大加 components 强,不仅增加了组件的属性个数,更新增了几个非常有用 的组件,如updownselect、.doubleselect、 datetimepicker、token、tree等。 另外,Struts:2可视化视图组件开始支持主题(theme) 缺省情况下,使用自带的缺省主题,如果要自定义页面 效果,需要将组件的theme属性设置为simple。 org.apache.struts2.config 该包定义与配置相关的接口和类。实际上,工程中的xl 和properties文件的读取和解析都是由NebWork完成的, Struts只做了少量的工作。 org.apache.struts2.dispatcher Struts2的核心包,最重要的类都放在该包中。 org.apache.struts2.impl 该包只定义了3个类,他们是StrutsActionProxy、 StrutsActionProxyFactory,StrutsObjectFactory, 三个类都是对xwork的扩展。 org.apache.struts2.interceptor 定义内置的截拦器。 org.apache.struts2.util 实用包。 org.apache.struts2.validators 只定义了一个类:DWRValidator。 org.apache.struts2.views 提供freemarker、jsp、velocity等不同类型的页面呈现
Struts2 比较重要的类 包名 说明 org.apache.struts2. components 该包封装视图组件,Struts2在视图组件上有了很大加 强,不仅增加了组件的属性个数,更新增了几个非常有用 的组件,如updownselect、doubleselect、 datetimepicker、token、tree等。 另外,Struts2可视化视图组件开始支持主题(theme) ,缺省情况下,使用自带的缺省主题,如果要自定义页面 效果,需要将组件的theme属性设置为simple。 org.apache.struts2. config 该包定义与配置相关的接口和类。实际上,工程中的xml 和properties文件的读取和解析都是由WebWork完成的, Struts只做了少量的工作。 org.apache.struts2.dispatcher Struts2的核心包,最重要的类都放在该包中。 org.apache.struts2.impl 该包只定义了3个类,他们是StrutsActionProxy、 StrutsActionProxyFactory、StrutsObjectFactory,这 三个类都是对xwork的扩展。 org.apache.struts2.interceptor 定义内置的截拦器。 org.apache.struts2.util 实用包。 org.apache.struts2.validators 只定义了一个类:DWRValidator。 org.apache.struts2.views 提供freemarker、jsp、velocity等不同类型的页面呈现
类名 说明 org.apache.struts2.di spatcher. 该类有两个作用: Dispatcher 1、初始化 2、调用指定的Act ion的execute0方法。 org.apache.struts2.di spatcher. 这是一个过滤器。该类有四个作用: FilterDispatcher 1、执行Action 2、清理ActionContext,避免内存泄漏3 、处理静态内容(Serving static content 4、为请求启动xwork's的截拦器链。 com.opensymphony.xwork2. Action的代理接口。 Act ionProxy com.opensymphony.xwork2. 生产ActionProxy的工厂。 ctionProxyFactory com.opensymphony.xwork2.Actionln负责调用Act ion和截拦器。 vocation com.opensymphony.xwork:2.config.p负责Struts2的配置文件的解析。 rov iders. Xml ConfigurationProvider
类名 说明 org.apache.struts2.dispatcher. Dispatcher 该类有两个作用: 1、初始化 2、调用指定的Action的execute()方法。 org.apache.struts2.dispatcher. FilterDispatcher 这是一个过滤器。该类有四个作用: 1、执行Action 2、清理ActionContext,避免内存泄漏3 、处理静态内容(Serving static content 4、为请求启动xwork’s的截拦器链。 com.opensymphony.xwork2. ActionProxy Action的代理接口。 com.opensymphony.xwork2. ctionProxyFactory 生产ActionProxy的工厂。 com.opensymphony.xwork2.ActionIn vocation 负责调用Action和截拦器。 com.opensymphony.xwork2.config.p roviders. XmlConfigurationProvider 负责Struts2的配置文件的解析