java中setDate(Date date)方法和String与Date之间的转换

经常在开发的过程中遇到这样的问题,从数据库中读出来的数据需要转换为对像或者java bean,此时经常使用到setDate(Date date);这样的方法。感觉这是个很简单而又难受的事情,在这里浪费时间真的是不应该。我这里就记录下我使用过的,方便以后查阅使用。

例如下面的setter方法:

    private String userId;
    private boolean isLogin;
    private Date loginTime;

    public void setLoginTime(Date loginTime) {
        Date oldLoginTime = this.loginTime;
        this.loginTime = loginTime;
    }
    public void setIsLogin(boolean isLogin) {
        boolean oldIsLogin = this.isLogin;
        this.isLogin = isLogin;
    }
    public void setUserId(String userId) {
        String oldUserId = this.userId;
        this.userId = userId;
    }

使用到的String转换为date方法

import java.sql.Timestamp;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;

import java.util.Calendar;
import java.util.Date;

public class DateUtil {
    /**
     * set方法中是timestamp类型
     * new Timestamp(s)
     * @return s
     */
    public Timestamp newStampTime(){
        long s=System.currentTimeMillis();
        return new Timestamp(s);
    }
    /**
     * timeStamp转换为String
     * @return
     */
    public String timeStampToString(){
        SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//定义格式,不显示毫秒
        Timestamp now = new Timestamp(System.currentTimeMillis());//获取系统当前时间
        String str = df.format(now);
        return str;
    }
    /**
     * String 转换为timestamp
     * @return
     */
    public Timestamp StringTotimeStamp(){
        SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String time = df.format(new Date());
        Timestamp ts = Timestamp.valueOf(time);
        return ts;
    }
    public Date myStringTotimeStamp(String dateString){
        int length=dateString.length();
        if(length>10){
            DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
            Date today=new Date();
            try {
                today = df.parse("2009-11-11");
                //String ts=df.format(today);
            } catch (ParseException e) {
                e.printStackTrace();
            }
            return today;
        }else {
            DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
            Date today=new Date();
            try {
                today = df.parse("2009-11-11");
                //String ts=df.format(today);
            } catch (ParseException e) {
                e.printStackTrace();
            }
            return today;
        }

    }
    /**
           * String 转换为timestamp
           * String "2016-5-25" 转换为 Timestamp
           * @return
           */
          public Timestamp StringTotimeStamp(String dateString){
                  SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
                  StringBuffer ds=new StringBuffer(dateString);
                  if(dateString.length()>10){
                          Timestamp ts = Timestamp.valueOf(dateString);
                          return ts;
                  }else{
                          ds.append(" 00:00:00");
                          Timestamp ts = Timestamp.valueOf(ds.toString());
                          return ts;
                  }
          }
    /**
     * 获取当前时间字符串
     * eg:2016-10-11 16:57:52
     **/
    public String formateDateString(){
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd H:m:s");
        String dateString=format.format(new Date());
        return dateString;
    }
    /**
     * 指定时间和当前时间比较大小
     */
    public boolean compareTime(String t1){
        if(t1.length()<=10){
            t1=t1+" 23:59:59";
        }
        Date currentTime = new Date();// 当前时间
                SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
                String nowtime = formatter.format(currentTime);

                Calendar now = Calendar.getInstance();
                Calendar c1 = Calendar.getInstance();
                //String t1 = "2016-02-29 00:30:00";
                try {
                now.setTime(formatter.parse(nowtime));
                c1.setTime(formatter.parse(t1));
                } catch (ParseException e) {
                e.printStackTrace();
                }
                int result1 = now.compareTo(c1);// 比开始时间小,未开始
                System.out.println("结果:"+result1);
                if(result1>0){
                    return false;
                }else{
                    return true;
                }
    }      

}
时间: 2024-10-17 01:10:26

java中setDate(Date date)方法和String与Date之间的转换的相关文章

深入理解Java中的同步静态方法和synchronized(class)代码块的类锁

一.回顾学习内容 在前面几篇博客中我我们已经理解了synchronized对象锁.对象锁的重入.synchronized方法块.synchronized非本对象的代码块, 链接:https://www.cnblogs.com/SAM-CJM/category/1314992.html 我们来总结一下,上面几篇讲到内容: 1.创建线程类的两个方式:继承Thread类和实现Runable接口. 2.了解了Thread类的几个基本构造器. 3.启动多线程时要使用start方法,不要直接调用run方法.

C# 类中隐藏基类方法和Partial

原文:C# 类中隐藏基类方法和Partial 今天对于.NET开发人员来说最开心的事情莫过于微软搞开源了,这觉得是给搞.NET开发的长脸.虽然我是一个初学者,这无疑给我极大的学习动力.Fighting!!! 当一个类从父类继承了一个成员时,也就继承了它的执行代码,如果成员时虚拟的,我们可以用override重写这段执行代码.但无论他是否是虚拟的,都可以通过new 关键字来隐藏它.例如: public class BaseClass { public void DoSomething() { //

Java 中 == 和 equal 的区别 (String)

String s1 = "abcd"; String s2 = "cdfe"; s1 == s2; // 比较s1和s2这2个对象的地址,如果一样,则为true,否则为false s1.equal(s2); //比较s1和s2的内容,如果相同则为true Java 中 == 和 equal 的区别 (String),布布扣,bubuko.com

CSS优先级问题以及jQuery中的.eq()遍历方法和:eq()选择器的差别

在写一个TAB选项卡的时候遇到几个有意思的问题,记录下来 先把代码贴出来 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="

String与StringBuffer之间的转换

来源:http://www.oschina.net/code/snippet_2261089_47352 1 package demo; 2 /* String与StringBuffer之间的转换 3 * String -> StringBuffer 4 * 方式一:构造方法 5 * 方式二:通过append方法 6 * StringBuffer -> String 7 * 方式一:通过构造方法 8 * 方式二:通过toString方法 9 * */ 10 public class Strin

C++ int与string或者char*之间的转换总结

#include "stdafx.h" #include <iostream> #include <string> #include <sstream> using namespace std; int main(void) { //method1 char buf[4]; itoa(123,buf,10); //自动添'\0' cout<<buf<<endl; char buf1[]="567"; int

Json,String,Map之间的转换

前提是String的格式是map或json类型的 String 转Json JSONObject  jasonObject = JSONObject.fromObject(str); String 转Map JSONObject  jasonObject = JSONObject.fromObject(str);Map map = (Map)jasonObject; 在网页之间传递数据出现中文乱码解决方案: 例如请求接口返回一个map或json数据,包含中文 1,先将map或json转成stri

Java中equals和“==””的区别,String特殊

public class TestString { /* * java中的数据类型,可分为两类: * 1.基本数据类型,也称为原始数据类型.byte,short,char,int,long,float,double,boolean * 他们之间的比较,应用双等号(==),比较的是他们的值. * 2.复合数据类型(类) * 当他们用(==)进行比较的时候,比较的是他们在内存中的存放地址,所以,除非是同一个new出来的对象, * 他们的比较后的结果为true,否则比较后果为false. * * ja

java为什么要重写hashCode方法和equals方法?

之前发布过一篇文章说的是关于 equals方法重写 http://www.cnblogs.com/aL0n4k/p/4777333.html 下面就hashCode方法发表一下本人的理解,仅供参考,交流. 在 关于java重写equals方法 已经提及说,比较2个对象的时候,要比较他们各自的属性. 那么重写hashCode方法是因为我们在接触到集合的时候,里面有个Set接口,他只能添加无序以及不重复的对象元素. 那有人会问,既然是这样我们直接用equals判断不就完了么? 实际上对Set集合而言