java中主要有3个类用于日期格式转换    DateFormat 、SimpleDateFormat、Calendar

SimpleDateFormat函数的继承关系:
java.lang.Object

    |

    +----java.text.Format

            |

            +----java.text.DateFormat

                    |

                    +----java.text.SimpleDateFormat

下面是个小例子:

import java.text.*;

import java.util.Date;

/**

   SimpleDateFormat函数语法:

G 年代标志符

   y 年

   M 月

   d 日

   h 时 在上午或下午 (1~12)

   H 时 在一天中 (0~23)

   m 分

   s 秒

   S 毫秒

   E 星期

   D 一年中的第几天

   F 一月中第几个星期几

   w 一年中第几个星期

   W 一月中第几个星期

   a 上午 / 下午 标记符

   k 时 在一天中 (1~24)

   K 时 在上午或下午 (0~11)

   z 时区

1.SimpleDateFormat

该类是DateFormat的子类,一般日期的格式化都是实例化该类实现

具体应用如下

package com.gree.java;

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.logging.SimpleFormatter; public class simpledate { public static void main(String [] args){ SimpleDateFormat a= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//全日期格式,24小时制
SimpleDateFormat b= new SimpleDateFormat("yyyy-MM-dd hh:mm:ss a");//全日期格式,12小时制
SimpleDateFormat c=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//获取5天以后的日期
SimpleDateFormat d=new SimpleDateFormat("yyyy-MM-dd");//获取年月日格式
SimpleDateFormat e=new SimpleDateFormat("yyyy");//获取年份
SimpleDateFormat f=new SimpleDateFormat("MM");//获取月份
SimpleDateFormat g=new SimpleDateFormat("dd");//获取天 Calendar calendar =Calendar.getInstance();
calendar.add(Calendar.DATE, 5);
Date date1=new Date();
Date date=calendar.getTime();
System.out.println(a.format(date));
System.out.println(b.format(date1));
System.out.println(c.format(date1));
System.out.println(d.format(date1));
System.out.println(e.format(date1));
System.out.println(f.format(date1));
System.out.println(g.format(date1));
// System.out.println(g.format(date1));
} }
结果如下:
2014-11-18 16:36:30
2014-11-13 04:36:30 下午
2014-11-13 16:36:30
2014-11-13
2014
11
13


    SimpleDateFormat myFmt=new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");
SimpleDateFormat myFmt1=new SimpleDateFormat("yy/MM/dd HH:mm");
SimpleDateFormat myFmt2=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//等价于now.toLocaleString()
SimpleDateFormat myFmt3=new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒 E ");
SimpleDateFormat myFmt4=new SimpleDateFormat(
"一年中的第 D 天 一年中第w个星期 一月中第W个星期 在一天中k时 z时区");
Date now=new Date();
System.out.println(myFmt.format(now));
System.out.println(myFmt1.format(now));
System.out.println(myFmt2.format(now));
System.out.println(myFmt3.format(now));
System.out.println(myFmt4.format(now));
System.out.println(now.toGMTString());
System.out.println(now.toLocaleString());
System.out.println(now.toString()); 效果:
2004年12月16日 17时24分27秒
04/12/16 17:24
2004-12-16 17:24:27
2004年12月16日 17时24分27秒 星期四
一年中的第 351 天 一年中第51个星期 一月中第3个星期 在一天中17时 CST时区
16 Dec 2004 09:24:27 GMT
2004-12-16 17:24:27
Thu Dec 16 17:24:27 CST 2004

oracle日期格式转换:

由String类型转换为date类型:date可以为年月日,也可以是年月日时分秒

insert into table(date) values(to_date(?,'YYYY-MM-DD HH24-MI-SS'))或insert into table(date) values(to_date(?,'YYYY-MM-DD'))

例:

insert into timod400(gzbh,sqdt) values('CK301/0058',to_date('2014-12-14','YYYY-MM-DD'))

insert into timod400(gzbh,sqdt) values('CK301/0058',to_date('2014-12-14 22:55:08','YYYY-MM-DD HH24:mi:ss'))

由date类型转换为String类型:

select gzbh,gznm,jjcd, sqbm, sqnm,zsyy,to_char(sqdt,'YYYY-MM-DD') sqdt from timod400

select to_char(t.sqdt,'YYYY-MM-DD HH24:mi:ss') sqdt from timod400 t

插入系统当前时间:

insert into timod400(gzbh,sqdt) values('fsdf213213',sysdate)

mysql日期格式转换:

由date类型转换为String类型

  SimpleDateFormat de=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SS");  
// SimpleDateFormat de=new SimpleDateFormat("yyyy-MM-dd");只包含年月日的格式
Timestamp restime=rs.getTimestamp("registertime");
Timestamp logintime=rs.getTimestamp("lastlogintime"); if(restime!=null){
String registertime=de.format(restime);
}
// SimpleDateFormat myFmt=new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");
if(logintime!=null){
String lastlogintime=de.format(logintime);
}

由String格式转换为date格式:

1.插入系统当前时间:

DB服务器:insert into table(name,makedate) values('ceshi',NOW());

客户端:插入new Date()

代码:

ConnectDB  db=new ConnectDB();
PreparedStatement stmt=null;
Connection conn=null;
conn=db.getConnection();
String sql="update user set lastlogintime=? where name=?";
try { java.util.Date dates=new java.util.Date();
Date date=new Date(dates.getTime()); //Date类为java。sql.Date类 stmt=conn.prepareStatement(sql);
stmt.setDate(1,date );
stmt.setString(2, "wcs");
stmt.executeUpdate();

java中日期格式的转换和应用的更多相关文章

  1. Java中日期格式(String、Date、Calendar)的相互转换

    package day20190318; import java.text.ParseException; import java.text.SimpleDateFormat; import java ...

  2. JAVA中日期格式转换各个字母代表含义

    G  Era 标志符  Text  AD  y  年  Year  1996; 96  M  年中的月份  Month  July; Jul; 07  w  年中的周数  Number  27  W  ...

  3. SpringMVC中日期格式的转换

    解决日期提交转换异常的问题 由于日期数据有很多种格式,所以springmvc没办法把字符串转换成日期类型.所以需要自定义参数绑定.前端控制器接收到请求后,找到注解形式的处理器适配器,对RequestM ...

  4. 转:SpringMVC中日期格式的转换

    解决日期提交转换异常的问题 由于日期数据有很多种格式,所以springmvc没办法把字符串转换成日期类型.所以需要自定义参数绑定.前端控制器接收到请求后,找到注解形式的处理器适配器,对RequestM ...

  5. JS和vue中日期格式的转换

    1.获取当前时间: var now=new Date(); //Tue Oct 17 2017 18:08:40 GMT+0800 (中国标准时间) 获取当前时间的日期 new Date().getD ...

  6. 聊聊 Java 中日期的几种常见操作 —— 取值、转换、加减、比较

    Java 的开发过程中免不了与 Date 类型纠缠,准备总结一下项目经常使用的日期相关操作,JDK 版本 1.7,如果能够帮助大家节约那么几分钟起身活动一下,去泡杯咖啡,便是极好的,嘿嘿.当然,我只提 ...

  7. java中日期常用

    Java中日期的几种常见操作 —— 取值.转换.加减.比较 Java 的开发过程中免不了与 Date 类型纠缠,准备总结一下项目经常使用的日期相关操作,JDK 版本 1.7,如果能够帮助大家节约那么几 ...

  8. Java中的线程状态转换和线程控制常用方法

    Java 中的线程状态转换: [注]:不是 start 之后就立刻开始执行, 只是就绪了(CPU 可能正在运行其他的线程). [注]:只有被 CPU 调度之后,线程才开始执行, 当 CPU 分配给你的 ...

  9. Java中XML格式的字符串4读取方式的简单比较

    Java中XML格式的字符串4读取方式的简单比较 1.java自带的DOM解析. import java.io.StringReader; import javax.xml.parsers.Docum ...

随机推荐

  1. 【bzoj2280】[Poi2011]Plot 二分+倍增+二分+最小圆覆盖

    题目描述 给出一系列点p_1, p_2, ... , p_n,将其分成不多余m个连续的段,第i段内求一个点q_i,使得q_i到这段内点的距离的最大值的最大值最小 输入 第一行,n m下面n行,每行两个 ...

  2. [bzoj4259][bzoj4503] 残缺的字符串 [FFT]

    题面 传送门 bzoj上的这两题是一样的...... 正文 我看到这道题,第一想法是跑魔改过的KMP,然后很快发现不可行 于是想换个角度思考 其实,本题最大的问题就在于通配符的存在:它可以匹配任意一个 ...

  3. pdf生成(itextSharp)

    最近在工作中遇到一个问题,客户要求将系统中的表格全部导出成PDF格式.经过搜索,基本是三种思路: 直接用byte写PDF文件.(算你狠,霸王硬上弓) 通过Com组件转换.以Adobe Acrobat为 ...

  4. Ubuntu安装opencv with cuda

    Ubuntu安装opencv with cuda 为了运行dense flow真是折腾啊,下面网址是教程 http://blog.aicry.com/ubuntu-14-04-install-open ...

  5. 洛谷P2056 采花

    P2056 采花 52通过 99提交 题目提供者shengmingkexue 标签云端↑ 难度省选/NOI- 时空限制1s / 128MB 提交  讨论  题解 最新讨论更多讨论 求助莫队为什么被卡 ...

  6. MFC设置对话框背景和边框颜色

    对于对话框,只需要重载默认的消息处理函数就行了: // 重载默认的消息处理函数,主要处理WM_MOVE WM_PAINT WM_NCPAINT WM_NCACTIVATE WM_NOTIFY这// 几 ...

  7. JAVA 字节流和字符流度读写的区别

    java处理文件的类里面,stream结尾都是采用字节流,reader和writer结尾都是采用字符流.两者的区别就是读写的时候一个是按字节读写,一个是按字符. 字符流的底层就是字节流.而字符流主要是 ...

  8. iOS多线程:『GCD』详尽总结 ---(转)

    文章:https://bujige.net/blog/iOS-Complete-learning-GCD.html 文中 Demo 我已放在了 Github 上,Demo 链接:https://git ...

  9. 支付宝APP支付IOS手机端java后台版

    版权声明:http://blog.csdn.net/u012131769/article/details/76639527#t8 转载:http://blog.csdn.net/u012131769/ ...

  10. GridView 动态绑定控件 OnRowCommand事件触发

    主题:GridView动态生成的控件不能触发OnRowCommand事件,且点击控件按钮后,控件的值会消失. 案例, 由于公司需要绑定的数据列顺序是动态生成的,且有的数据列需要绑定Button控件.所 ...