`
sun_cat
  • 浏览: 73941 次
社区版块
存档分类
最新评论

struts2 点点滴滴

 
阅读更多

1:在web.xml 中为何要配置为 /* ?

    <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

 struts2默认处理自己包中的静态文件,对静态文件的请求,struts2会查找配置的静态目录,

看下了下源代码,对/struts,/static这2个开头的uri,struts2会认为是自己的静态文件处理

 

这样看来,struts2配置为/* ,是有处理性能损失的,具体损失多少,目前还没研究

 

解决方式:struts2提供了一个配置参数:struts.action.excludePattern,该参数指定那些uri模式不被struts2处理,该参数在struts2预处理之前重定向,性能有所提高

 

2 在filterMapping中精确配置模式,但是需要配置3个/*.do,/struts/* ,/static/*,

这样的话扩展名称就固定了

该方案未测试

 

2:struts2中集成了简单的性能测试,能记录下每一个请求在各个环节的处理时间(主要包括,创建action,走filter,等)

配置打开性能监控:需要配置启动时的变量,-Dxwork.profile.activate= true

也可以在自己的页面代码中增加时间监控用UtilTimerStack ,这样就可以看到整个流程各个环节消耗的时间了

样例:

[2012-08-13 10:53:14  INFO ] util.profiling.UtilTimerStack - [3732ms] - Handling request from Dispatcher

  [33ms] - create DefaultActionProxy: 

    [33ms] - actionCreate: index

  [3684ms] - invoke: 

    [3684ms] - interceptor: exception

      [3684ms] - invoke: 

        [3684ms] - interceptor: alias

          [3684ms] - invoke: 

            [3684ms] - interceptor: servletConfig

              [3674ms] - invoke: 

                [3674ms] - interceptor: i18n

                  [3674ms] - invoke: 

                    [3674ms] - interceptor: prepare

                      [3671ms] - invoke: 

                        [3671ms] - interceptor: chain

                          [3671ms] - invoke: 

                            [3671ms] - interceptor: debugging

                              [3671ms] - invoke: 

                                [3671ms] - interceptor: scopedModelDriven

                                  [3668ms] - invoke: 

                                    [3668ms] - interceptor: modelDriven

                                      [3668ms] - invoke: 

                                        [3668ms] - interceptor: fileUpload

                                          [3668ms] - invoke: 

                                            [3668ms] - interceptor: checkbox

                                              [3668ms] - invoke: 

                                                [3668ms] - interceptor: multiselect

                                                  [3668ms] - invoke: 

                                                    [3668ms] - interceptor: staticParams

                                                      [3665ms] - invoke: 

                                                        [3665ms] - interceptor: actionMappingParams

                                                          [3663ms] - invoke: 

                                                            [3663ms] - interceptor: params

                                                              [3661ms] - invoke: 

                                                                [3661ms] - interceptor: conversionError

                                                                  [3661ms] - invoke: 

                                                                    [3661ms] - interceptor: validation

                                                                      [3548ms] - invoke: 

                                                                        [3548ms] - interceptor: workflow

                                                                          [3548ms] - invoke: 

                                                                            [2170ms] - interceptor: userLoginInterceptor

                                                                              [1109ms] - rmi method invoke:getLastUpdatePackageInfo

                                                                              [283ms] - rmi method invoke:getLastUpdatePackageInfo

                                                                            [1357ms] - executeResult: noLogin


分享到:
评论

相关推荐

    struts2超详细笔记

    ### Struts2超详细笔记知识点解析 #### 一、准备工作及实例 **1. 解压struts-2.1.6-all.zip** - **Apps目录**:包含struts2自带的一些示例程序,用于快速了解struts2的基本使用方法。 - **Docs目录**:存放官方...

    S2SH整合项目Struts2.1权威指南

    S2SH整合项目 Struts2.1权威指南21章源码 绝对可以运行 包含SQL 语句 使用MySQL作为数据库 部署到tomcat后在浏览器输入:http://localhost:8080/auction/processLogin.action即可实现访问

    个人信息管理系统Anynote 支持多用户

    日常笔记,不管是记录日常生活的点点滴滴,还是收藏一些好的网文,都是不错的选择; 阅读器,可以订阅自己感兴趣的内容,集中阅读; 个人相册,管理保存自己的珍贵照片,留下美好回忆; 账目理财,个人理财工具,...

    2020前端开发实习总结范文.doc

    如今,当我在回望实习的点点滴滴时,我为自己在实习期间所取得的成长感到自豪。这段经历不仅仅是为了完成实习报告或是获取学分,它让我更加清晰地认识到了自己未来的职业道路。 实习的结束并不意味着学习的终止。...

    java源码uml工具-Java3y:Java3y

    该仓库作为我的文章导航页面,文章均为原创,记录了我学习编程的点点滴滴,希望可以帮助到大家,共同进步 ! :hot_beverage:Java基础 Java基础文章:没写系列文章的都放在了《Java基础》链接中。Java面试题则是一些...

Global site tag (gtag.js) - Google Analytics