什么是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连接数据库及增删改查操作的更多相关文章
-
通过jdbc连接MySql数据库的增删改查操作
一.获取数据库连接 要对MySql数据库内的数据进行增删改查等操作,首先要获取数据库连接 JDBC:Java中连接数据库方式 具体操作如下: 获取数据库连接的步骤: 1.先定义好四个参数 String ...
-
BaseDao代码,用于连接数据库实行增删改查等操作
在学习JavaWeb时会用到此代码,用于实行增删改查操作 1 package com.bdqn.dao; import java.sql.Connection; import java.sql.Dri ...
-
eclipse控制台下实现jdbc简单的增删改查测试
1.现在MySQL中创建一个表 2.首先创建一个类 //导入的包 import java.sql.Connection;import java.sql.DriverManager;import jav ...
-
JDBC学习笔记——增删改查
1.数据库准备 要用JDBC操作数据库,第一步当然是建立数据表: ? 1 2 3 4 5 6 CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_I ...
-
jdbc 数据的增删改查的Statement Resultset PreparedStatement
完成数据库的连接,就马上要对数据库进行增删改查操作了:先来了解一下Statement 通过JDBC插入数据 (这里提供一个查找和插入方法) Statement:用于执行sql语句的对象: *1.通过C ...
-
(转)SQLite数据库增删改查操作
原文:http://www.cnblogs.com/linjiqin/archive/2011/05/26/2059182.html SQLite数据库增删改查操作 一.使用嵌入式关系型SQLite数 ...
-
PHP程序中使用PDO对象实现对数据库的增删改查操作的示例代码
PHP程序中使用PDO对象实现对数据库的增删改查操作(PHP+smarty) dbconn.php <?php //------------------------使用PDO方式连接数据库文件- ...
-
Android SQLite 数据库 增删改查操作
Android SQLite 数据库 增删改查操作 转载▼ 一.使用嵌入式关系型SQLite数据库存储数据 在Android平台上,集成了一个嵌入式关系型数据库--SQLite,SQLite3支持NU ...
-
python 全栈开发,Day124(MongoDB初识,增删改查操作,数据类型,$关键字以及$修改器,";$";的奇妙用法,Array Object 的特殊操作,选取跳过排序,客户端操作)
一.MongoDB初识 什么是MongoDB MongoDB 是一个基于分布式文件存储的数据库.由 C++ 语言编写.旨在为 WEB 应用提供可扩展的高性能数据存储解决方案. MongoDB 是一个介 ...
随机推荐
-
win7下安装配置nodejs、使用npm安装express
1.下载node http://nodejs.cn/download/ 这里下载自己需要的 我的环境是win764,下载地址是:https://nodejs.org/dist/v6.2.0/win-x ...
-
xudyh的gcd模板
hdu 5019 #include <cstdlib> #include <cctype> #include <cstring> #include <cstd ...
-
Hadoop.2.x_源码编译
一.基本环境搭建 1. 准备 hadoop-2.5.0-src.tar.gz apache-maven-3.0.5-bin.tar.gz jdk-7u67-linux-x64.tar.gz proto ...
-
OpenCV Manager package was not found
http://www.tuicool.com/articles/322Yj2 !! [1]的底部就有解决办法,一般“\OpenCV-2.4.6-android-sdk\apk”这个路径下就是 Open ...
-
linux RTC 驱动模型分析【转】
转自:http://blog.csdn.net/yaozhenguo2006/article/details/6824970 RTC(real time clock)实时时钟,主要作用是给Linux系 ...
-
Win10 VMware虚拟机无法打开内核设备“\\.\Global\vmx86“
前几项与Win7配置相同 用管理员模式打开CMD 运行 net start vmci net start vmx86 net start VMnetuserif 这三条命令 为了不用每次启动都这样,修 ...
-
css3属性:column分栏
css3选择器中提出了分栏的属性,其浏览器支持情况为:Internet Explorer 10 和 Opera 支持 column 属性,Firefox 支持替代的 -moz-column 属性,Sa ...
-
Dynamics 365出现数据加密错误怎么办?
本人微信公众号:微软动态CRM专家罗勇 ,回复290或者20181227可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me!我的网站是 www.luoyong.me . Dy ...
-
从源码开始运行Bitcoin Core
安装Ubuntu 环境:虚拟机 网络连接:桥接 系统版本:16.04 源:ali 安装编译环境(依赖库) sudo apt-get update sudo apt-get install build- ...
-
vc++2010如何新建项目并在控制台打印helloworld
关于写c++使用什么集成开发环境的问题其实挺纠结的.我找了好久找到codeblocks,发现这款IDE还是最适合用在最标准的c++语法环境中.其实先前装过vs2015旗舰版,但是这款软件太大了,非常消 ...