java日期转成天_初级java知识点(24)

16651635745b5f1bf14622c40ae9369f.png

今天就把周六周天欠的笔记全都不上吧,高产中。。。。。

上一篇讲到了Layui,这一篇先写点ECharts的例子然后在补加上SpringMVC的日期处理吧


ECharts:

2f8d757790f8b446b235e7f5476f47e5.png
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
   <!-- 为ECharts准备一个具备大小(宽高)的Dom -->
    <div id="main" style="width: 600px;height:400px;"></div>
  <!-- 引入 ECharts 文件 -->
    <script src="static/echarts.js"></script>
    <script type="text/javascript">
        // 基于准备好的dom,初始化echarts实例
        var myChart = echarts.init(document.getElementById('main'));
        // 指定图表的配置项和数据
        var option = {
            title: {
                text: 'ECharts 入门示例'
            },
            tooltip: {},
            legend: {
                data:['销量']
            },
            xAxis: {
                data: ["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","袜子"]
            },
            yAxis: {},
            series: [{
                name: '销量',
                type: 'bar',
                data: [5, 20, 36, 10, 10, 20]
            }]
        };
        // 使用刚指定的配置项和数据显示图表。
        myChart.setOption(option);
    </script>
</body>
</html>

500ef55fd79e588f4634b6fd0aea5c1e.png

a73b9a880ef1e2da840fa2e69582d48a.png

Date日期、SpringMVC日期处理、laydate:

667835d648d3eb6ce5ad6c4d3abbfe83.png

2b19589f8c29402923f33ee119a78482.png

Mysql中经常用来存储日期、时间的数据类型:Date、Time、Datetime、Timestamp。

Date数据类型:用来存储没有时间的日期。Mysql获取和显示这个类型的格式为“YYYY-MM-DD”。支持的时间范围为“1000-00-00”到“9999-12-31”。

Time数据类型 :用来存储时间 HH:MM:SS 13:56:23

Datetime类型:存储既有日期又有时间的数据。存储和显示的格式为 “YYYY-MM-DD HH:MM:SS”。支持的时间范围是“1000-00-00 00:00:00”到“9999-12-31 23:59:59”。

Timestamp 时间戳 类型:也是存储既有日期又有时间的数据。存储和显示的格式跟Datetime一样。支持的时间范围是“1970-01-01 00:00:01”到“2038-01-19 03:14:07”。是1970-01-01 00:00:00 到当前的秒数.

不太直观,但是利于计算(加减)

mysql数据库中日期类型是date,时间类型是time,date表示:年月日,time表示:时分秒。

java中日期和时间都是用date类型,是java.util.Date,包含:年月日时分秒。

将java中date类型存入到mysql中的date类型时,mysql会自动截取日期信息(年月日)。

将java中date类型存入到mysql中的time类型时,mysql会自动截取时间信息(时分秒)。

43d893abdc022a79d18a10d98f966d30.png

42132f64b7b6c6d6c435bcb52d2fa6af.png

SpringMVC日期的处理

在SpringMVC中如果前台输入的日期类型是yyyy/MM/dd 例如:1987/09/09,SpringMVC

能够自动将字符串类型的日期转换成Date类型。

400 请求出错 由于语法格式有误,服务器无法理解此请求。不作修改,客户程序就无法重复此请求。

在默认情况下,springmvc不能够将String类型转换为java.util.Date类型,所以我们要自己来写String转Date。

第一种方式:

在业务控制方法中写入模型变量收集参数,且使用@InitBind来解决字符串转日期类型。

缺点是只在这个类中有效。

@InitBinder
  public void initBinder(WebDataBinder binder) {
    // 把字符创的日期类型转换成Date类型
    SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
    simpleDateFormat.setLenient(false);
    binder.registerCustomEditor(Date.class, new CustomDateEditor(simpleDateFormat, true));
  }

第二种方式: 配置全局日期转换器

在Controller中自定义类型转换器。

springmvc.xml配置:

<!-- 注解驱动 -->
<mvc:annotation-driven conversion-service="consersionServiceFactoryBean"/>
<!-- 配置Converter转换器 转换工厂 -->
<bean id="consersionServiceFactoryBean" class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
    <!--配置多个转换器  -->
    <property name="converters">
        <list>
           <bean class="com.situ.ssm.conversion.DateConverter"/>
        </list>
    </property>
</bean>
/**
 * 日期转换的Converter
 *String:代表页面传递过来的字符串类型日期
 *Date:转换后类型
 */
public class DateConverter implements Converter<String, Date>{
  //This method must return a result of type Date
  @Override
  public Date convert(String source) {
    System.out.println("DateConverter.convert()");
    if (null != source) {
       System.out.println(source);
       SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
       try {
         return simpleDateFormat.parse(source);
       } catch (ParseException e) {
         e.printStackTrace();
       }
    }
    return null;
  }
}

前后台时间处理:

引用一篇别人的比较好的方法

spring mvc日期转换(前端到后端,后端到前端)​www.cnblogs.com

页面上空间获得的都是字符串类型,如果java代码对应的是Date类型,不能够直接转换,在Springmvc中

需要特殊处理。

date类型转换为json字符串时,返回的是long time值,如果需要返回指定的日期的类型的get方法上

// 前台String->后代Date
@DateTimeFormat(pattern = "yyyy-MM-dd")
// 后台时间戳Date->前台格式化
@JsonFormat(pattern="yyyy-MM-dd",timezone = "GMT+8")
private Date birthday;

emmm再加上一篇MyBatis Generator 逆向工程的使用方法吧

同样的也是引用别人的文章,我加上了点自己的

MyBatis的Mapper接口以及Example的实例函数及详解_biandous的博客-CSDN博客​blog.csdn.net
865260c739f957b2308a3d7e13184800.png

如果不想点过去看闲麻烦的话可以继续往后看我的。。嘿嘿嘿

一、mapper接口中的方法解析

mapper接口中的函数及方法

4e2216fe6de3f708de52f385c0f2a943.png

二、example实例解析

mybatis的逆向工程中会生成实例及实例对应的example,example用于添加条件,相当where后面的部分

xxxExample example = new xxxExample(); 
Criteria criteria = new Example().createCriteria();

495fcce999a06b935965bcd1ef3dc122.png

三、应用举例

480a530e89bcba744be3f345275f8f61.png

e164385bc15896aef25ea00ae9f70cb2.png

2e3aa15d9e83b588c644cd97dbfe3ab8.png

b3cb2e45a67a39e911e31f36ec887556.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值