Coder Social home page Coder Social logo

springbase's Introduction

SpringBase

my test of Spring

//TODO 使用Mybatis 高级结果集重构查询(association、collection等)

一、上下文

contextConfigLocation /WEB-INF/application*.xml application*.xml:该上下文用来初始化ServletContext和SpringContext Spring相关配置放在其中 dispatcher org.springframework.web.servlet.DispatcherServlet contextConfigLocation WEB-INF/dispatcher-servlet.xml 1 dispatcher-servlet.xml:DispatcherServlet对应的上下文,里面用到的视图解析器、 LocaleResolver、ThemeResolver等应该放入其中

两者关系:application*.xml是dispatcher-servlet.xml的父上下文,所以dispatcher-servlet.xml里面的东西对application*.xml不可见,而application*.xml里面的东西对dispatcher-servlet.xml可见

二、DelegatingFilterProxy作用 Spring用来代理filter的代理filter,未定义该类时,filter由容器创建托管,与spring毫无关系,加入该filter代理后, 便可以将web.xml中的filter去除,使用spring中定义bean的方式创建filter,DelegatingFilterProxy会自动将上下文中的filter加入自己内部,并调用执行

三 log4j 相关

配置appender
配置root logger鱼appender关联
配置其余日志的情况


<appender name="ConsoleAppender" class="org.apache.log4j.ConsoleAppender">
    <!-- 设置日志输出的样式 -->
    <layout class="org.apache.log4j.PatternLayout">
        <!-- 设置日志输出的格式 -->
        <param name="ConversionPattern" value="%-4r [%t] %-5p %c %x - %m%n" />
    </layout>
    <!--过滤器设置输出的级别-->
    <filter class="org.apache.log4j.varia.LevelRangeFilter">
        <!-- 设置日志输出的最小级别 -->
        <param name="levelMin" value="DEBUG" />
        <!-- 设置日志输出的最大级别 -->
        <param name="levelMax" value="ERROR" />
        <!-- 设置日志输出的xxx,默认是false -->
        <param name="AcceptOnMatch" value="true" />
    </filter>
</appender>

其中 的 %-4r: -代表左对齐,不加-默认右对齐,4代表最小宽度,r代表输出自应用启动到输出该log信息耗费的毫秒数

HandlerMethodArgumentResolver: 使用时需要注意不要和spring mvc默认的解析器冲突, 即不要使用@RequestParam注解标记你想要解析的参数,与RequestParamMethodArgumentResolver冲突 且不要用Map类型作为你想要解析的参数的类型,与RequestParamMapMethodArgumentResolver冲突 详细spring 默认解析器见RequestMappingHandlerAdapter中的 getDefaultArgumentResolvers方法

springbase's People

Contributors

hhwman avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.