欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPTX文档下载  

    Struts2框架的工作原理与架构分析ppt课件.pptx

    • 资源ID:1377143       资源大小:1.17MB        全文页数:48页
    • 资源格式: PPTX        下载积分:16金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要16金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    Struts2框架的工作原理与架构分析ppt课件.pptx

    Struts2框架的工作原理与架构分析,郭剑峰2012年11月,Struts2的工作原理,一个请求在Struts2框架中的处理分为以下几个步骤 1 客户端初始化一个指向Servlet容器(如Tomcat)请求 2 这个请求经过一系列的过滤器(Filter)3 接着FilterDispatcher被调用,FilterDispatcher询问ActionMapper来决定这个请是否需要调用某个Action 4 如果ActionMapper决定需要调用某个Action,FilterDispatcher把请求的处理交给ActionProxy 5 ActionProxy通过Configuration Manager询问框架的配置文件,找到需要调用的Action类 6 ActionProxy创建一个ActionInvocation的实例。 7 ActionInvocation实例使用命名模式来调用,在调用Action的过程前后,涉及到相关拦截器(Intercepter)的调用。 8 一旦Action执行完毕,ActionInvocation负责根据struts.xml中的配置找到对应的返回结果。返回结果通常是一个需要被表示的JSP或者FreeMarker的模版。在表示的过程中可以使用Struts2 框架中继承的标签。在这个过程中需要涉及到ActionMapper,Struts2的架构分析,Struts2框架也是由两部分组成:XWork2和Struts2。XWork是一个命令模式框架,它是Struts2的基础。XWork提供了很多核心功能:IoC(Inversion of control,控制反转)容器,强大的表达式语言 (OGNL:Object Graph Navigation Language-对象图像导航语言)数据类型转换,验证和可插入的配置。XWork框架的核心概念包括action,拦截器(inerceptor)和result.,struts-default.xml文件,struts-default.xml文件是struts2框架默认加载的配置文件。它定义struts2一些核心的bean和拦截器。这些拦截器是以key-value对的形式配置在struts-default.xml中,其中name是拦截器名字,就是后面使用该拦截器的引用点,value则指定拦截器的实现类。struts-default.xml :struts2全局配置文件, struts2框架启动时会自动加载该文件 位置:struts2-core.jar/struts-default.xml 作用:定义bean和一个抽象的包。包中定义了返回类型、拦截器、拦截器栈、默认的拦截器和默认的Action,struts.properties文件,作用:覆盖系统配置信息struts.custom.i18n.resources=globalMessages 国际化文件的前缀名配置struts.ui.theme=simple 使用struts2的simple模板生成html代码struts.ui.templateDir=template Struts2的模板目录是通过struts.ui.templateDir常量来指定的,该常量的默认值是template,即意味着Struts2会从Web应用的template目录struts.ui.templateSuffix=ftl 去除struts2 标签中的自动生成的布局样式 struts.multipart.saveDir=/tmp 设置struts2 的临时文件上传路径struts.multipart.maxSize=1000000000 struts2 修改文件上传大小限制,Struts2中为应用指定多个配置文件,为了避免struts.xml文件过于庞大、臃肿,提高代码的可读性,我们可以将一个struts.xml配置文件分解成过个配置文件,然后在struts.xml文件中包含其他配置文件。,1.配置一个名为department.xml文件/department/index.jsp,Struts2中为应用指定多个配置文件,2.配置一个名为employee.xml文件/employee/index.jsp,Struts2中为应用指定多个配置文件,3.在struts.xml中通过include进行配置 ,Struts2中的国际化,Struts2中的国际化,Struts2中的国际化,Struts2中的国际化,Struts2中的国际化,Struts2中的国际化,案例:struts2appi18n/LoginAction,Struts2中的表单校验Annotations验证,Struts2提供了注解的方式校验 1) Validation 指明这个类或者接口将使用基于注解的校验。 2) Validations() 在同一个方法上要使用多个注解校验时。 3) SkipValidation 指定某个方法不需要校验。否则所有方法都会使用校验。也可以在检验拦截器中使用validateAnnotatedMethodOnly 4) 13个内置校验器的注解版本:RequiredFieldValidatorRequiredStringValidatorStringLengthFieldValidatorIntRangeFieldValidatorDoubleRangeFieldValidatorDateRangeFieldValidatorExpressionValidatorFieldExpressionValidatorRegexFieldValidatorEmailValidatorUrlValidatorVisitorFieldValidatorConversionErrorFieldValidator案例: annotation/SimpleAnnotationAction, annotation/AnnotationValidationAction,Struts2单文件上传,上传jsp:,Struts2单文件上传,action:,Struts2单文件上传,xml:,案例:SingleUpload.jsp,Struts2多文件上传,jsp:,Struts2多文件上传,action:,Struts2多文件上传,xml:,案例:MultiUpload.jsp,Struts2动态方法调用,Struts.xml:,Struts2动态方法调用,action:,Struts2动态方法调用,action:,案例:DynamicAction.action,Struts2使用通配符定义action,xml:,Struts2使用通配符定义action,action:,案例:WildcardAction.java,Struts2局部自定义类型转换器,Struts2局部自定义类型转换器,Struts2局部自定义类型转换器,Struts2局部自定义类型转换器,Struts2局部自定义类型转换器,案例:localconverter.CircleAction.java,Struts2全局自定义类型转换器,必须在src的目录下建立xwork-conversion.properties文件:,案例:globalconverter.CircleAction.java,Struts2的OGNL表达式,1.OGNL表达式语言OGNL是Object Graphic Navigation Language(对象图导航语言)的缩写,它是一个开源项目。 Struts 2框架使用OGNL作为默认的表达式语言。2.访问上下文(Context)中的对象需要使用#符号标注命名空间,如#application、#session3.由于ValueStack(值栈)是Struts 2中OGNL的根对象,如果用户需要访问值栈中的对象,在JSP页面可以直接通过下面的EL表达式访问ValueStack(值栈)中对象的属性:$foo /获得值栈中某个对象的foo属性,Struts2的OGNL表达式,#application.userName或者#applicationuserName,相当于调用ServletContext的getAttribute(username)。session对象:用来访问HttpSession,例如#session.userName或者#sessionuserName,相当于调用session.getAttribute(userName)。request对象:用来访问HttpServletRequest属性(attribute)的Map,例如#request.userName或者#requestuserName,相当于调用request.getAttribute(userName)。parameters对象:用于访问HTTP的请求参数,例如#parameters.userName或者#parametersuserName,相当于调用request.getParameter(username)。,Struts2的OGNL表达式,#application.userName或者#applicationuserName,相当于调用ServletContext的getAttribute(username)。session对象:用来访问HttpSession,例如#session.userName或者#sessionuserName,相当于调用session.getAttribute(userName)。request对象:用来访问HttpServletRequest属性(attribute)的Map,例如#request.userName或者#requestuserName,相当于调用request.getAttribute(userName)。parameters对象:用于访问HTTP的请求参数,例如#parameters.userName或者#parametersuserName,相当于调用request.getParameter(username)。,Struts2中为action属性注入值,Struts2中为Action中的属性提供了依赖注入功能,在Struts2的配置文件中,我们可以方便的为action中的属性注入值,注意:属性必须提供setter方法Action:,Struts2中为action属性注入值,jsp:,Struts2中为action属性注入值,xml:,案例:ioc.IocAction.java,Struts2自定义拦截器,Struts2 拦截器在访问某个 Action 方法之前或之后实施拦截,Struts2 拦截器是可插拔的,拦截器是 AOP(Aspect Oriented Programming面向切面) 的一种实现,Struts2自定义拦截器,Action:,Struts2自定义拦截器,Interceptor:,Struts2自定义拦截器,xml:,Struts2自定义拦截器,登录jsp:,Struts2自定义拦截器,执行 动作jsp: 从拦截器得到message,Struts2自定义拦截器,退出jsp:,Struts2自定义拦截器,演示拦截过程:,1.http:/localhost:8080/struts2web/intercepter/user.jsp,2.http:/localhost:8080/struts2web/IntercepterAction.action,Struts2自定义拦截器,演示拦截过程:,3.http:/localhost:8080/struts2web/intercepter/quit.jsp,4.http:/localhost:8080/struts2web/IntercepterAction.action,案例:IntercepterAction.action,Struts2异常处理,

    注意事项

    本文(Struts2框架的工作原理与架构分析ppt课件.pptx)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开