import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.Date;
public class testMysql {
public static void main(String[] args){
testMysqlConnection();
}
public static void testMysqlConnection()
{
Connection con = null;// 创建一个数据库连接
PreparedStatement pre = null;// 创建预编译语句对象,一般都是用这个而不用Statement
ResultSet result = null;// 创建一个结果集对象
try
{
Class.forName("com.mysql.jdbc.Driver");// 加载Oracle驱动程序
System.out.println("开始尝试连接数据库!");
String url = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&characterSetResults=utf8";
String user = "root";// 用户名,系统默认的账户名
String password = "123456";// 你安装时选设置的密码
long startTime = System.currentTimeMillis();
con = DriverManager.getConnection(url, user, password);// 获取连接
con.setAutoCommit(false);
// String maxUpdateTimesql = "select max(TOPIC_UPDATE_TIME) as maxTime from t29e0000_02aa003 "+ "where OPERATETYPE = ?";
// PreparedStatement ps = con.prepareStatement(maxUpdateTimesql);
// ps.setString(1, "I");
// result = ps.executeQuery();
//result 初始游标为head,移动next到第一个记录
/* while(result.next()){
//Date maxTime = result.getDate("maxTime");
Date maxTime = result.getDate(1);
System.out.println("============maxTime:"+ maxTime.toLocaleString());
}*/
String iSql = "INSERT INTO user(name,age)VALUES(?,?)";
PreparedStatement ps =con.prepareStatement(iSql);
ps.setString(1, "jack");
ps.setInt(2, 23);
ps.execute();
ps.setString(1, "mark");
ps.setInt(2, 67);
ps.execute();
String uSql = "UPDATE user SET name = ?,age=? WHERE id=?";
ps = con.prepareStatement(uSql);
ps.setString(1, "donald");
ps.setInt(2, 28);
ps.setInt(3, 11);
ps.executeUpdate();
long endTime = System.currentTimeMillis();
System.out.println("============time:"+ (endTime-startTime));
System.out.println("============hashCode:"+ con.hashCode());
if(!con.isClosed()){
System.out.println("============连接成功!");
}
con.commit();
}
catch (Exception e)
{
con.rollback();
System.out.println("=============连接失败:"+e.getMessage());
e.printStackTrace();
}
finally
{
try
{
// 逐一将上面的几个对象关闭,因为不关闭的话会影响性能、并且占用资源
// 注意关闭的顺序,最后使用的最先关闭
if (result != null)
result.close();
if (pre != null)
pre.close();
if (con != null)
con.close();
System.out.println("数据库连接已关闭!");
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
}
分享到:
相关推荐
JDBC 中 PreparedStatement 接口提供的 execute、executeQuery 和 executeUpdate 之间的区别及用法 JDBC 中的 PreparedStatement 接口提供了三种执行 SQL 语句的方法:executeQuery、executeUpdate 和 execute。...
本文将详细介绍`PreparedStatement`的使用方法,主要面向Java服务器页面(JSP)的初学者。 #### 二、准备工作 为了能够使用`PreparedStatement`,首先需要确保已经安装了MySQL数据库,并且在项目中引入了MySQL ...
### PreparedStatement的详细用法及其优势 #### 一、概述 `PreparedStatement`是Java JDBC API中的一个关键类,用于执行预编译的SQL语句。它继承自`Statement`类,并在其基础上提供了更多的功能和优化。在Java应用...
在使用`PreparedStatement`时,需要确保通过`setXXX`方法传递的Java类型能够正确地映射到对应的JDBC类型。例如: ```java pstmt.setShort(2, 44); ``` 在这个例子中,`setShort`方法将Java类型`short`的值`44`设置...
在Java的JDBC编程中,`PreparedStatement`是一个非常重要的接口,它用于预编译SQL语句,提高了数据库操作的效率和安全性。当我们处理大量重复的SQL操作时,使用`PreparedStatement`可以避免SQL注入等问题,同时提升...
- **创建(Create)**:JDBC通过`Statement`对象的`executeUpdate()`方法执行INSERT语句,向数据库插入新的记录。 - **读取(Read)**:使用`Statement`的`executeQuery()`执行SELECT语句获取数据,结果返回`ResultSet...
jdbc2.0版 PreparedStatement接口的用法
本篇将详细介绍MySQL JDBC的使用方法。 首先,我们需要了解JDBC的基本概念。JDBC是一个Java API,它提供了一组接口和类,用于与各种数据库进行通信。通过JDBC,开发者能够实现数据的增删查改(CRUD)操作,并处理...
3. **设置参数**:使用PreparedStatement的`setXXX()`方法(如`setString()`, `setInt()`等)设置每个占位符的值。这些方法的索引从1开始,对应于SQL语句中的问号位置。例如: ```java pstmt.setString(1, "Fluffy...
这篇名为“JDBC公共操作方法代码”的博客文章可能详细介绍了如何使用JDBC进行常见的数据库操作。下面我们将深入探讨JDBC的关键知识点。 首先,JDBC连接数据库的步骤通常包括以下几个部分: 1. 导入JDBC驱动:在...
5. 错误,`PreparedStatement`接口中的`setDate()`方法可以设置日期内容,但参数`Date`的类型必须是`java.sql.Date`,而不是`java.util.Date`。 【选择题】 1. A,JDBC驱动器API是接口,而JDBC驱动器是实现类。 2....
** JDBC使用参考手册详解 ** Java Database Connectivity (JDBC) 是Java编程语言中用于与数据库交互的一组标准API。这个英文版的JDBC使用参考手册是开发者的重要资源,提供了全面的指南来帮助理解和掌握JDBC的各个...
JDBC类与方法 JDBC(Java Database Connectivity)是Java语言中用来连接数据库的API,它提供了一种通用的方式来访问关系数据库。JDBC类图中包括了多种类,每...了解这些类和方法是使用 JDBC 进行数据库编程的基础。
客户端可能会使用JDBC API建立与服务器的连接,创建Statement或PreparedStatement对象,然后执行SQL语句。这些语句可以是SELECT、INSERT、UPDATE或DELETE,用于获取、添加、修改或删除数据库中的数据。 `Server....
Java应用程序使用`Class.forName()`方法加载特定数据库的JDBC驱动,然后通过`DriverManager.getConnection()`创建数据库连接。 2. **数据库连接(Connection)**:连接代表了Java应用程序与数据库之间的会话。一旦...
JDBC 连接数据库方法文档 JDBC(Java Database Connectivity)是 Java 语言中用于连接数据库的标准 API。它提供了一种统一的方式来访问各种类型的数据库,包括关系数据库、对象数据库和文本数据库等。下面是 JDBC ...
高级JDBC使用方法不仅涉及基本的数据库连接、查询和更新操作,还包括了更复杂的事务管理、批处理、结果集处理、性能优化等多个方面。下面我们将详细探讨这些知识点。 1. **数据库连接**: - 静态连接:通过`...
JDBC的使用大大简化了Java程序与数据库之间的交互,提供了标准接口,使得开发者无需关注底层数据库的差异,提高了代码的可移植性。无论是在小型项目还是大型企业级应用中,JDBC都是连接Java应用程序与数据库的重要...
对于Java 7环境,sqljdbc41.jar更适合,而对于Java 8或更高版本,你应该使用sqljdbc42.jar。 连接SQL Server与Java的主要步骤包括: 1. **导入驱动**: 在Java代码中,你需要通过`Class.forName()`方法加载JDBC驱动...
**JDBC连接Oracle数据库的方法** Java Database Connectivity (JDBC) 是Java编程语言中用于与各种类型数据库交互的一组标准API。在本篇文章中,我们将详细探讨如何使用JDBC连接Oracle数据库,遵循四步基础流程。 #...