自定义类型转换器

  1. 实现Converter接口
  2. 向ConversionServiceFactoryBean中添加自己的转换器
  1. <bean class="org.springframework.context.support.ConversionServiceFactoryBean">
  2. <property name="converters">
  3. <set>
  4. <bean class="DIYConverter"></bean>
  5. </set>
  6. </property>
  7. </bean>
  1. 声明让SpringMVC用自定义的转换器
<mvc:annotation-driven conversion-service="conversionService"/>

mvc:annotation-drivern/
  1. <mvc:default-servlet-handler/> <mvc:annotation-drivern/>

    1. 两者都没配: 动态资源@RequestMapping能访问, 静态资源无法访问
    2. 只配置了<mvc:default-servlet-handler/>: 动态资源无法访问
    3. 两者都配置: 动态, 静态都能访问

数据校验
  • SpringMVC使用JSR303, 实现框架

    • Hibernate Validator

如何快速进行数据校验?

  1. 导包
<!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-validator -->
    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-validator</artifactId>
        <version>5.0.0.CR2</version>
        <exclusions>
            <exclusion>
                <groupId>org.glassfish.web</groupId>
                <artifactId>javax.el</artifactId>
            </exclusion>
            <exclusion>
                <groupId>javax.el</groupId>
                <artifactId>javax.el-api</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    <!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-validator-annotation-processor -->
    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-validator-annotation-processor</artifactId>
        <version>5.0.0.CR2</version>
    </dependency>

排除el的依赖, tomcat7.0以上版本自带el的包

  1. 添加注解
  2. 在springmvc封装对象的时候, 告诉springmvc这个javabean需要校验
  3. 如何知道校验结果?
    给需要校验的javaBean后面紧跟一个bindingResult