JDBC数据库连接
JDBC是什么?
Java Data Base Connectivity
JDBC是:
以统一方式訪问数据库的API,能够訪问不论什么类型表列数据。特别是存储在关系数据中的数据。JDBC代表Java数据库连接。
JDBC提供:
1、独立于平台的数据库訪问
2、位置透明
3、对专有数据的问题是透明
JDBC和JDBC Drivers
JDBC Drivers是实现数据库操作的类
Drivers分成两类:2-层-客户直接和数据库会话
3-层-客户与代表数据库的中间层会话
怎样使用JDBC?
①:载入JDBC驱动程序(不同的数据库载入的驱动不一样滴)
②:建立连接
③:创建Statement对象
④:结果集处理
⑤:关闭连接
操作完毕以后要把全部使用的JDBC对象全都关闭。以释放JDBC资源,关闭顺序和声明顺序相反:
1、关闭记录集
2、关闭声明
3、关闭连接对象
通过Java.lang.Class类的静态方法forName(String className)实现
直接连接数据的实例,比如:
import Java.sql.*;...
try{
//载入pointbase的驱动类,这里能够改为Oracle,MySQL等其它类型的数据库,成功载入后会将Driver类的实例注冊到DriverManager类中
class.forName("com.pointbase.jdbc.jdbcUniversalDriver"); //创建数据库的连接,要连接数据库,须要向DriverManager请求并获得Connection对象。该对象代表一个数据的连接;使用DriverManager的getConnectin方法传入指定的欲连接的数据库的路径。 Connection con=DriverManager.getConnect("jdbc:pointbase://server:port/MyDatabase"); //创建一个Statement
Statement stmt=con.createStatement(); //运行查询数据库的SQL语句,返回一个结果集对象
String sql="SELECT * From MyTABLE";
ResultSet res=stmt.executeQuery(sql); //处理结果
//两种情况:1、运行更新返回的是本次操作影响到的记录数;2、运行查询返回的结果是一个ResultSet对象。 // ResultSet包括符合SQL语句中条件的全部行,而且它通过一套get方法提供了对这些行中数据的訪问。
<span style="white-space:pre"> </span>//使用结果集(ResultSet)对象的訪问方法获取数据:
while(res.next()){
String col1=res.getString("MYCOLUMN1");
int col2=res.getInt("MYCOLUMN2");
}catch(Exception e){...}
}
JDBC API既支持数据库訪问的两层模型(C/S),同一时候也支持三层模型(B/S)。在两层模型中,Java applet或应用程序将直接与数据库进行对话。
这将须要一个JDBC驱动程序来与所訪问的特定数据库管理系统进行 通讯
在三层模型中,命令先是被发送到服务的"中间层",然后由它将SQL 语句发送给数据库。
JDBC的缺点:虽然JDBC在JAVA语言层面实现了统一,但不同数据库仍旧有很多差异。为了更好地实现跨数据库操作,于是诞生了Hibernate项目。Hibernate是对JDBC的再封装,实现了对数据库操作更宽泛的统一和更好的可移植性。
JDBC数据库连接的更多相关文章
- JAVA基础知识之JDBC——JDBC数据库连接池
JDBC数据库连接池 数据库的连接和关闭是很耗费资源的操作,前面介绍的DriverManager方式获取的数据库连接,一个Connection对象就对应了一个物理数据库连接,每次操作都要打开一个连接, ...
- JDBC 数据库连接池
http://www.cnblogs.com/lihuiyy/archive/2012/02/14/2351768.html JDBC 数据库连接池 小结 当对数据库的访问不是很频繁时,可以在每次 ...
- 【Java123】JDBC数据库连接池建立
需求场景:多SQL任务多线程并行执行 解决方案:建立JDBC数据库连接池,将线程与连接一对一绑定 https://www.cnblogs.com/panxuejun/p/5920845.html ht ...
- JDBC数据库连接技术
[学习笔记]JDBC数据库连接技术(Java Database Connectivity) 一.JDBC简介 Java是通过JDBC技术实现对各种数据库的访问的,JDBC是Java数据库连接技术的简称 ...
- JDBC数据库连接池
用户每次请求都需要向数据库获得链接,而数据库创建连接通常需要消耗相对较大的资源,创建时间也较长.假设网站一天10万访问量,数据库服务器就需要创建10万次连接,极大的浪费数据库的资源,并且极易造成数据库 ...
- Java自学-JDBC 数据库连接池
数据库连接池 与线程池类似的,数据库也有一个数据库连接池. 不过他们的实现思路是不一样的. 本章节讲解了自定义数据库连接池类:ConnectionPool,虽然不是很完善和健壮,但是足以帮助大家理解C ...
- JAVA之JDBC数据库连接池总结篇
JDBC数据库连接池 一.JDBC数据库连接池的必要性 二.数据库连接池技术 三.多种开源的数据库连接池 3.1 C3P0数据库连接池 3.2 DBCP数据库连接池 3.3 Druid(德鲁伊)数据库 ...
- jdbc数据库连接过程及驱动加载与设计模式详解
首先要导入JDBC的jar包:接下来,代码:Class.forName(xxx.xx.xx)返回的是一个类 Class.forName(xxx.xx.xx)的作用是要求JVM查找并加载指定的类, 也就 ...
- jdbc 数据库连接
连接数据库 1)通过Driver来连接(Driver:数据库厂商提供的一个接口) public void testDriver()throws Exception{ Driver driver = n ...
- JDBC数据库连接池技术
在JDBC中,获得连接或释放资源是非常消耗系统资源的两个过程,为了解决此类性能问题,通常采用连接池技术,来共享连接.这样我们就不需要每次都创建连接.释放连接了,这些操作都交给了连接池. 用池的概念来管 ...
随机推荐
- android 使用Scroller实现缓慢移动
在Launcher中的Workspace中实现了左右屏幕切换效果,里面就用到了Scroller记录滑动轨迹,实现一种缓慢地向左或向右移动的效果,这里我对这种效果进行总结: 我们先看一个例子:点击按钮时 ...
- Effective C++_笔记_条款04_确定对象被使用之前已先被初始化
(整理自Effctive C++,转载请注明.整理者:华科小涛@http://www.cnblogs.com/hust-ghtao/) 读取未初始化的值会导致不确定的行为.在某些平台上,仅仅只是读取为 ...
- SQL server语句练习
相关表: <span style="white-space:pre">create table DEPT ( <span style="white-sp ...
- MySQL内存表(MEMORY)说明 | 一个PHP程序员的备忘录
MySQL内存表(MEMORY)说明 | 一个PHP程序员的备忘录 MySQL内存表(MEMORY)说明
- 基于FPGA的红外遥控解码与PC串口通信
基于FPGA的红外遥控解码与PC串口通信 zouxy09@qq.com http://blog.csdn.net/zouxy09 这是我的<电子设计EDA>的课程设计作业(呵呵,这个月都拿 ...
- Photoshop图象切片保存为网页HTML(DIV+CSS布局)的方法
首先,制作图象切片(以一张图片为例子) 一.选择“切片”工具,在图像上拖动以分割图像(例如:一张图像切割2次就形成3个切片)切片后如下图 二.设置切片选项(如大小.目标链接.图片说明等等):选择“切片 ...
- 与内存有关的那些事儿(数组分配空间不够,导致缓冲区溢出,从而strcpy会出现异常)
这日,我写下如下代码:#include <iostream>int main(void){ char *p = new char[5]; char *t = new char[5]; st ...
- JS Bin Tips and Bits • About
JS Bin Tips and Bits • About About Who built this? JS Bin was built by Remy Sharp and is completel ...
- HDU 3473 Minimum Sum (划分树)
题意:给定一个数组,有Q次的询问,每次询问的格式为(l,r),表示求区间中一个数x,使得sum = sigma|x - xi|最小(i在[l,r]之间),输出最小的sum. 思路:本题一定是要O(nl ...
- Ray Through Glasses
http://acm.hust.edu.cn/vjudge/contest/view.action?cid=30506#problem/T 题意:给你一束光,问你在一个三层的平面类传递n次的种数: 仔 ...