什么是JDBC?
Java语言访问数据库的一种规范,是一套API
JDBC (Java Database Connectivity) API,即Java数据库编程接口,是一组标准的Java语言中的接口和类,使用这些接口和类,Java客户端程序可以访问各种不同类型的数据库。比如建立数据库连接、执行SQL语句进行数据的存取操作。

JDBC规范采用接口和实现分离的思想设计了Java数据库编程的框架。接口包含在java.sql及javax.sql包中,其中java.sql属于JavaSE,javax.sql属于JavaEE。这些接口的实现类叫做数据库驱动程序,由数据库的厂商或其它的厂商或个人提供。

为了使客户端程序独立于特定的数据库驱动程序,JDBC规范建议开发者使用基于接口的编程方式,即尽量使应用仅依赖java.sql及javax.sql中的接口和类。

JAVA使用JDBC访问数据库的步骤:

1.     得到数据库驱动程序

2.     创建数据库连接

3.     执行SQL语句

4.     得到结果集

5.     对结果集做相应的处理(,,,)

6.     关闭资源:这里释放的是DB中的资源

      使用oracle数据库为例子

一、下载oracle jdbc驱动(jar包),在工程中创立lib文件夹,把jar包放到lib文件夹中。如下图:

二、右键工程名,选择build poth->configurg build poth 打开properties for '项目录'窗口。单击add jars..打开jars selectino窗口。选择下载的oracle驱动jar包。点OK。

三、驱动已经配置完成,写代码测试吧。

数据库名:orcl

表名:testresult

 import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException; public class Test {
public static void main(String[] args) {
try {
//一、载入JDBC驱动:
Class.forName("oracle.jdbc.OracleDriver");
/*
* 二、得到数据库连接对象
* DriverManager:这个是一个实现类,它是一个工厂类,DriverManager.getConnection()方法用来生产Connection对象的
* DriverManager.getConnection()方法三个参数分别为:1.连接字符串 2.登录数据库用户名 3.登录数据库的密码
* 连接字符串格式为:jdbc:oracle:thin:@[ip地址]:[端口号]:[数据库名]
*/
Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:ORCL", "wladmin", "lan2711");
System.out.println("连接成功"); /*
* 三、对数据库进行增删改查操作
* PreparedStatement:预编译的sql语句对象
* 作用: 解决了书写sql语句时一些特殊的字符与sql保留字符冲突的问题,非常方便
* 使用conn.prepareStatement()方法得到PreparedStatement对象,参数为要执行的sql语句。
*/
PreparedStatement pStat = conn.prepareStatement("insert into testresult values(003,'JDBC')");
//执行增删改操作
pStat.executeUpdate();
System.out.println("插入成功"); //执行查询操作
pStat = conn.prepareStatement("select * from testresult");
//executeQuery()将返回一个用于指向结果集对象的接口--ResultSet
ResultSet rs = pStat.executeQuery();
//遍历rs并输出结果
while(rs.next()){
System.out.println(rs.getInt(1)+" "+rs.getString(2));
} //关闭连接对象:连接对象关闭时会把相关的PreparedStatement对象、ResultSet对象一起关闭
conn.close(); } catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}

JDBC连接数据库及增删改查操作的更多相关文章

  1. 通过jdbc连接MySql数据库的增删改查操作

    一.获取数据库连接 要对MySql数据库内的数据进行增删改查等操作,首先要获取数据库连接 JDBC:Java中连接数据库方式 具体操作如下: 获取数据库连接的步骤: 1.先定义好四个参数 String ...

  2. BaseDao代码,用于连接数据库实行增删改查等操作

    在学习JavaWeb时会用到此代码,用于实行增删改查操作 1 package com.bdqn.dao; import java.sql.Connection; import java.sql.Dri ...

  3. eclipse控制台下实现jdbc简单的增删改查测试

    1.现在MySQL中创建一个表 2.首先创建一个类 //导入的包 import java.sql.Connection;import java.sql.DriverManager;import jav ...

  4. JDBC学习笔记——增删改查

    1.数据库准备  要用JDBC操作数据库,第一步当然是建立数据表: ? 1 2 3 4 5 6 CREATE TABLE `user` (   `id` int(11) NOT NULL AUTO_I ...

  5. jdbc 数据的增删改查的Statement Resultset PreparedStatement

    完成数据库的连接,就马上要对数据库进行增删改查操作了:先来了解一下Statement 通过JDBC插入数据 (这里提供一个查找和插入方法) Statement:用于执行sql语句的对象: *1.通过C ...

  6. (转)SQLite数据库增删改查操作

    原文:http://www.cnblogs.com/linjiqin/archive/2011/05/26/2059182.html SQLite数据库增删改查操作 一.使用嵌入式关系型SQLite数 ...

  7. PHP程序中使用PDO对象实现对数据库的增删改查操作的示例代码

    PHP程序中使用PDO对象实现对数据库的增删改查操作(PHP+smarty) dbconn.php <?php //------------------------使用PDO方式连接数据库文件- ...

  8. Android SQLite 数据库 增删改查操作

    Android SQLite 数据库 增删改查操作 转载▼ 一.使用嵌入式关系型SQLite数据库存储数据 在Android平台上,集成了一个嵌入式关系型数据库--SQLite,SQLite3支持NU ...

  9. python 全栈开发,Day124(MongoDB初识,增删改查操作,数据类型,$关键字以及$修改器,"$"的奇妙用法,Array Object 的特殊操作,选取跳过排序,客户端操作)

    一.MongoDB初识 什么是MongoDB MongoDB 是一个基于分布式文件存储的数据库.由 C++ 语言编写.旨在为 WEB 应用提供可扩展的高性能数据存储解决方案. MongoDB 是一个介 ...

随机推荐

  1. [置顶] 深入浅出Spring(三) AOP详解

    上次的博文深入浅出Spring(二) IoC详解中,我为大家简单介绍了一下Spring框架核心内容中的IoC,接下来我们继续讲解另一个核心AOP(Aspect Oriented Programming ...

  2. 固定表格行列(expression)

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head ...

  3. win7启动后报丢失nscmk.dll解决解决方式

    1.根据当前计算机选择下载64位或者32位nscmk.dll 2.拷贝nscmk.dll到相路径(32位:%windir%\system32\:64位:%windir%\SysWOW64\nscmk. ...

  4. jvm莫名退出问题解决

    当jvm莫名退出,没有留下任何任何信息的时候,在centos的 /var/log/dmesg文件中,或许可以找到一些端倪

  5. asp.net 总结

    asp.net 是服务器段控件,运行是返回一个客户端html 页面给服务器

  6. 纯CSS绘制三角形

    扒segmentfault的导航栏时候发现的,用了个span标签写了个三角形出来,第一次发现,好神奇,查了下还有挺多种玩法的.基本的用法就是将盒子的width和height设为0,然后用border搭 ...

  7. math方法集合

    math.abs(x)     返回数的绝对值.math.acos(x)     返回数的反余弦值.math.asin(x)     返回数的反正弦值.math.atan(x)     以介于 -PI ...

  8. Jquery二级简单折叠菜单

    写在前面: 1.前端新手 2.欢迎交流 3. 源代码百度云页面示例链接: http://pan.baidu.com/s/1nt0yjd3 链接失效请留言 效果图: 代码部分:jquery部分: < ...

  9. iOS开发之git学习

    本人是参考廖雪峰的git学习的.他写的非常详细,我在这里就是把我学习中的总结以及碰到的坑写出来. /* 初始化git仓库:git init */ /* 添加文件到git仓库 */ 分两步: 第一步:追 ...

  10. C++中的面向对象笔记

    公共继承,相当于属于关系.如CLASS B:public A,表示B就是A,A做到的,B也能做到. CLASS A {}; CLASS B:public A {}; A a; B b; a=b;//错 ...