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. Struts2拦截器原理

    拦截器是struts2处理的核心,本文主要说struts2的拦截器的基本原理/实现,其它框架处理的东西就不说了,得自己再看了.struts2版本:2.2.3当一个请求来了后,从org.apache.s ...

  2. struts ValueStack 详解

    一.ValueStack     1.ValueStack是一个接口,在struts2中使用OGNL(Object-Graph Navigation Language)表达式实际上是使用        ...

  3. 【转】Netty系列之Netty编解码框架分析

    http://www.infoq.com/cn/articles/netty-codec-framework-analyse/ 1. 背景 1.1. 编解码技术 通常我们也习惯将编码(Encode)称 ...

  4. input[type="radio"]自定义样式

    input为radio时,虽然会有默认选中的样式,但是并不符合大多数项目的需求,我们的目标是可以随心所欲自定义它的样式.怎么做呢?其实很简单,只要抓住3点.分别是1.label 2.隐藏自带样式 3. ...

  5. 山贼集团 (group)

    山贼集团 (group) 题目描述 某山贼集团在绿荫村拥有强大的势力,整个绿荫村由N个连通的小村落组成,并且保证对于每两个小村落有且仅有一条简单路径相连.小村落用阿拉伯数字编号为1,2,3,4,-,n ...

  6. Linux下对superblock的理解

    对superblock的理解首先从partition structure的结构开始: 开始的,总的来说,block这个概念好理解..下面就是对super block的理解了Super block即为超 ...

  7. regression

    单变量线性回归univariate linear regression 代价函数square error cost function : \(J(\theta)=\frac{1}{2m}\sum_{i ...

  8. [Codeforces Round #351 Div. 2] 673A Bear and Game

    A. Bear and Game time limit per test 2 seconds memory limit per test 256 megabytes input standard in ...

  9. 【Visual Studio】error c4996: 'fopen': This function or variable may be unsafe(转)

    原文转自 http://blog.csdn.net/zhangyuehuan/article/details/12012635 [解决方案]项目 =>属性 =>c/c++  =>预处 ...

  10. LeetCode OJ-- Interleaving String **@

    https://oj.leetcode.com/problems/interleaving-string/ 刚开始用递归做,但是超时了 class Solution { public: bool fl ...