一:前言

  有关Time的时间其实很少有用到。但是用到就很纠结了,转换和保存,都是烦人的事情,我自己就在这上面吃过一个亏,所以就加载下来吧!

二:内容

(1):被坑的地方

实体类

import java.sql.Time;

public class Student {
private Time startTime; private Time endTime; public Time getStartTime() {
return startTime;
} public void setStartTime(Time startTime) {
this.startTime = startTime;
} public Time getEndTime() {
return endTime;
} public void setEndTime(Time endTime) {
this.endTime = endTime;
} }

测试代码

public static void main(String[] args) throws ParseException {
Student s=new Student();
Time time=new Time(Long.valueOf("41400000"));
s.setStartTime(time);
time.setTime(Long.valueOf("34200000"));
s.setEndTime(time);
System.out.println("开始时间-->"+s.getStartTime());
System.out.println("结束时间--->"+s.getEndTime()); }

这里打印出来会看到开始时间和结束时间变成一样的了。

这个时候,你就会觉得这里的时间怎么变成一样了。说白了Time还是一个对象,那么在改变对象之后,对象的数据就改变了,那么startTime也就随之改变了。所以这里需要重新包装下

(二)有关在接口上面接收Time类型数据

我自己测试的就是app端传入长整形的数据,后台可以直接用Time接收,再进行转换如下

Time time=new Time(Long.valueOf(receive));//receive是接收到的长整形数据

(三)有关时间的转换和计算

(1)有关Date--->Time---->Long之间的转换

package com.wuhao.alltime;

import java.sql.Time;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale; public class AllTime {
public static void main(String[] args) {
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date d=new Date();
//Date ---->long
long dateToLong=Long.valueOf(d.getTime());
System.out.println(dateToLong); //Date--->Time
Time time=new Time(d.getTime());
System.out.println(time); //long---->Time
Time t=new Time((Long.valueOf("1429686000000")));
System.out.println(t.toString()); //转换后如:08:30:00
Time t1=new Time((Long.valueOf("1800000")));
System.out.println(t1); //long------>Date
long l=1429686000000l;//最后是个l
Date dd=new Date(l);
System.out.println(dd);
System.out.println(sdf.format(d)); //Time--->long
Time times=new Time(1800000);
System.out.println(times.getTime()); //Time--->Date
Time timedate=new Time((Long.valueOf("1800000")));
SimpleDateFormat sdfs = new SimpleDateFormat("HH:mm:ss",Locale.getDefault());
Date dates;
try {
dates = sdfs.parse(timedate.toString());
System.out.println(dates);
} catch (ParseException e) {
e.printStackTrace();
} }
}

有关时间的转换还是很麻烦的。

(2):有关时间的加减

package com.wuhao.alltime;

import java.sql.Time;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale; public class DatePlus {
public static void main(String[] args) {
String aa="2015-04-28 12:00:00";
String bb="2015-04-28 15:30:00";
SimpleDateFormat sd=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss",Locale.getDefault());
try {
Date d1=sd.parse(aa);
Date d2=sd.parse(bb);
//一秒等于1000毫秒,再除以60就是分钟,在除以60就是小时
double c=(d2.getTime()-d1.getTime())/(60*1000);
System.out.println(c);
double hours=c/60;
System.out.println(hours);
System.out.println(c/3600);
} catch (ParseException e) {
e.printStackTrace();
}
}
}

(三)总结

时间的转换转换多了就还是不错的,总的去进行尝试的。5月三十号毕业答辩啊,我的论文和系统都还没有做,真是烦人啊。希望自己今晚可以把页面给写好。努力

java有关Time类型数据的接收和转换的更多相关文章

  1. Android java传递string类型数据给C

    本文接着实现<Android java传递int类型数据给C>的还未实现的方法: public native String sayHelloInC(String s); 先贴一个工具方法, ...

  2. Android java传递int类型数据给C

    本文根据<Android jni简便开发流程>中的开发流程来实现一个java传递int类型数据给C 新建项目,进行简单的布局 <LinearLayout xmlns:android= ...

  3. python基础知识五 各类型数据方法补充,转换,分类,编码+坑中菜

    3.9各类型数据方法补充,转换,分类,编码,坑中菜 3.9.1数据类型方法补充 1.str:不可变 补充方法 s1.capitalize():首字母大写 s1 = "alex" s ...

  4. Java的各类型数据在内存中分配情况详解

    1.      有这样一种说法,如今争锋于IT战场的两大势力,MS一族偏重于底层实现,Java一族偏重于系统架构.说法根据无从考证,但从两大势力各自的社区力量和图书市场已有佳作不难看出,此说法不虚,但 ...

  5. JAVA判断各种类型数据是否为空

    1.判断list是否为空(Map.Set同list) if(list != null && list.size() == 0){ } if(list != null && ...

  6. java通过jdbc连接数据库并更新数据(包括java.util.Date类型数据的更新)

    一.步骤 1.获取Date实例,并通过getTime()方法获得毫秒数: 2.将获取的毫秒数存储到数据库中,注意存储类型为nvarchar(20): 3.读取数据库的毫秒数,作为Date构造方法的参数 ...

  7. java 操作CLOB类型数据

    clob类型,但对于这个类型处理起来还是比较麻烦的,varchar2长度为4000bytes,如果varchar2能满足楼主的需求,建议使用varchar2,下面提供了在Java 中读取clob类型的 ...

  8. Java中Byte类型数据在运算中的问题

    比如: byte a=1; byte b=2; byte c; c=a+b; //这样是计算不出c,是错误的 c=a+1; //这样也是不能计算c的 c=64+1; //为什么这样就能计算c,在Jav ...

  9. Java中Double类型数据比较大小

    方法一:转成字符串之后比较 如果要比较的两个double数据的字符串精度相等,可以将数据转换成string然后借助string的equals方法来间接实现比较两个double数据是否相等.注意这种方法 ...

随机推荐

  1. 理解glance

    摘要: 本节介绍 OpenStack Image 服务 Glance 的基本概念. OpenStack 由 Glance 提供 Image 服务. 理解 Image 要理解 Image Service ...

  2. 百度编辑器ueditor的图片地址修正

    我用的百度编辑器为1.4.2的,相对于现在这个时间来说是比较新的.之前去的1.3版的,后来更新到1.4之后出现路径问题.因为今天晚上出现特别奇怪的问题,所以特地又整了一遍,发现这玩意还是得自己弄通了好 ...

  3. gcc与g++区别以及相关参数详解

    ---恢复内容开始--- 原文链接:g++和gcc的区别 一 .二者区别 gcc和g++都是GNU(一个组织)的编译器. 1.对于.c后缀的文件,gcc把它当做是C程序:g++当做是C++程序: 2. ...

  4. PAT1024 强行用链表写了一发。

    主要的思想还是 上课的那个PPT上面的 链表反转的思想. 然后加一点七七八八的 递推. 一层一层往下翻转就好啦. 1A 真开心. 代码:http://paste.ubuntu.net/16506799 ...

  5. lintcode-148-颜色分类

    148-颜色分类 给定一个包含红,白,蓝且长度为 n 的数组,将数组元素进行分类使相同颜色的元素相邻,并按照红.白.蓝的顺序进行排序. 我们可以使用整数 0,1 和 2 分别代表红,白,蓝. 注意事项 ...

  6. C#中的unsafe

    为了保持类型安全性,默认情况下,C# 不支持指针算法. 但是,通过使用 unsafe 关键字,可以定义可在其中使用指针的不安全上下文. 有关指针的详细信息,请参阅主题指针类型. 备注 在公共语言运行时 ...

  7. MySQL优化之profile

    分析SQL执行带来的开销是优化SQL的重要手段.在MySQL数据库中,可以通过配置profiling参数来启用SQL剖析.该参数可以在全局和session级别来设置.对于全局级别则作用于整个MySQL ...

  8. docker使用记录

    1.安装(开始前要注意系统内核版本是否合适,建议用7以上的系统吧,少点坑) //安装docker yum -y install docker-io //启动 service docker start ...

  9. [计算机网络-应用层] FTP协议

    文件传输协议:FTP 如下图所示:用户通过一个FTP用户代理与FTP交互.该用户首先提供远程主机的主机名,使本地主机的FTP客户机进程建立一个到远程主机FTP服务器进程的TCP连接.然后,该用户提供用 ...

  10. java邮件开发

    一.邮件协议: (重点)SMTP:发送邮件的协议.Simple Message Transfer Protocal.默认端口:25 POP:邮局协议(收件协议).Post Office Protoca ...