1. 配置编码过滤器

1, web.xml中设置配置spring mvc提供的编码过滤器,解决get/post提交过来的数据乱码问题

  <!--配置编码过滤器--><filter><filter-name>characterEncodingFilter</filter-name><filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class><init-param><param-name>encoding</param-name><param-value>utf-8</param-value></init-param></filter><filter-mapping><filter-name>characterEncodingFilter</filter-name><url-pattern>/*</url-pattern></filter-mapping>

2. 获取请求参数,参数绑定注解

http://127.0.0.1:8080/spring_mvc_01/user/save13?name=123

    /*** 利用name来映射username* required false 可不提供参数,否则400* @param username*/@RequestMapping(value = "/save13")@ResponseBodypublic void save13(@RequestParam(value = "name", defaultValue = "bitqian", required = false) String username) {System.out.println(username);}

3. 获得请求参数,自定义类型转换器

实现步骤:
1. 定义转换器类实现converter接口
2. 在配置文件中声明转换器
3. 在,<annotation-driven>中引用转换器

1,自定义日期转换器

package com.bitqian.convertor;import org.springframework.core.convert.converter.Converter;import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;/*** 自定义日期转换器* @author echo lovely* @date 2020/9/2 22:01*/
public class DateConverter implements Converter<String, Date> {@Overridepublic Date convert(String s) {List<DateFormat> dateList = new ArrayList<>();dateList.add(new SimpleDateFormat("yyyy-MM-dd"));dateList.add(new SimpleDateFormat("yyyy/MM/dd"));dateList.add(new SimpleDateFormat("yyyy.MM.dd"));Date date = null;for (int i = 0; i < dateList.size(); i++) {try {// 支持 -- // ..日期格式的转换date = dateList.get(i).parse(s);return date;} catch (ParseException e) {// e.printStackTrace();continue;}}return null;}public static void main(String[] args) {DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd");try {Date date = dateFormat.parse("2020/4/4");System.out.println(date);} catch (ParseException e) {e.printStackTrace();}}
}

2,spring mvc配置

        <mvc:annotation-driven conversion-service="conversionServiceFactoryBean"/><!--日期转换器--><bean id="conversionServiceFactoryBean"class="org.springframework.context.support.ConversionServiceFactoryBean"><property name="converters"><list><bean class="com.bitqian.convertor.DateConverter"></bean></list></property></bean>

3,测试日期转换器

    /*** 测试日期转换器*/@RequestMapping(value = "/save14")@ResponseBodypublic void save14(Date date) {System.out.println(date);}

mvc自定义日期转换器相关推荐

  1. SpringMVC+FastJson 自定义日期转换器

    对于有的时候要输出日期格式为yyyy-MM-dd,而有的时候要输出yyyy-MM-dd hh:mm:ss时怎么办? 第一种方案:纯注解式, 对日期类型的字段进行注解 @JSONField(format ...

  2. Spring MVC自定义类型转换器Converter、参数解析器HandlerMethodArgumentResolver

    文章目录 一.前言 二.类型转换器Converter 1.自定义类型转换器 三.参数解析器 1.自定义分页参数解析器 2.自定义注解参数解析器 一.前言 Spring MVC源码分析相关文章已出: S ...

  3. Spring MVC__自定义日期类型转换器

    WEB层采用Spring MVC框架,将查询到的数据传递给APP端或客户端,这没啥,但是坑的是实体类中有日期类型的属性,但是你必须提前格式化好之后返回给它们.说真的,以前真没这样做过,之前都是一口气查 ...

  4. 详解Spring MVC请求参数类型,解决中文乱码问题,自定义类型转换器,Spring MVC相关注解

    #SpringMVC SpringMVC请求 简单类型 简单类型包括:基本类型,基本类型的包装类型,字符串 编写Controller @RequestMapping("/param" ...

  5. Struts2下创建自定义类型转换器(表单中日期的处理)

    在表单提交中需要有日期的输入,默认的Struts2处理机制可能不能满足需求,需要自定义一下类型转换器.如: String----->java.util.Date:输入 java.util.Dat ...

  6. 使用 mybatis 自定义日期类型转换器

    文章目录 前言 一.resources 1.1 sqlMapConfig.xml 1.2 log4j.properties 1.3 userMapper.xml 二.java结构 2.1 dao 2. ...

  7. 自定义类型转换器代码编写

    package com.learn.utils;import org.springframework.core.convert.converter.Converter;import java.text ...

  8. SpringMVC框架----SpringMVC的自定义类型转换器

    上一段我们介绍了请求参数的绑定 SpringMVC请求参数的绑定 在请求参数绑定的时候,有时候会遇到一些问题,如自定义类型转换器异常 1.自定义类型转换器演示异常 现在有一个页面,想给服务器提交数据, ...

  9. SpringMVC全局乱码过滤器、注解@RequestParam、自定义类型转换器

    目录 配置全局乱码过滤器 参数绑定注解@RequestParam 注解@RequestParam的参数使用说明 获得Restful风格的参数 自定义类型转换器 自定义转换器的开发步骤: 获得Servl ...

最新文章

  1. 显式欧拉法求解常微分方程
  2. .NET中IDisposable接口的基本使用
  3. android如何获取listview中的任意行数据
  4. html照片与照片之间的间隔,css设置图片之间的间隔的方法
  5. js鼠标移动到指定位置_Python: pyautogui模块之鼠标控制
  6. MYSQL重置ROOT密码
  7. java自定义序列化_Java中的自定义国际化(i18n)
  8. WORD网址单词自动换行留下大量空白区?
  9. 洛谷 P2056 采花
  10. 编译安装android7.0,android7.0 源码编译问题总结
  11. JavaScript的Continue关键字和Break关键字
  12. Java-接口第一篇认识Interface
  13. java 集合底层_java集合底层实现总结
  14. unity 实验演示 教程_Unity的演示团队– Unity最出色的视觉效果背后的创造者
  15. 查看页面滚动条滚动距离,可视区窗口尺寸
  16. [java8] Stream流
  17. 有什么好用的微信公众号编辑器?快来看看这3款
  18. 程序员应该每天写代码
  19. 怎样用html设置文档格式,Dreamweaver使用CSS样式表设置网页文本格式
  20. sge安装 centos 安装 gridengine

热门文章

  1. python安装django模块_python中安装django模块的方法
  2. 云服务器 怎样修改地域,云服务器 怎样修改地域
  3. tfidf算法 python_tf–idf算法解释及其python代码实现(下)
  4. go 函数名之前括号中的内容_2020 重学 Go 系列:09. 一篇文章理解 Go 里的函数
  5. 神经网络模型模型转ONNX
  6. 【译】索引进阶(十一):SQL SERVER中的索引碎片【上篇】
  7. C++ ActiveX开发的问题讨论
  8. 3224: Tyvj 1728 普通平衡树
  9. Codeforces Round #201 (Div. 2)C,E
  10. atitit.orm的缺点与orm框架市场占有率,选型attilax总结