![16651635745b5f1bf14622c40ae9369f.png](https://i-blog.csdnimg.cn/blog_migrate/94f5b54cfa0bf1071da788a9f3903a49.jpeg)
今天就把周六周天欠的笔记全都不上吧,高产中。。。。。
上一篇讲到了Layui,这一篇先写点ECharts的例子然后在补加上SpringMVC的日期处理吧
ECharts:
![2f8d757790f8b446b235e7f5476f47e5.png](https://i-blog.csdnimg.cn/blog_migrate/2e5e4682980fe137ff1947290d8a0b24.jpeg)
<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](https://i-blog.csdnimg.cn/blog_migrate/12fcbc1f9a0ca3a5bfc3fa50b8645a0d.jpeg)
![a73b9a880ef1e2da840fa2e69582d48a.png](https://i-blog.csdnimg.cn/blog_migrate/68099eb54e46796bebfbd67f7bba4ea0.jpeg)
Date日期、SpringMVC日期处理、laydate:
![667835d648d3eb6ce5ad6c4d3abbfe83.png](https://i-blog.csdnimg.cn/blog_migrate/7a13a084f6c2e4da03630b9af27b50ea.jpeg)
![2b19589f8c29402923f33ee119a78482.png](https://i-blog.csdnimg.cn/blog_migrate/af040caff3b0036a063b0ec74629a188.jpeg)
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](https://i-blog.csdnimg.cn/blog_migrate/0364d3878b80d85608b7cdb25d431c00.jpeg)
![42132f64b7b6c6d6c435bcb52d2fa6af.png](https://i-blog.csdnimg.cn/blog_migrate/20c41cb89e1418220b050595a4ae9ab7.jpeg)
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](https://i-blog.csdnimg.cn/blog_migrate/5c939b6fece185c2918938624363f2de.png)
如果不想点过去看闲麻烦的话可以继续往后看我的。。嘿嘿嘿
一、mapper接口中的方法解析
mapper接口中的函数及方法
![4e2216fe6de3f708de52f385c0f2a943.png](https://i-blog.csdnimg.cn/blog_migrate/c6493d797690d58e8d434e23086cee5b.jpeg)
二、example实例解析
mybatis的逆向工程中会生成实例及实例对应的example,example用于添加条件,相当where后面的部分
xxxExample example = new xxxExample();
Criteria criteria = new Example().createCriteria();
![495fcce999a06b935965bcd1ef3dc122.png](https://i-blog.csdnimg.cn/blog_migrate/395693de4652d91c762e2a8eb8407874.jpeg)
三、应用举例
![480a530e89bcba744be3f345275f8f61.png](https://i-blog.csdnimg.cn/blog_migrate/550aea1dbabd7f1a860ee47b30a6348d.jpeg)
![e164385bc15896aef25ea00ae9f70cb2.png](https://i-blog.csdnimg.cn/blog_migrate/6a33d0c661e2842e4348bcab4272c881.jpeg)
![2e3aa15d9e83b588c644cd97dbfe3ab8.png](https://i-blog.csdnimg.cn/blog_migrate/3ee3982cb7c6b73a5f79608f2ff20bf7.jpeg)
![b3cb2e45a67a39e911e31f36ec887556.png](https://i-blog.csdnimg.cn/blog_migrate/5e7eddebbc91e3f775d559cb60e0a630.jpeg)