- JDBC连接数据库
- •创建一个以JDBC连接数据库的程序,包含7个步骤:
- 1、加载JDBC驱动程序:
- 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机),
- 这通过java.lang.Class类的静态方法forName(String className)实现。
- 例如:
- try{
- //加载MySql的驱动类
- Class.forName("com.mysql.jdbc.Driver") ;
- }catch(ClassNotFoundException e){
- System.out.println("找不到驱动程序类 ,加载驱动失败!");
- e.printStackTrace() ;
- }
- 成功加载后,会将Driver类的实例注册到DriverManager类中。
- 2、提供JDBC连接的URL
- •连接URL定义了连接数据库时的协议、子协议、数据源标识。
- •书写形式:协议:子协议:数据源标识
- 协议:在JDBC中总是以jdbc开始
- 子协议:是桥连接的驱动程序或是数据库管理系统名称。
- 数据源标识:标记找到数据库来源的地址与连接端口。
-
标准语法:
<protocol(主要通讯协议)>:<subprotocol(次要通讯协议,即驱动程序名称)>:<data source identifier(数据源)>
MySQL的JDBC URL格式:
jdbc:mysql//[hostname][:port]/[dbname][?param1=value1][¶m2=value2]….
- 例如:(MySql的连接URL)
- jdbc:mysql:
- //localhost:3306/test?useUnicode=true&characterEncoding=gbk ;
- useUnicode=true:表示使用Unicode字符集。如果characterEncoding设置为
- gb2312或GBK,本参数必须设置为true 。characterEncoding=gbk:字符编码方式。
-
常见参数:
user 用户名
password 密码
autoReconnect 联机失败,是否重新联机(true/false)
maxReconnect 尝试重新联机次数
initialTimeout 尝试重新联机间隔
maxRows 传回最大行数
useUnicode 是否使用Unicode字体编码(true/false)
characterEncoding 何种编码(GB2312/UTF-8/…)
relaxAutocommit 是否自动提交(true/false)
capitalizeTypeNames 数据定义的名称以大写表示
- 3、创建数据库的连接
- •要连接数据库,需要向java.sql.DriverManager请求并获得Connection对象,
- 该对象就代表一个数据库的连接。
- •使用DriverManager的getConnectin(String url , String username ,
- String password )方法传入指定的欲连接的数据库的路径、数据库的用户名和
- 密码来获得。
- 例如:
- //连接MySql数据库,用户名和密码都是root
- String url = "jdbc:mysql://localhost:3306/test" ;
- String username = "root" ;
- String password = "root" ;
- try{
- Connection con =
- DriverManager.getConnection(url , username , password ) ;
- }catch(SQLException se){
- System.out.println("数据库连接失败!");
- se.printStackTrace() ;
- }
- 4、创建一个Statement
- •要执行SQL语句,必须获得java.sql.Statement实例,Statement实例分为以下3
- 种类型:
- 1、执行静态SQL语句。通常通过Statement实例实现。
- 2、执行动态SQL语句。通常通过PreparedStatement实例实现。
- 3、执行数据库存储过程。通常通过CallableStatement实例实现。
- 具体的实现方式:
- Statement stmt = con.createStatement() ;
- PreparedStatement pstmt = con.prepareStatement(sql) ;
- CallableStatement cstmt =
- con.prepareCall("{CALL demoSp(? , ?)}") ;
- 5、执行SQL语句
- Statement接口提供了三种执行SQL语句的方法:executeQuery 、executeUpdate
- 和execute
- 1、ResultSet executeQuery(String sqlString):执行查询数据库的SQL语句
- ,返回一个结果集(ResultSet)对象。
- 2、int executeUpdate(String sqlString):用于执行INSERT、UPDATE或
- DELETE语句以及SQL DDL语句,如:CREATE TABLE和DROP TABLE等
- 3、execute(sqlString):用于执行返回多个结果集、多个更新计数或二者组合的
- 语句。
- 具体实现的代码:
- ResultSet rs = stmt.executeQuery("SELECT * FROM ...") ;
- int rows = stmt.executeUpdate("INSERT INTO ...") ;
- boolean flag = stmt.execute(String sql) ;
- 6、处理结果
- 两种情况:
- 1、执行更新返回的是本次操作影响到的记录数。
- 2、执行查询返回的结果是一个ResultSet对象。
- • ResultSet包含符合SQL语句中条件的所有行,并且它通过一套get方法提供了对这些
- 行中数据的访问。
- • 使用结果集(ResultSet)对象的访问方法获取数据:
- while(rs.next()){
- String name = rs.getString("name") ;
- String pass = rs.getString(1) ; // 此方法比较高效
- }
- (列是从左到右编号的,并且从列1开始)
- 7、关闭JDBC对象
- 操作完成以后要把所有使用的JDBC对象全都关闭,以释放JDBC资源,关闭顺序和声
- 明顺序相反:
- 1、关闭记录集
- 2、关闭声明
- 3、关闭连接对象
- if(rs != null){ // 关闭记录集
- try{
- rs.close() ;
- }catch(SQLException e){
- e.printStackTrace() ;
- }
- }
- if(stmt != null){ // 关闭声明
- try{
- stmt.close() ;
- }catch(SQLException e){
- e.printStackTrace() ;
- }
- }
- if(conn != null){ // 关闭连接对象
- try{
- conn.close() ;
- }catch(SQLException e){
- e.printStackTrace() ;
- }
- }
相关推荐
### 完整Java开发中JDBC连接数据库代码和步骤 #### 一、概述 在Java开发过程中,通过Java Database Connectivity (JDBC) 连接数据库是非常常见的一种操作方式。JDBC提供了一组标准的API,使得Java应用程序可以访问...
在Java开发中,MySQL数据库是常用的后端存储系统,而JDBC(Java Database Connectivity)是Java语言连接数据库的标准接口。本教程将详细讲解如何在Java程序中使用JDBC与MySQL数据库进行交互,主要包括以下几个关键...
在Java编程中,JDBC(Java Database Connectivity)是连接数据库的标准接口,允许Java应用程序与各种数据库进行交互。本教程将详细介绍如何使用JDBC连接MySQL数据库,实现数据的增、删、改、查操作,这对于初学者来...
### Java连接MySQL数据库(JDBC驱动) #### 软件下载 - **MySQL**: 版本 4.1.11 下载地址: [http://dev.mysql.com/downloads/mysql/4.1.html](http://dev.mysql.com/downloads/mysql/4.1.html) - **JDBC驱动**: ...
通过以上步骤,我们可以编写出完整的JDBC连接MySQL数据库的代码。在这个案例中,`DBConnection`可能是封装了这些操作的类,提供了方便的方法来连接数据库、执行SQL和处理结果。在实际项目中,这样的封装能提高代码的...
### JDBC连接数据库步骤详解 #### 一、简介 在Java开发中,经常需要与数据库进行交互,例如查询数据、更新数据等操作。为了方便开发者进行这些操作,Sun公司推出了一套标准的Java访问数据库的API——Java Database...
### JDBC连接MySQL数据库关键的四个步骤 在现代软件开发中,Java作为一种广泛使用的编程语言,其与数据库的交互是必不可少的一部分。JDBC(Java Database Connectivity)作为Java平台上的标准数据库访问接口,允许...
将此JAR文件添加到项目的类路径(Classpath)中,是确保Java程序可以使用JDBC API连接MySQL数据库的关键步骤。 2. **文档**:虽然压缩包中没有明确列出,但官方驱动包通常会包含一份API文档,帮助开发者了解如何...
总结,这个压缩包提供的代码示例可能涵盖了上述步骤,演示了如何在Java中使用JDBC连接MySQL数据库,执行SQL查询,并处理结果。通过学习和实践这些代码,开发者可以更好地理解和应用Java数据库编程。
在Java编程中,连接MySQL数据库是常见的操作,用于实现数据的存储和检索。以下是一步一步的详细指南: 首先,确保你已经安装了JDK,通常推荐版本为JDK1.5或更高。JDK提供了运行Java程序所需的环境。接下来,你需要...
### 在Eclipse中使用JDBC连接MySQL数据库的关键步骤与注意事项 #### 一、准备工作与环境配置 1. **下载MySQL数据库:** - 版本选择:MySQL 6.0。 - 下载地址:[http://dev.mysql.com/downloads/mysql/6.0.html]...
在IT行业中,Java Database ...总的来说,JDBC连接MySQL是Java开发中的基础技能,通过学习和实践,可以更好地掌握数据库操作,提高开发效率。记得始终关注安全,避免SQL注入等风险,确保数据的完整性和安全性。
### Java JDBC连接数据库代码大全详解 #### 一、JDBC基础概述 JDBC(Java Database Connectivity)是一种标准的Java API,允许Java程序连接并操作各种类型的数据库。它为开发人员提供了一种统一的方式,以便使用...
### 水晶报表CrystalReport2008使用JDBC连接MySQL数据库-详细步骤 #### 一、前期准备工作 为了确保Crystal Report 2008能够顺利地通过JDBC连接到MySQL数据库,需要进行一系列的准备工作。以下是具体的步骤: 1. *...
JDBC(Java Database Connectivity)是Java语言中用于连接数据库的标准API,而MySQL则是一种广泛使用的开源关系型数据库管理系统。本教程将深入探讨如何使用PB通过JDBC来连接MySQL数据库。 首先,我们需要确保已经...
通过以上步骤,我们可以利用Java的JDBC与MySQL数据库进行有效的交互,实现数据的增、删、改、查功能。在实际开发中,还可以考虑使用连接池(如HikariCP、Apache DBCP等)来管理和复用数据库连接,提高性能和资源利用...
Java JDBC (Java Database Connectivity) 是...通过以上介绍,我们了解了如何使用Java JDBC连接到MySQL数据库,并进行了基本的数据库操作。实际开发中,还需要根据具体需求调整代码,例如进行事务处理、错误处理等。
•创建一个以JDBC连接数据库的程序,包含7个步骤: 1、加载JDBC驱动程序: 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机), 这通过java.lang.Class类的静态方法forName(String ...