java向MySQL插入当前时间的四种方式
第一种:将java.util.Date类型的时间转成mysql数据库识别的java.sql.Date类型时间
注:java.util.Date是java.sql.Date的父类
Date time= new java.sql.Date(newjava.util.Date().getTime());
pstat.setDate(8,new Date(userinfo.getStarttime().getTime()));
第二种: java用PreparedStatement来setDate,用问号的形式给日期问号赋值
pstmt.setTimestamp(8, newTimestamp(System.currentTimeMillis()));
第三:使用Timestamp的valueOf方法
Mysql 与 java 的时间类型
MySql时间类型 | Java与之对应的时间类型 |
---|---|
date | java.sql.Date |
Datetime | java.sql.Timestamp |
Timestamp | java.sql.Timestamp |
Time | java.sql.Time |
Year | java.sql.Date |
于是便通过以下方式去实现:
Date date = new Date();//获得系统时间.
String nowTime = new SimpleDateFormat(“yyyy-MM-ddHH:mm:ss”).format(date);//将时间格式转换成符合Timestamp要求的格式.
Timestamp goodsC_date =Timestamp.valueOf(nowTime);//把时间转换
java时间日期格式化的几种方法
方法一:使用格式转换工具
importjava.sql.Timestamp;
importjava.text.ParseException;
importjava.text.SimpleDateFormat;
import java.util.Date;
public class TransformDate {
/**
* 直接将当前时间只按日期(时间为0)作为mysql时间戳字段的条件
* 最终返回时间类型java.sql.Date
*/
public voidtransformCurDate(){
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM");
java.sql.Date timePara = null;
try {
timePara = new java.sql.Date(new Date().getTime());
System.out.println(timePara);
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 将java的当前时间转成指定格式(yyyy-MM-0100:00:00")作为mysql时间戳字段的条件
* 最终返回时间类型java.sql.Date
*/
public voidtransformCurYearMon(){
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM");
String time = format.format(new Date()).concat("-0100:00:00");
java.sql.Date timePara = null;
try {
timePara = newjava.sql.Date(format.parse(time).getTime());
System.out.println(timePara);
} catch (ParseException e) {
e.printStackTrace();
}
}
/**
* 将java的当前时间转成Timestamp作为mysql时间戳字段的条件
* 最终返回时间类型java.sql.Timestamp
*/
public static void testData() {
try {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-ddhh:mm:ss");
Timestamp date = java.sql.Timestamp.valueOf("2012-12-1201:12:11");
System.out.println(date);
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 处理当前时间只按日期(时间为0)
* 最终返回时间类型java.util.Date
*/
public static void dataTest() {
try {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
String time = format.format(new Date());
Date date = format.parse(time.concat(" 00:00:00"));
System.out.println(date);
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[]args) {
testData();
}
}
方法二:使用@JsonFormat注解的方法
import java.sql.Timestamp;
import com.fasterxml.jackson.annotation.JsonFormat;
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
private Timestamp orderTime;
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
public Timestamp getOrderTime() {
return orderTime;
}
public void setOrderTime(Timestamp orderTime) {
this.orderTime = orderTime;
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/245972.html