`
Donald_Draper
  • 浏览: 984710 次
社区版块
存档分类
最新评论

JDBC PreparedStatement 的用法

    博客分类:
  • JDBC
阅读更多
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();
	        }
	    }
	}
}
0
2
分享到:
评论

相关推荐

    JDBC中PreparedStatement接口提供的execute、executeQuery和executeUpdate之间的区别及用法

    JDBC 中 PreparedStatement 接口提供的 execute、executeQuery 和 executeUpdate 之间的区别及用法 JDBC 中的 PreparedStatement 接口提供了三种执行 SQL 语句的方法:executeQuery、executeUpdate 和 execute。...

    PreparedStatement 详细用法

    本文将详细介绍`PreparedStatement`的使用方法,主要面向Java服务器页面(JSP)的初学者。 #### 二、准备工作 为了能够使用`PreparedStatement`,首先需要确保已经安装了MySQL数据库,并且在项目中引入了MySQL ...

    PreparedStatement详细用法

    ### PreparedStatement的详细用法及其优势 #### 一、概述 `PreparedStatement`是Java JDBC API中的一个关键类,用于执行预编译的SQL语句。它继承自`Statement`类,并在其基础上提供了更多的功能和优化。在Java应用...

    JDBC基础教程之PreparedStatement.doc

    在使用`PreparedStatement`时,需要确保通过`setXXX`方法传递的Java类型能够正确地映射到对应的JDBC类型。例如: ```java pstmt.setShort(2, 44); ``` 在这个例子中,`setShort`方法将Java类型`short`的值`44`设置...

    如何获得PreparedStatement最终执行的sql语句

    在Java的JDBC编程中,`PreparedStatement`是一个非常重要的接口,它用于预编译SQL语句,提高了数据库操作的效率和安全性。当我们处理大量重复的SQL操作时,使用`PreparedStatement`可以避免SQL注入等问题,同时提升...

    jdbc 增删改查事物处理, 批处理,以及预编译示例代码

    - **创建(Create)**:JDBC通过`Statement`对象的`executeUpdate()`方法执行INSERT语句,向数据库插入新的记录。 - **读取(Read)**:使用`Statement`的`executeQuery()`执行SELECT语句获取数据,结果返回`ResultSet...

    PreparedStatement

    jdbc2.0版 PreparedStatement接口的用法

    mysql jdbc的用法

    本篇将详细介绍MySQL JDBC的使用方法。 首先,我们需要了解JDBC的基本概念。JDBC是一个Java API,它提供了一组接口和类,用于与各种数据库进行通信。通过JDBC,开发者能够实现数据的增删查改(CRUD)操作,并处理...

    练习3:使用PreparedStatement插入宠物信息.zip

    3. **设置参数**:使用PreparedStatement的`setXXX()`方法(如`setString()`, `setInt()`等)设置每个占位符的值。这些方法的索引从1开始,对应于SQL语句中的问号位置。例如: ```java pstmt.setString(1, "Fluffy...

    JDBC公共操作方法代码

    这篇名为“JDBC公共操作方法代码”的博客文章可能详细介绍了如何使用JDBC进行常见的数据库操作。下面我们将深入探讨JDBC的关键知识点。 首先,JDBC连接数据库的步骤通常包括以下几个部分: 1. 导入JDBC驱动:在...

    第10章 JDBC-课后习题1

    5. 错误,`PreparedStatement`接口中的`setDate()`方法可以设置日期内容,但参数`Date`的类型必须是`java.sql.Date`,而不是`java.util.Date`。 【选择题】 1. A,JDBC驱动器API是接口,而JDBC驱动器是实现类。 2....

    jdbc使用参考手册

    ** JDBC使用参考手册详解 ** Java Database Connectivity (JDBC) 是Java编程语言中用于与数据库交互的一组标准API。这个英文版的JDBC使用参考手册是开发者的重要资源,提供了全面的指南来帮助理解和掌握JDBC的各个...

    jdbc.zip_java jdbc_java+jdbc_jdbc_jdbc Java_zip

    客户端可能会使用JDBC API建立与服务器的连接,创建Statement或PreparedStatement对象,然后执行SQL语句。这些语句可以是SELECT、INSERT、UPDATE或DELETE,用于获取、添加、修改或删除数据库中的数据。 `Server....

    jdbc jdbc jdbc

    Java应用程序使用`Class.forName()`方法加载特定数据库的JDBC驱动,然后通过`DriverManager.getConnection()`创建数据库连接。 2. **数据库连接(Connection)**:连接代表了Java应用程序与数据库之间的会话。一旦...

    JDBC连接数据库方法文档

    JDBC 连接数据库方法文档 JDBC(Java Database Connectivity)是 Java 语言中用于连接数据库的标准 API。它提供了一种统一的方式来访问各种类型的数据库,包括关系数据库、对象数据库和文本数据库等。下面是 JDBC ...

    高级JDBC的使用方法

    高级JDBC使用方法不仅涉及基本的数据库连接、查询和更新操作,还包括了更复杂的事务管理、批处理、结果集处理、性能优化等多个方面。下面我们将详细探讨这些知识点。 1. **数据库连接**: - 静态连接:通过`...

    JDBC6和JDBC14

    JDBC的使用大大简化了Java程序与数据库之间的交互,提供了标准接口,使得开发者无需关注底层数据库的差异,提高了代码的可移植性。无论是在小型项目还是大型企业级应用中,JDBC都是连接Java应用程序与数据库的重要...

    sqljdbc4.jar, sqljdbc41.jar, sqljdbc42.jar三个包

    对于Java 7环境,sqljdbc41.jar更适合,而对于Java 8或更高版本,你应该使用sqljdbc42.jar。 连接SQL Server与Java的主要步骤包括: 1. **导入驱动**: 在Java代码中,你需要通过`Class.forName()`方法加载JDBC驱动...

    JDBC連接方法-ORCAL鏈接JDBC

    **JDBC连接Oracle数据库的方法** Java Database Connectivity (JDBC) 是Java编程语言中用于与各种类型数据库交互的一组标准API。在本篇文章中,我们将详细探讨如何使用JDBC连接Oracle数据库,遵循四步基础流程。 #...

Global site tag (gtag.js) - Google Analytics