Java教程

数据库sql.date 和 实体类的Util.date的转换方式

本文主要是介绍数据库sql.date 和 实体类的Util.date的转换方式,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

目录

    • 方案1:改为sql.date
    • 方案2:vue的过滤器
    • 方案3:jstl的fmt
    • 方案4:Springmvc的转换工厂converter

方案1:改为sql.date

将实体类的日期都改为sql.date

方案2:vue的过滤器

monent插件和vue的formateDate的使用。

<script src="${ctx}/js/vue.js"></script>
<script src="${ctx}/js/axios-0.18.0.js"></script>
<script src="${ctx}/js/moment.js"></script>

<td>{{user.birthday | formateDate}}</td>

<script>
    new Vue({
        el:"#frameContent",
        data:{
            userList:[]
        },
        /*vue的过滤器
            介绍:作用操作插值表达式{{变量名}} 显示数据的时候使用,用于数据展现的时候进行包装加工
            语法:{{变量名 | 过滤器配置的方法名}}
                 vue实例中使用filters定义过滤器方法,实现展现数据包装
       *
       * */
        filters:{
            formateDate(time){
                //time是一个格林尼治毫秒数
                //目标将日期转换为“YYYY-MM-dd”
                /* //js原生做法:
                let date = new Date(time);
                //拼接字符串
                let dateStr = date.getFullYear()+"-"+(date.getMonth()+1)+"-"+date.getDay();*/

                // moment插件做法
                return moment(new Date(time)).format("YYYY-MM-DD");
            }
        }
    });
</script>

方案3:jstl的fmt

<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<td>

      <%--针对于java.util.Date的国际时间格式可以使用jstl个数标签库进行格式化
                语法: <fmt:formatDate value="日期数据" pattern="格式化的模式"></fmt:formatDate>
                格式化的模式:yyyy-MM-dd

      --%>
     <fmt:formatDate value="${user.birthday}" pattern="yyyy-MM-dd"></fmt:formatDate>
</td>

方案4:Springmvc的转换工厂converter

public class StringToDateConverter implements Converter<String, Date> {
    @Override
    public Date convert(String s) {
        //要求:将传入的String转换为符合要求的Date类型返回

        //1.校验传入的字符串 s 变量是否有值
        // 语法:StringUtils.isEmpty(字符串)
        // 含义:判断字符串是否为空,包含null的判断 和 空字符串的判断, 符合其中一个就会返回true
        if(StringUtils.isEmpty(s)) {
            //2.如果 s 值无效,返回null
            return null;
        }

        try {
            //3.如果 s 值有效,进行转换
            Date date = new SimpleDateFormat("yyyy-MM-dd").parse(s);
            return date;
        } catch (ParseException e) {
            e.printStackTrace();
            throw new RuntimeException(e);
        }
    }
}

springmvc.xml

    <!--1.将工具类对象加入IOC容器-->
    <bean class="com.itheima.converter.StringToDateConverter" id="stringToDateConverter"></bean>
    <!--2.将工具类对象加入到springMVC转换工厂中-->
    <bean class="org.springframework.context.support.ConversionServiceFactoryBean" id="conversionServiceFactoryBean">
        <property name="converters">
            <set>
                <ref bean="stringToDateConverter"></ref>
            </set>
        </property>
    </bean>
这篇关于数据库sql.date 和 实体类的Util.date的转换方式的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!