- 浏览: 210289 次
- 性别:
- 来自: 苏州
文章分类
- 全部博客 (163)
- java综合 (24)
- javaweb (6)
- javascript (14)
- web前端 (3)
- Struts1 (0)
- Struts2 (2)
- hibenate (4)
- spring (12)
- 软件工程 (2)
- 网站建设 (2)
- 数据库 (9)
- FusionCharts (5)
- EXTJS (4)
- Spring MVC (2)
- html (1)
- Linux (19)
- 其他 (2)
- SSI (2)
- velocity (3)
- 设计模式 (1)
- 发布方面 (2)
- 算法 (2)
- 生活感悟 (8)
- flex (6)
- 搜索方面 (7)
- 架构 (1)
- IOS开发 (5)
- xml (1)
最新评论
-
ddccjjwwjj:
谢谢你总算找到一个正确的答案!!!
ExtJs 中 combo 获得displayField 和 valueField -
yulanlian:
uld not open ServletContext res ...
web.xml中配置Spring -
jinnianshilongnian:
id能进行SAX解析ID验证,name不行。name在使用如s ...
Spring配置中<bean>的id和name属性区别 -
白色蜻蜓:
不错顶下
s2sh框架搭建需要的jar包
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开始
子协议:是桥连接的驱动程序或是数据库管理系统名称。
数据源标识:标记找到数据库来源的地址与连接端口。
例如:(MySql的连接URL)
jdbc:mysql:
//localhost:3306/test?useUnicode=true&characterEncoding=gbk ;
useUnicode=true:表示使用Unicode字符集。如果characterEncoding设置为
gb2312或GBK,本参数必须设置为true 。characterEncoding=gbk:字符编码方式。
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() ;
}
}
•创建一个以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开始
子协议:是桥连接的驱动程序或是数据库管理系统名称。
数据源标识:标记找到数据库来源的地址与连接端口。
例如:(MySql的连接URL)
jdbc:mysql:
//localhost:3306/test?useUnicode=true&characterEncoding=gbk ;
useUnicode=true:表示使用Unicode字符集。如果characterEncoding设置为
gb2312或GBK,本参数必须设置为true 。characterEncoding=gbk:字符编码方式。
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 RandomAccessFile用法
2012-08-11 19:00 1424http://blog.csdn.net/akon_vm/ar ... -
Java 线程池的原理与实现
2012-06-08 14:58 752http://hi.baidu.com/obullxl/blo ... -
Java 线程池学习
2012-06-08 14:57 743http://www.cnblogs.com/jersey/a ... -
关联--依赖、组合--聚合 联系与区别
2012-06-06 11:51 992http://wenku.baidu.com/view/978 ... -
Java程序员面试中的多线程问题
2012-06-05 09:51 908http://sd.csdn.net/a/20120528/2 ... -
Java+多线程同步问题的探究
2012-05-16 21:05 8151、http://tech.ddvip.com/2010-05 ... -
java动态代理(JDK和cglib)
2012-05-06 18:00 772http://www.cnblogs.com/jqyp/arc ... -
Java语法总结 - 内部类
2012-05-03 23:08 747从Java1.1开始引入了内部类以来,它就引起了人们的激烈争论 ... -
深入分析 Java 中的中文编码问题
2012-03-15 09:02 486http://tech.ddvip.com/2012-03/1 ... -
Java框架数据库连接池比较(c3p0,dbcp和proxool)
2012-03-13 15:28 9320现在常用的开源数据连接池主要有c3p0,dbcp和proxoo ... -
类实例化加载的顺序
2011-12-20 14:38 641大家在去参加面试的时候,经常会遇到这样的考题:给你两个类的代码 ... -
java深入探索之1:类加载和实例化过程探析
2011-12-20 14:36 715http://www.cnblogs.com/xiaobai4 ... -
JDBC中Statement接口提供的execute、executeQuery和executeUpdate之间的区别
2011-12-18 18:34 1026Statement 接口提供了三种 ... -
Java ThreadLocal介绍
2011-10-27 11:27 665概述 我们知道Spring通 ... -
怎样取得当前日期(包括时间)并把它存到数据库中?
2011-06-29 21:18 1199java.util.Date date = new ... -
JAVA中file路径问题
2011-06-22 11:40 1096前言 Java的路径问 ... -
使用 dom4j 解析 XML
2011-06-22 11:03 643http://www.ibm.com/developerwor ... -
Dom4j下载及使用Dom4j读写XML简介
2011-06-22 11:03 671http://www.blogjava.net/jungles ... -
JAVA文件拷贝
2011-06-20 09:37 801/** 02 * 将inputFile复制 ... -
Java中对Map(HashMap,TreeMap,Hashtable等)的排序
2011-05-25 14:52 947首先简单说一下他们之间的区别: HashMap: 最常用的 ...
相关推荐
在Java开发中,MySQL数据库是常用的后端存储系统,而JDBC(Java Database Connectivity)是Java语言连接数据库的标准接口。本教程将详细讲解如何在Java程序中使用JDBC与MySQL数据库进行交互,主要包括以下几个关键...
### JDBC连接数据库步骤详解 #### 一、简介 在Java开发中,经常需要与数据库进行交互,例如查询数据、更新数据等操作。为了方便开发者进行这些操作,Sun公司推出了一套标准的Java访问数据库的API——Java Database...
### Java JDBC连接数据库代码大全详解 #### 一、JDBC基础概述 JDBC(Java Database Connectivity)是一种标准的Java API,允许Java程序连接并操作各种类型的数据库。它为开发人员提供了一种统一的方式,以便使用...
jdbc java 数据库 连接数据库 步骤
Java中JDBC连接数据库详解是指Java程序使用JDBC(Java Database Connectivity)来连接和操作数据库的过程。JDBC是一种Java API,用于连接和操作数据库,它提供了一套标准化的接口,允许Java程序连接各种类型的数据库...
JDBC(Java Database Connectivity)是Java编程语言中用于与各种数据库进行交互的一种API。它提供了一种标准的方式来访问和操作数据库,使得开发人员无需关心具体的数据库实现细节,就能执行SQL语句并处理结果。JDBC...
JDBC(Java Database Connectivity)是Java语言中用于连接和操作数据库的应用程序接口。它定义了Java应用程序如何与数据库之间通信,允许用户执行SQL语句并获取结果。对于初学者来说,理解JDBC连接数据库的基本步骤...
Java使用JDBC(Java Database Connectivity)来连接Oracle数据库是一个常见的任务,它允许Java应用程序与各种数据库进行交互。在本场景中,`ojdbc6.jar`是Oracle提供的JDBC驱动程序,用于建立Java应用程序与Oracle...
在Java编程中,Java数据库连接(JDBC)是与各种数据库进行交互的标准API。它允许开发者使用Java语言编写数据库应用程序,而无需关心底层数据库的具体实现。JDBC通过一系列的类和接口来提供这种通用性,使得数据库...
在Java编程中,JDBC(Java ...通过理解这些基本概念和步骤,你将能够成功地在Java工程中使用JDBC连接到SQL Server数据库。在实践中,不断探索和学习更高级的JDBC特性和最佳实践,将有助于提升你的数据库操作技能。
在这个“java实例-jdbc连接数据库模拟oracle”中,我们很可能会看到一个名为`test.java`的源代码文件,它包含了上述步骤的实现。这个简单的程序可能用于演示如何在Java中进行数据库的连接和查询,例如,模拟不同的...
JDBC(Java Database Connectivity)是 Java 语言中用于连接数据库的标准 API。它提供了一种统一的方式来访问各种类型的数据库,包括关系数据库、对象数据库和文本数据库等。下面是 JDBC 连接数据库的详细方法文档。...
以下是对给定文件中提到的JDBC数据库连接模板代码的知识点详细解析。 ### JDBC概念 JDBC是一种用于执行SQL语句的Java API,它由一组用Java语言编写的类和接口组成。通过JDBC,开发者可以将SQL语句发送到几乎任何...
JDBC使得Java开发者能够编写可移植的代码来访问和处理数据库中的数据。本篇文章将深入探讨如何使用JDBC连接数据库,以及相关的重要概念。 首先,要连接到数据库,我们需要以下关键组件: 1. **驱动程序**:这是...
了解并熟练掌握JDBC连接数据库的步骤是每个Java开发人员的基础技能之一。以下是一个详尽的步骤指南: 1. **引入JDBC驱动库** 首先,你需要在项目中包含对应数据库的JDBC驱动库。例如,如果使用的是MySQL,需要引入...
本篇文章将详细讲解JDBC连接数据库的步骤,并结合标签"源码"和"工具"来深入理解JDBC的实现原理和实际应用。 1. 加载数据库驱动 在进行数据库连接之前,需要加载对应的数据库驱动。这通常通过`Class.forName()`方法...