java.util.Date与java.sql.Date
我数据库里用到了日期类型。用java编程的时候同时import了java.util.*和java.sql.*,发现直接申明Date类型
Date dt;
会报错,查了一下才发现有java.util.Date和java.sql.Date,在定义日期类型的时候要使用全名,就是像这样:
java.util.Date udt;
java.sql.Date sdt;
然后我就查java.util.Date和java.sql.Date的区别和用法,这方面网上资料挺全,我就不赘述了,大致区别就是java.util.Date支持日期和时间,而java.sql.Date只支持日期。后面我还用到了String转java.sql.Date,这个在网上也能查到,我简要介绍我比较喜欢的一种方法。
首先,准备一个SimpleDateFormat对象,使用SimpleDateFormat类需要import java.text.SimpleDateFormat
SimpleDateFormat df = new SimpleDateFormat(“yyyy-MM-dd”);//yyyy-MM-dd为我们想要转换成的日期格式,一会儿被转换的字符串也应按这个格式来写
然后,准备一个java.util.Date对象和待转换的字符串
String str = ”2011-06-30”;//这里不能写成2011/06/30或其他样子,会报错,只能按目标日期格式来yyyy-MM-dd
java.util.Date udt = null;
然后用df将str转换成java.util.Date,并赋值给udt
udt = df.parse(str);
然后再从udt获得我们需要的java.sql.Date
java.sql.Date sdt = new java.sql.Date(udt.getTime());
总结一下就是先用SimpleDateFormat将待转换成日期的字符串格式化成java.util.Date类型,然后再从得到的java.util.Date对象得到java.sql.Date对象,我们可以将它写成一个函数,代码如下:
public java.sql.Date stringToSQLDate(String str){
SimpleDateFormat sdf = new SimpleDateFormat(“yyyy-MM-dd”);
Java.util.Date udt=null;
try{
udt = sdf.parse(str);
}catch(Exceprion e){
e.printStackTrace();
}
java.sql.Date sdt = new java.sql.Date(udt.getTime());
return sdt;
}
java.util.Date与java.sql.Date的更多相关文章
- 如何将util.Date转化为sql.Date
通过查看API可以很容易知道,util.Date类时sql.Date的父类,所以根据向上转型的原理可以很简单的知道时可行的,不用做转换都可以. 但是如果想要将util.Date转化为sql.Date, ...
- java 多线程 集合的包装方法Collections.synchronizedXXXXX;线程安全的集合类:Java.util.concurrent.ConcurrentXXX;java.util.concurrent.CopyOnWriteXXXX
问题:ArrayList 等线程不安全 当多线程并发修改一个集合数据时,可能同一个下标位置被覆盖. 示例代码: 一个List,我们创建10个线程,每个线程往这个List中添加1000条数据,结果往往 ...
- mybatis异常: invalid comparison: java.util.ArrayList and java.lang.String] with root cause
mybatis中使用动态sql,报错: invalid comparison: java.util.ArrayList and java.lang.String] with root cause 是由 ...
- java.util.HashMap和java.util.HashTable (JDK1.8)
一.java.util.HashMap 1.1 java.util.HashMap 综述 java.util.HashMap继承结构如下图 HashMap是非线程安全的,key和value都支持nul ...
- 在eclipse中启动项目报java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: PermGen space
在我们启动项目的时候经常会出现内存溢出这个错误 设置一下内存就ok 错误信息 java.util.concurrent.ExecutionException: java.lang.OutOfMemo ...
- Attempt to invoke interface method 'boolean java.util.List.add(java.lang.Object)' on a null
1.Android Studio报错 Attempt to invoke interface method 'boolean java.util.List.add(java.lang.Object)' ...
- java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: Java he
tomcat内存溢出的解决方法(java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError:) 最简单的解决办法: 在ecl ...
- 2016.6.30 java.util.concurrent.ExecutionException java.lang.OutOfMemoryError
选中ccs项目后,选择debug on server,但是运行到一半,跳出错误: java.util.concurrent.ExecutionException: java.lang.OutOfMem ...
- invalid comparison: java.util.ArrayList and java.lang.String解决
报错: Caused by: org.apache.ibatis.exceptions.PersistenceException: ### Error querying database. Cause ...
- mybatis无效比较:invalid comparison:java.util.data and java.lang.string
原因: 时间与空字符串比较是无效的,如果拿传入的时间类型参数与空字符串''进行对比则会引发invalid comparison:java.util.data and java.lang.string异 ...
随机推荐
- 矩阵乘法&矩阵快速幂&矩阵快速幂解决线性递推式
矩阵乘法,顾名思义矩阵与矩阵相乘, 两矩阵可相乘的前提:第一个矩阵的行与第二个矩阵的列相等 相乘原则: a b * A B = a*A+b*C a*c+b*D c d ...
- 【Effective Java】12、避免过度同步
这里有一个辅助基础类 package cn.xf.cp.ch02.item16; import java.util.Collection; import java.util.Iterator; imp ...
- chkconfig系统服务启动设置
chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息. 谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接. 使用语法:chkconfig [--a ...
- 2016读书List
2016年读书书单. 1. <华尔街漫步> + <战胜华尔街>+ <华尔街之狼> 2. <野蛮大陆> 3. <第三帝国的最后十四天> 4. ...
- Python WMI获取Windows系统信息 监控系统
#!/usr/bin/env python # -*- coding: utf-8 -*- #http://www.cnblogs.com/liu-ke/ import wmi import os i ...
- GJM : 基于Actor模式的c#网络游戏服务器的实现和Unity游戏客户端的连接 [转载]
感谢您的阅读.喜欢的.有用的就请大哥大嫂们高抬贵手"推荐一下"吧!你的精神支持是博主强大的写作动力以及转载收藏动力.欢迎转载! 版权声明:本文原创发表于 [请点击连接前往] ,未经 ...
- wso2esb之代理服务 Proxy Services
代理服务 顾名思义,代理服务充当了WSO2 ESB服务的代理,通常是一个已经存在的服务端点,代理服务可以使用不同的传输方式. 客户可以直接发送请求代理服务的ESB,客户看到服务代理. 运行示例 配置W ...
- 经典!HTML5 Canvas 模拟可撕裂布料效果
这是一个模拟可撕裂布料效果的 HTML5 Canvas 应用演示,效果逼真.你会看到,借助 Canvas 的强大绘图和动画功能,只需很少的代码就能实现让您屏息凝神的效果. 温馨提示:为保证最佳的效果, ...
- 《Javascript高级程序设计》:创建对象
工厂模式 function createPerson(name,age, job){ var o = new Object(); o.name = name; o.age = age; o.job = ...
- 使用cocoaPods一键集成第三方登录(新浪微博,qq,微信)
第三方登录是现在app很常用的功能,而这个功能我已经写过两三次了...每次都写大同小异的代码真的是很痛苦,而且每次都要根据说明去添加那些依赖库,配置linkFlag什么的,完全是体力活,所以一直想把这 ...