




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、,Struts2入门,章节内容,1、学习方法,学习框架,不要去记忆一些东西,更重要的是去理解一些东西,很多人,在写代码的时候,总是说:“原来这里是怎么写来着?”,这就是典型的记忆学习法,需要摒弃。,2、struts2引入,Struts2是在WebWork2基础发展而来的。和struts1一样,Struts2也属于MVC框架。不过需要注意的是:尽管Struts2和struts1在名字上差别不大,但Struts2和struts1在代码编写风格上几乎是不一样的。Struts2主要有以下优点:1在软件设计上struts2没有像struts1那样跟ServletAPI和strutsAPI有着紧密的耦合,
2、Struts2的应用可以不依赖于ServletAPI和strutsAPI。Struts2的这种设计属于无侵入式设计,而Struts1却属于侵入式设计。publicclassOrderListActionextendsActionpublicActionForwardexecute(ActionMappingmapping,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse)throwsException2Struts2提供了拦截器,利用拦截器可以进行AOP编成,实现如权限拦截等功能。3Struts2提供了类型
3、转换器,我们可以把特殊的请求参数转换成需要的类型。在Struts1中,如果我们需要实现同样的功能,就必须向Struts1的底层实现BeanUtil注册类型转换器才行。4Struts2的输入校验可以对指定方法进行校验5Struts2提供支持多种表现层技术,如:jsp、freeMarker等6Struts2提供了全局范围、包范围、action范围的国际化资源文件管理实现。,大家可以到下载struts-2.x.x-all.zip,目前最新版为2.2.3。下载完后解压文件,开发struts2应用需要依赖的jar文件在解压目录的lib文件夹下。不同的应用需要
4、的jar包是不同的。下面给出了开发Struts2程序最少需要的jar.struts2-core-2.x.x.jar:Struts2框架的核心类库xwork-2.x.x.jar:XWork类库,Struts2在其上构建ognl-ognl-3.x.jar:对象图导航语言(ObjectGraphNavigationLanguage),struts2框架通过其读写对象的属性freemarker-2.3.x.jar:Struts2的UI标签的模板使用FreeMarker缩写commons-logging-1.1.x.jar:ASF出品的日志包,Struts2框架使用这个日志包来支持Log4j和JDK1.
5、4+的日至记录。commons-fileupload-1.2.1.jar文件上传组建,2.1.6版本后必须加入此文件commons-io-2.0.1.jar输入输出,搭建Struts2开发环境-开发struts2应用依赖的jar文件,下载源,软件下载下载struts2.1.6/download.(选择下载fulldistribution)下载myeclipse,下载tomcat,下载xwork,,3、第一个Struts2HelloWorld程序,建立第一个struts2.1的程序(参考struts源码)
6、找到struts目录下对应的apps目录解压struts2-blank-2.X.X.warCopy对应的lib的jar文件,需要除junit和spring-test之外的所有文件,其中commons-io的jar包会在文件上传和下载时需要,其他为必须Copy对应的struts.xml到src目录,在packageexplorer视图进行操作注释掉struts.xml的多余内容建立HelloStruts2.jsp文件*修改jsp文件的默认编码属性window-preferences-web-jspfiles-设为Chinese,NationalStandard在struts.xml中照原配置进行
7、对应的配置修改对应的web.xml,建立struts2的filter,步骤一:注释掉struts.xml的原配置在struts.xml中照原配置进行配置,HelloWorld/example-开发模式(devMode)/HelloStruts2.jsp,步骤二:修改对应的web.xml,建立struts2的filter,在struts1.x中,struts框架是通过Servlet启动的。在struts2中,struts框架是通过Filter启动的。他在web.xml中的配置如下:struts2org.apache.struts2.dispatcher.ng.filter.StrutsPrepa
8、reAndExecuteFilterorg.apache.struts2.dispatcher.FilterDispatcher-struts2/*在StrutsPrepareAndExecuteFilter的init()方法中将会读取类路径下默认的配置文件struts.xml完成初始化操作。注意:struts2读取到struts.xml的内容后,以javabean形式存放在内存中,以后struts2对用户的每次请求处理将使用内存中的数据,而不是每次都读取struts.xml文件,步骤三:建立HelloStruts2.jsp文件,HelloStruts2直接执行:http:/localhost
9、:8080/工程名/hellostruts2链接地址,devMode问题讲解,-开发模式上面这行,写在struts.xml中以后,以后在tomcat启动后,如果修改struts.xml文件,这个时候不需要重新加载启动tomcat。比较方便。就像jsp页面一样,修改后,不需要重新发布。,简单HelloWord处理流程,4、如何解决struts.xml配置文件中无提示的问题,有时候,在struts.xml中,打“”的时候,不能出现一些标签,就是因为上面的struts-2.0.dtd没有找到,那就有两种做法,第一种:将自己的电脑连接到internet第二种:如下图所示,到myeclopseprefe
10、rences然后到相应的位置,找到自己电脑中的struts2.0.dtd的位置,按照下面的图解加载进去就可以了。,/WEB-INF/page/hellostruts2.jsp在struts2框架中使用包来管理Action,包的作用和java中包是非常类似的,它主要用于管理一组业务。功能相关的action。实际应用中,我们应该把一组业务功能相关的Action放在同一个包下。配置包时必须指定name属性,该name属性值可以任意取名,但必须唯一,他不对应java的类包,如果其他包要继承该包,必须通过该属性进行引用。包的namespace属性用于定义该包的命名空间,命名空间作为该包下Action的路
11、径的一部分,如访问上面例子的Action,访问路径为:/test/space属性可以不配置,对本例而言,如果不指定该属性,默认的命名空间为“”(空字符串)。通常每个包都应继承struts-default包,因为Struts2很多核心的功能都是拦截器来实现。如:从请求中把请求参数封装到action、文件上传和数据验证等都是通过拦截器实现的。struts-default定义了这些拦截器和Result类型。可以这么说:当包继承了struts-default才能使用struts2提供的核心功能。struts-default包是在struts2-core-2.x.x.jar文件中的struts-default.xml中定义。struts-default.xml也是Struts2默认配置文件。struts2每次都会自动加载struts-default.xml文件。包还可以通过abstract=true定义为抽象包,抽象包中不能包含action.,5、Struts.xml配置中的包介绍,。如果一个包定义为抽象,那么这个包只能被其他包所继承,在这个包里就不能定义action了。,抽象包,默认包,原理:如果请求为/barsp
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 卫生管理考试的评估标准试题及答案探讨
- 激光技术工程师的考前冲刺试题及答案
- 药物发酵工艺研究试题及答案
- 模特职业测试题及答案
- 药物使用风险评估知识试题及答案
- 电气检测面试题及答案
- 成果分享卫生管理证书考试试题及答案
- 系统架构与数据架构的关系探讨试题及答案
- 激光测量技术的研究进展试题及答案
- 激光设备性能指标试题及答案
- 2025年上半年第二次商务部国际贸易经济合作研究院招聘7人重点基础提升(共500题)附带答案详解
- 2025年危险化学品安全生产培训教材试题库
- 羽毛球赛事组织与管理的
- 小学生战斗机介绍课件图片
- 第一讲绪论精神病学讲解
- 人教版 七年级 下册 语文 第四单元《青春之光》课件
- 超高性能混凝土与钢筋的粘结滑移本构关系
- 某纸业公司年产9.8万吨DMC清洁制浆项目可行性研究报告
- 二零二五版产品推介会会务策划与执行协议3篇
- 2025年广投资本管理有限公司招聘笔试参考题库含答案解析
- (完整)《化学反应工程》选择题
评论
0/150
提交评论