1.将数据库的JDBC驱动加载到classpath中,在基于JavaEE的web应用实际开发过程中通常要把目标数据库产品的JDBC驱动复制到WEB—INF/lib下。

2.加载JDBC驱动并将其注册到DriverManager中。

Oracle数据库

Class.forName("oracle.jdbc.driver.oracleDriver");

SQL数据库

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

3.建立数据库连接,取得Connection对象。

SQL   数据库

String url="jdbc:sqlserve://localhost:1433;databaseName=LiZanQi";
   String user="sa";
   String password="sa";  
   Connection conn=DriverManager.getConnection(url,user,password);

4.建立Statement对象 或PerparedStatement对象

Statement statement=conn.createStatement();

PreparedStatement pstatement=conn.prepareStatement(所要执行的sql语句);

pstatement.setString(第一个占位符, 占位符的内容);
pstatement.setString(第二个占位符, 占位符的内容);

利用PreparedStatement可以避免数据库的注入攻击!

5.执行SQL语句

String Sql="select * from 表名";

ResultSet rs=statement.executeQuery(Sql);或者ResultSet rs=pstatement.executeQuery();

执行查询语句是用executeQuery();

但是在执行“插入”,“更新”“删除”语句时就需要用executeUpdate();方法了

6.访问结果记录集ResultSet对象

一般用while循环

while(rs.next()){

依次读取结果。

}

7.依次将ResultSet对象,Statement对象或PerparedStatement对象Connection对象关闭释放所占用的资源

rs.close();

statement.close();或者pstatement.close();

conn.close();

8.总结

PreparedStatement:

1.提高了安全性可以防止注入攻击

2.提高了数据库语句的执行性能。

3.提高了代码的可读性和可维护性。

其中PreparedStatement接口继承自Statement接口

JDBC   API做了哪三件事:

1.与数据库建立连接。

2.执行数据库的语句。

3.处理结果。

DriverManager类:依据数据库的不同,管理JDBC驱动。

Connection接口:负责连接数据库并担任传送数据的任务。

statement接口:由Connection对象创建,负责执行数据库语句。

ResultSet 接口:负责保存Statement对象执行后所产生的查询结果。

除了executeQuery方法和executeUpdate方法之外还有execute方法可以执行可以执行所有的语句,当获得true时表示返回了一个ResultSet结果集。

方法:

next() :将光标从当前位置向下移动一行。

previous():游标从当前位置向上移动一行。

void close():关闭当前对象。

int getInt(int colIndex)获取指定列号的当前行。

int getInt(String colIndex)获取指定列名的当前行。

String getString(String colLabel)获取结果集当前行指定列名值。

java之连接数据库之JDBC访问数据库的基本操作的更多相关文章

  1. java web中Jdbc访问数据库步骤通俗解释(吃饭),与MVC的通俗解释(做饭)

    一.Jdbc访问数据库步骤通俗解释(吃饭) 1)加载驱动 Class.forName(“com.microsoft.jdbc.sqlserver.SQLServer”); 2) 与数据库建立连接 Co ...

  2. 如何通过JDBC访问数据库

    Java数据库连接(JDBC)用与在Java程序中实现数据库操作功能,它提供了执行SQL语句.访问各种数据库的方法,并为各种不同的数据库提供统一的操作接口,java.sql包中包含了JDBC操作数据库 ...

  3. Jdbc访问数据库篇

    一万年太久,只争朝夕 What JDBC 上部 JDBC(Java DataBase Connectivity)Java 数据库连接,主要提供编写 Java 数据库应用程序的 API 支持 java. ...

  4. 2017.10.3 JDBC访问数据库的建立过程

    1·JDBC访问数据库,其访问流程: (1)注册驱动 (2)建立连接(Connection) (3)创建数据库操作对象用于执行SQL语句 (4)执行语句 (5)处理执行结果 (6)释放资源 2·注册驱 ...

  5. JDBC访问数据库的具体步骤(MySql + Oracle + SQLServer)

    * 感谢DT课堂颜群老师的视频讲解(讲的十分仔细,文末有视频链接) import java.sql.Connection; import java.sql.DriverManager; import ...

  6. Java基础之原生JDBC操作数据库

    前言 日常开发中,我们都习惯了使用ORM框架来帮我们操作数据库,本文复习.记录Java如何使用原生JDBC操作数据库 代码编写 封装几个简单方法 find查询方法 findOne查询方法 update ...

  7. Spring实战6:利用Spring和JDBC访问数据库

    主要内容 定义Spring的数据访问支持 配置数据库资源 使用Spring提供的JDBC模板 写在前面:经过上一篇文章的学习,我们掌握了如何写web应用的控制器层,不过由于只定义了SpitterRep ...

  8. 【jdbc访问数据库获取执行sql转换json】

    Talk is cheap.Show me your code. import java.sql.*; import java.util.HashMap; import java.util.Map; ...

  9. javaweb三、JDBC访问数据库

    JDBC是J2SE的内容,是由java提供的访问数据库的接口,但没有提供具体的实现方法,需要数据库厂商提供,就是对应的数据库驱动. 这样的好处是可以方便的更换数据库,提高了扩展性.这也是面向接口编程的 ...

随机推荐

  1. 匿名函数gc分析

    测试一:使用member function创建action会产生gc,不管该函数是否访问外部变量: private System.Action memberAct = null; // gc 112B ...

  2. [转] 一个小时学会Git

    一个小时学会Git http://www.cnblogs.com/best/p/7474442.html

  3. Direct3D 11 Tutorial 7:Texture Mapping and Constant Buffers_Direct3D 11 教程7:纹理映射和常量缓冲区

    概述 在上一个教程中,我们为项目引入了照明. 现在我们将通过向我们的立方体添加纹理来构建它. 此外,我们将介绍常量缓冲区的概念,并解释如何使用缓冲区通过最小化带宽使用来加速处理. 本教程的目的是修改中 ...

  4. Kibana学习笔记——安装和使用

    1.首先下载Kibana https://www.elastic.co/downloads 2.解压 tar -zxvf kibana-6.2.1-linux-x86_64.tar.gz -C ~/s ...

  5. Tensorflow1.4 高级接口使用(estimator, data, keras, layers)

    TensorFlow 高级接口使用简介(estimator, keras, data, experiment) TensorFlow 1.4正式添加了keras和data作为其核心代码(从contri ...

  6. Android实现夜间模式

    如今非常多App都有夜间模式,特别是阅读类的App.夜间模式如今已经是阅读类App的标配了,其实,日间模式与夜间模式就是给App定义并应用两套不同颜色的主题,用户能够自己主动或者手动的开启,今天用An ...

  7. 【Excel】读取固定长文本

    '******************************************************************************* ' 固定長形式テキストファイルを読み込 ...

  8. Javascript 运行上下文和作用域链

    一.作用域Scope和上下文Context 在javascript中,作用域scope和上下文context是两个不同的概念.每个函数调用都会伴随着scope和context,从本质上来说,scope ...

  9. 用lua编写wireshark插件分析自己定义的协议

    参见: https://yoursunny.com/study/IS409/ScoreBoard.htm https://wiki.wireshark.org/LuaAPI/TreeItem http ...

  10. windows上,任务管理器中,进程命令行太长怎么办

    一.前言 在windows上,有时候需要查看进程命令行,但是有的进程的命令行太长了,很难看全 此时,可以使用下面的方法解决(红框改为自己要查看的进程即可): C:\Users\Gaoyu>wmi ...