日期类
java.util.Date下面继承了三个子类,分别是
java.sql.Time:针对数据库中的时间
java.sql.Date:针对数据库中的日期
java.sql.Timesamp:数据库中的时期日期部分
对于日期的格式化,常用的是
java.text.DateFormt类的子类java.text.SimpleDateFormat
如果要想获得日期中的具体的年,月,日,时,分,秒等,那么可以用java.util.Calendar类
声明:以上部分完全是API中的内容
/**
* Java对数据库中时间的操作
* @author DaHai
* 如果要取出数据库中的日期或时间,建议用Timestamp类
*
*/
public class DateTime {
public static void main(String[] args) {
DateTime oracle = new DateTime();
oracle.query();
}
public Connection getConnection() {
Connection conn = null;
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:test", "scott", "tiger");
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
return conn;
}
public void query() {
Connection conn = getConnection();
PreparedStatement pstmt = null;
ResultSet rs = null;
String time = "";
int dt = 0;
try {
pstmt = conn.prepareStatement("select scsj from erp_testwhere wygjz=1");
rs = pstmt.executeQuery();
while (rs.next()) {
Date d = rs.getDate("scsj");
//数据库为2008-1-8 16:51:00这种格式
//Date类即包括时间又包括日期
//因为是用的getDate方法,当做date取出来,所以时间没有取到
//因为是用的getTime方法,当做time取出来,所以日期没有取到
//输出为日期
System.out.println(rs.getDate("scsj"));
//输出为时间
System.out.println(rs.getTime("scsj"));
//注意打印格式,这里的rs.getDate只获取日期,要获得时间需用rs.getTime()
//输出应该为2008年01月08日,但此处输出00:00:00,因为d是getDate()方法
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
System.out.println(sdf.format(d));
dt = getDateTime(rs.getDate("scsj"),Calendar.MONTH);
System.out.println(dt);
time = this.getDate(rs.getTimestamp("scsj"));
System.out.println(time);
}
} catch (SQLException e) {
try {
if(conn!=null){
conn.rollback();
}
} catch (SQLException e1) {
e1.printStackTrace();
}
e.printStackTrace();
} finally{
try {
if(rs!=null){
rs.close();
rs = null;
}
} catch (SQLException e) {
e.printStackTrace();
}
try {
if(pstmt!=null){
pstmt.close();
pstmt = null;
}
} catch (SQLException e) {
e.printStackTrace();
}
try {
if(conn!=null){
conn.close();
conn = null;
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
/**
* 获得date字段的年份
* Timestamp类可以取出时间与日期,时间或日期
* 此处取日期
* @param ts
* @return
*/
public String getDate(Timestamp ts){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
return sdf.format(ts);
}
/**
* 获得date字段的时间
* Timestamp类可以取出时间与日期,时间或日期
* 此处取时间
* @param ts
* @return
*/
public String getTime(Timestamp ts){
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
return sdf.format(ts);
}
/**
* 返回数据库中日期中的具体月份
* @param d
* @param dt,dt变量为Calendar的静态变量
* @return
*/
public int getDateTime(Date d ,int dt){
Calendar c = Calendar.getInstance();
c.setTime(d);
return c.get(dt);
}
}
分享到:
相关推荐
Java数据库操作组件1.1是Java编程领域中用于与数据库交互的一个重要工具,它扩展了对多种数据类型的原生支持,使得开发人员可以更加灵活、高效地处理数据库操作。在这个组件中,我们可以发现一系列增强的功能和优化...
实验报告的主题是“JAVA实验报告四数据库编程”,主要目的是让学生掌握基本的数据库管理系统(DBMS)使用、理解Java数据库连接(JDBC)的概念,并通过JDBC-ODBC桥接技术来开发实际的数据库系统。实验内容包括设计和...
Mybatis-plus是一个基于...文件“05-mybatisplus”可能包含了一个简单的示例项目,展示了如何在Java项目中集成和使用Mybatis-plus进行数据库操作。通过学习这个示例,你可以更好地理解和应用Mybatis-plus的各种特性。
Java JDBC(Java Database Connectivity)是Java平台中用于与各种数据库进行交互的标准API,它使得Java开发者能够编写数据库无关性的代码,实现对不同数据库的操作。在本文中,我们将深入探讨JDBC2.0规范,特别是其...
Java JDBC(Java Database Connectivity)是Java编程语言中用于与各种数据库进行交互的一组接口和类。JDBC提供了一种标准的API,使得开发者无需关心数据库的特定语法,就能通过Java程序进行数据操作。这个压缩包文件...
这份面试题涵盖了数据库系统的基本架构、用户分类、设计流程、数据完整性、SQL操作等方面,旨在帮助求职者提升对数据库的理解。 1. **数据库系统的三层体系结构**:通常包括用户层、应用程序接口层和数据库管理层。...
《基于Java Swing的车辆管理系统GUI详解》 在IT领域,开发直观、易用的图形用户界面(GUI)是提升用户体验的关键。本篇文章将深入探讨一个使用...通过深入研究这个系统,可以提升对Java GUI编程和数据库管理的理解。
用于完成词典的销售操作,并且在销售时可以批量添加多条销售信息,也就是针对一个用户可以在一个界面中销售多种词典,并且每添加一种编程词典信息,系统会自动计算相关数据,销售成功后会将销售信息分别保存在销售主...
描述中的“基于java的weblogic+j2ee构建音乐网站(原代码+数据库).zip”表明这是一个使用Java编程语言,借助WebLogic服务器,并利用J2EE框架来开发的音乐类网站项目。同时,该资源包含了项目的原始代码和数据库,这...
通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥,通常应对私钥加密后再保存、如何从...
通过研究和理解这个JAVA图书馆管理系统原代码,开发者不仅可以学习到JAVA编程基础,还能深入理解软件工程中的系统设计、数据库操作、异常处理等多个方面的知识,这对于提升JAVA开发技能大有裨益。
8. **JavaSE和JavaEE的区别**:书中也会讲解Java标准版(Java SE)和企业版(Java EE)之间的区别,以及Java EE提供的企业级服务,如JDBC数据库连接、Servlet、JSP、EJB等。 9. **JVM和内存管理**:介绍Java虚拟机...
此外,DBF文件在Windows 7及更新的操作系统中的原生支持已逐渐消失,而较老版本的Excel软件曾经支持打开和保存DBF文件,但在后续版本中这一支持也已被移除。 Java语言通过JDBC(Java Database Connectivity)技术...
3. SQL接口:通过封装SQL接口,开发者可以在Java代码中编写SQL查询,简化了数据库操作。 4. 订阅机制:API支持订阅实时数据(Realtime)、报警数据(Alarm)和静态信息(Point)表,增强了实时数据监控和处理的能力...
4. **数据库操作**:在Mybatis中,创建一个对应的Mapper接口和XML文件,编写插入图片信息(如文件名、路径、上传时间等)的SQL语句。使用Mybatis的`<insert>`标签,将文件信息保存到数据库中。 5. **回显图片**:在...
8. **Java 8新特性**:介绍Lambda表达式、Stream API和日期时间API等Java 8的新特性。 9. **Java性能优化**:提供代码优化技巧,包括算法优化、内存管理和并发性能分析。 通过阅读这两卷书,读者将全面掌握Java...
本章节将深入讲解JDBC的基础知识,帮助初学者掌握如何在Java中连接和操作数据库。 ### 1. JDBC概述 JDBC是Java与数据库交互的标准接口,它提供了以下功能: - **连接数据库**:JDBC提供DriverManager类来连接到不同...
Java数组倒置 简单 Java图片加水印,支持旋转和透明度设置 摘要:Java源码,文件操作,图片水印 util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印...
通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥,通常应对私钥加密后再保存、如何从...