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连接数据库操作的更多相关文章

  1. 学习笔记-JDBC连接数据库操作的步骤

    前言 这里我就以JDBC连接数据库操作查询的步骤作以演示,有不到之处敬请批评指正! 一.jdbc连接简要步骤 1.加载驱动器. 2.创建connection对象. 3.创建Statement对象. 4 ...

  2. java中JDBC连接数据库操作的基本步骤

    JDBC基本步骤 创建一个以JDBC连接数据库的程序,包含7个步骤: 1.加载JDBC驱动程序: 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机), 这通过java.lan ...

  3. 基础的jdbc连接数据库操作

    首先我们知道在数据库中,我们可以直接写sql或者直接通过数据库工具操作数据,但是在java程序中我们是不能直接操作数据库数据的,所以这就引入了jdbc操作. 百度百科:JDBC(Java Data B ...

  4. jdbc连接数据库工具包模板

    jdbc连接数据库操作 jdbc连接数据库模板,收藏可做模板使用(小型工程,一般大工程都会用框架,c3p0等连接,不考虑此种方法!). 配置文件的使用(使用配置文件可以使我们后期的修改更加方便,当然, ...

  5. Java操作数据库——使用JDBC连接数据库

    Java操作数据库——使用JDBC连接数据库 摘要:本文主要学习了如何使用JDBC连接数据库. 背景 数据持久化 数据持久化就是把数据保存到可掉电式存储设备中以供之后使用.大多数情况下,特别是企业级应 ...

  6. 【Mybatis源码解析】- JDBC连接数据库的原理和操作

    JDBC连接数据库的原理和操作 JDBC即Java DataBase Connectivity,java数据库连接:JDBC 提供的API可以让JAVA通过API方式访问关系型数据库,执行SQL语句, ...

  7. JDBC连接数据库

    JDBC连接数据库 1.加载JDBC驱动程序. Class.forName("com.mysql.jdbc.Driver"); 建立连接,. Connection conn = D ...

  8. java开发中JDBC连接数据库代码和步骤

    JDBC连接数据库 •创建一个以JDBC连接数据库的程序,包含7个步骤: 1.加载JDBC驱动程序: 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机), 这通过java.l ...

  9. jdbc连接数据库的步骤 (转)

    1.加载JDBC驱动程序: 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机), 这通过java.lang.Class类的静态方法forName(String  classN ...

随机推荐

  1. 在python中使用matplotlib中的Matplotlib-Animation “No MovieWriters Available”

    在使用官方的示例代码中,一部分使用了ffmpeg 在执行时会报如题一样的错误 解决: 下载windows的版本,解压,然后将bin目录加入系统环境变量的路径中 如:D:\Program Files\f ...

  2. 远程实时调试手机上的Web页面

    1. 安装    需要Node.js平台, 先安装好后, 打开Node.js command prompt, 通过NPM来安装 weinre npm -g install weinre 2. 启动   ...

  3. iOS开发UI篇—无限轮播(功能完善)

    iOS开发UI篇—无限轮播(功能完善) 一.自动滚动 添加并设置一个定时器,每个2.0秒,就跳转到下一条. 获取当前正在展示的位置. [self addNSTimer]; } -(void)addNS ...

  4. 关于DButils的简单介绍

    android中的orm框架,一行代码就可以进行增删改查:支持事务,默认关闭:可通过注解自定义表名,列名,外键,唯一性约束,NOT NULL约束,CHECK约束等(需要混淆的时候请注解表名和列名)等等 ...

  5. Redis应用场景(转)

    (来源:http://www.cnblogs.com/shanyou/archive/2012/09/04/2670972.html) Redis常用数据类型 Redis最为常用的数据类型主要有以下五 ...

  6. MATLAB 物体识别算法说明:vision.ForegroundDetector, vision.BlobAnalysis

    在官方示例中,Motion-Based Multiple Object Tracking和Using Kalman Filter for Object Tracking都使用了下面两个算法进行物体的识 ...

  7. Android Studio 1.5错误

    Error:Unable to start the daemon process: could not reserve enough space for object heap. Please ass ...

  8. Jmeter—6 CSV Data Set Config 通过文件导入数据

    线程组循环次数大于1的时候,请求里每次提交的数据都相同.有的系统限制了不能提交相同数据,我们通过 CSV Data Set Config 加载csv文件数据. 1 创建一个文本文件,输入参数值保存为. ...

  9. iOS应用数据存储2-SQLite3数据库

          SQLite3 SQLite3是一款开源的嵌入式关系型数据库,可移植性好,易使用,内存开销小. SQLite3是无类型的,意味着你可以保存任何类型的数据到任意表的任意字段中. SQLite ...

  10. 数据库连接JDBC和数据库连接池C3P0自定义的java封装类

    数据库连接JDBC和数据库连接池C3P0自定义的java封装类 使用以下的包装类都需要自己有JDBC的驱动jar包: 如 mysql-connector-java-5.1.26-bin.jar(5.1 ...