jdbc 4.0
1.存储MySQL数据库的date、time、timestamp、datetime以及year类型数据
package com.rong.jielong; import java.sql.Connection;
import java.sql.Date;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.Time;
import java.sql.Timestamp;
import java.util.Calendar;
import java.util.Properties; public class Test7 { /**
* @author 容杰龙
*/
public static void main(String[] args) {
try {
Class.forName("com.mysql.jdbc.Driver");
String url="jdbc:mysql://localhost:3306/rjl";
Properties info=new Properties();
info.setProperty("user", "rjl");
info.setProperty("password", "123");
Connection conn = DriverManager.getConnection(url, info);
String sql="insert into time values(?,?,?,?,?)";
//java.util.Date包含的信息有 年-月-日 时:分:秒
PreparedStatement ps = conn.prepareStatement(sql);
//数据库的date类型 2017-11-04 =======java.sql包的Date
ps.setDate(1, new Date(new java.util.Date().getTime())); //数据库的time类型 21:22:19=======java.sql包的Time
ps.setTime(2, new Time(new java.util.Date().getTime())); //数据库的timestamp类型 2017-11-04 21:22:19======java.sql包的Timestamp
ps.setTimestamp(3, new Timestamp(new java.util.Date().getTime())); //数据库的datatime类型 2017-11-04 21:22:19======java.sql包的Timestamp
ps.setTimestamp(4, new Timestamp(new java.util.Date().getTime())); //数据库的year类型 2017========java的无符号整数
ps.setInt(5, Calendar.getInstance().get(Calendar.YEAR)); int count = ps.executeUpdate();
if (count>0) {
System.out.println("添加成功!");
}else{
System.out.println("添加失败!");
} ps.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
} }
2.读取数据库各种时间
package com.rong.jielong; import java.sql.Connection;
import java.sql.Date;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Time;
import java.sql.Timestamp; public class Test8 { /**
* @author 容杰龙
*/
public static void main(String[] args) {
try {
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://127.0.0.1:3306/rjl";
String user = "rjl";
String password = "123";
Connection conn = DriverManager.getConnection(url, user, password);
// 取第一条数据
String sql = "select * from time limit 0,1";
PreparedStatement ps = conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
while (rs.next()) {
// 从查询的结果集中获取时间对象
Date date = rs.getDate("date");
Time time = rs.getTime("time");
Timestamp timestamp = rs.getTimestamp("timestamp");
Timestamp datetime = rs.getTimestamp("datetime"); int year = rs.getInt("year"); System.out.println(date + "###" + time + "###" + timestamp
+ "###" + datetime + "###" + year);
// 输出2017-11-04###21:22:19###2017-11-04 21:22:19.0###2017-11-04
// 21:22:19.0###2017
}
} catch (Exception e) {
e.printStackTrace();
} } }
jdbc 4.0的更多相关文章
- jdbc 4.0新特性
来自网络 在 Java SE 6 所提供的诸多新特性和改进中,值得一提的是为 Java 程序提供数据库访问机制的 JDBC 版本升级到了 4.0, 这个以 JSR-221 为代号的版本 , 提供了更加 ...
- Java SE 6 新特性: Java DB 和 JDBC 4.0
http://www.ibm.com/developerworks/cn/java/j-lo-jse65/index.html 长久以来,由于大量(甚至几乎所有)的 Java 应用都依赖于数据库,如何 ...
- 请使用支持 JDBC 4.0 的 sqljdbc4.jar 类库
转载请使用支持 JDBC 4.0 的 sqljdbc4.jar 类库 1.下载最新的JDBC(2012/3/6) http://www.microsoft.com/downloads/zh-cn/de ...
- java web项目部署到tomcat 8.5 此驱动程序不支持 Java Runtime Environment (JRE) 1.8 版。请使用支持 JDBC 4.0 的 sqljdbc4.jar 类库
1:项目使用的是jre1.8版本. 2:服务器 apache-tomcat-8.5.23 报错如下: 严重 [com.mchange.v2.async.ThreadPoolAsynchronousRu ...
- JDBC 4.0 开始Java操作数据库不用再使用 Class.forName加载驱动类了
JDBC 4.0 开始Java操作数据库不用再使用 Class.forName加载驱动类了 代码示例 转自 https://docs.oracle.com/javase/tutorial/jdbc/o ...
- Java数据库——JDBC 2.0操作
可滚动的结果集 让结果集滚动起来 //================================================= // File Name : JDBC20_demo //-- ...
- jdbc 6.0
1.获取数据库自动生成的键值 package com.rong.jielong; import java.sql.Connection; import java.sql.DriverManager; ...
- jdbc 5.0
1.事务 事务将单个SQL语句或一组SQL语句视为一个逻辑单元,如果任何语句失败,整个事务将失败. jdbc的MySQL驱动程序中的事务默认是自动提交. 默认情况下,每个SQL语句在完成后都会提交到数 ...
- jdbc 3.0
1.将Blob.Clob类型数据保存到数据库 import java.io.File; import java.io.FileInputStream; import java.io.FileReade ...
随机推荐
- 《nginx源代码解析》系列分享专栏
<nginx源代码解析>系列分享专栏 解析nginx源代码,从main函数开始,一步步解读nginx运行原理,同时进行nginx第三方模块的开发,努力做到知其然,知其所以然 <ngi ...
- python range,xrange区别
range: 直接生成一个列表对象 xrange: 生成一个xrange对象 xrange使用: 操作一个非常大的数据时,而且没存比较吃紧的时,可以使用xrange来节省内存 xrange一般在循环里 ...
- 探秘GO语言《比较C#与GO的性能--XML序列化》
今天对GO和NET的XML字符串序列化成对象列表做了一个性能比较,得出一些结论. GO的代码: package main import ( "encoding/xml" " ...
- 20155213 2016-2017-2 《Java程序设计》第二周学习总结
20155213 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 关于Unicode和UTF 很抱歉,没能读完娄老师推荐的网址,关于Unicode和UTF的介 ...
- 20155336 2016-2017-2《JAVA程序设计》第一周学习总结
# 20155336 2016-2017-2<JAVA程序设计>第1周学习总结 ## 教材学习内容总结 开学的第一周,带着些许的欣喜和好奇,听完了老师的第一堂课.说心里话学习JAVA仿佛 ...
- sql语句-6-更新数据
- Android:反编译apk
一.所需工具 1. apktool (1)作用:获取资源文件,例如图片.布局文件 (2)下载地址:https://bitbucket.org/iBotPeaches/apktool/downloads ...
- Spring学习(五)-----注入bean属性的三种方式( 1: 正常的方式 2: 快捷方式 3: “p” 模式)
在Spring中,有三种方式注入值到 bean 属性. 正常的方式 快捷方式 “p” 模式 看到一个简单的Java类,它包含两个属性 - name 和 type.稍后将使用Spring注入值到这个 b ...
- selenium自动化之元素定位方法
在使用selenium webdriver进行元素定位时,有8种基本元素定位方法(注意:并非只有8种,总共来说,有16种). 分别介绍如下: 1.name定位 (注意:必须确保name属性值在当前ht ...
- Vue学习计划基础笔记(一) - vue实例
最近又重新看vue的文档了,计划是别人写的,之前看过一次,没有考虑太多,只考虑看懂能用就好.看完之后写过写demo,现在是零实际项目经验的,所以这一次打算细看,算是官方文档的二次产物吧,但是不是全部直 ...