• 分享知识-快乐自己:Struts2 前台日期到后台的日期格式转换


    案例目录:

    关键代码展示:

    DateConverter:

    package com.mlq.util;
    
    import com.opensymphony.xwork2.conversion.TypeConversionException;
    import org.apache.struts2.util.StrutsTypeConverter;
    
    import java.text.DateFormat;
    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    import java.util.Map;
    
    /**
     * @author asus
     */
    public class DateConverter extends StrutsTypeConverter {
    
        public static final String DEFAULT_DATE_FORMAT = "yyyy-MM-dd";
    
        private static final DateFormat[] dateFormats = {
                new SimpleDateFormat("yyyy年MM月dd日"),
                new SimpleDateFormat(DEFAULT_DATE_FORMAT),
                new SimpleDateFormat("MM/dd/yy"),
                new SimpleDateFormat("yyyy/MM/dd"),
                new SimpleDateFormat("yyyy.MM.dd"),
                new SimpleDateFormat("yyyyMMdd")};
    
    
        @Override
        public Object convertFromString(Map map, String[] strings, Class aClass) {
            System.out.println("================DateConverter============1=======");
            for (DateFormat format : dateFormats) {
                try {
                    return format.parse(strings[0]);
                } catch (ParseException e) {
                    continue;
                } catch (RuntimeException e) {
                    continue;
                }
            }
            throw new TypeConversionException();
        }
    
        @Override
        public String convertToString(Map map, Object o) {
            System.out.println("================DateConverter============2=======");
            SimpleDateFormat format = new SimpleDateFormat(
                    DEFAULT_DATE_FORMAT);
            return format.format((Date) o);
    
        }
    }

    login.jsp:

    <%@ taglib prefix="s" uri="/struts-tags" %>
    <%--
      Created by IntelliJ IDEA.
      User: asus
      Date: 2018/10/4
      Time: 10:32
      To change this template use File | Settings | File Templates.
    --%>
    <%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>
    <html>
    <head>
        <title>登陆页面</title>
    </head>
    <body>
    <div>
        <fieldset>
            <legend>类型转换</legend>
            <form action="/user/log" method="post">
                <fieldset>
                    <legend>类型转换-日期类型</legend>
                    <input type="text" name="date" value="2018-05-05">
                </fieldset>
                <input type="submit" value="提交">
            </form>
        </fieldset>
    </div>
    </body>
    </html>

    Struts2日期转换Demo下载:

  • 相关阅读:
    Java 对象的内存布局(HotSpot 实现)
    HDFS 伪分布式环境搭建
    Java 多线程(四):锁(二)
    使用二叉树的递归套路来解决的问题
    乘积小于 K 的子数组
    Netty 学习(三):通信协议和编解码
    HDFS 分布式环境搭建
    Netty 学习(一):服务端启动 & 客户端启动
    累加和为 K 的最长子数组问题
    使用单调栈来解决的一些问题
  • 原文地址:https://www.cnblogs.com/mlq2017/p/10021932.html
Copyright © 2020-2023  润新知