JDBC数据库连接(二)
要想在编程语言中操作数据库,就必须与数据库建立连接。
建立JDBC连接的步骤如下:
导入JDBC包:使用Java语言的import语句在Java代码开头位置导入所需的类。
注册JDBC驱动程序:使JVM将所需的驱动程序实现加载到内存中,从而可以满足JDBC请求。
数据库URL配置:创建一个正确格式化的地址,指向要连接到的数据库。
创建连接对象:调用DriverManager对象的getConnection()方法来建立实际的数据库连接。
一、导入包
mysql驱动jar:http://central.maven.org/maven2/mysql/mysql-connector-java/
oracle驱动jar:https://www.oracle.com/database/technologies/appdev/jdbc-downloads.html
要使用标准的JDBC包java.sql.*。
二、注册JDBC驱动程序
在使用程序之前,必须先注册该驱动程序。
注册驱动程序是将数据库驱动程序的类文件加载到内存中的过程。
只需在程序中一次注册就可以。可以通过两种方式之一来注册驱动程序。
1. Class.forName()
推荐使用的方法,因为它使驱动程序注册可配置和便携。
Class.forName("oracle.jdbc.driver.OracleDriver"); //oracle
Class.forName("com.mysql.jdbc.Driver"); //mysql
2. DriverManager.registerDriver()
使用静态DriverManager.registerDriver()方法来注册驱动程序。
如果使用的是非JDK兼容的JVM(如Microsoft提供的),则应使用registerDriver()方法。
Driver myDriver = new oracle.jdbc.driver.OracleDriver(); //oracle
Driver myDriver = new com.mysql.jdbc.Driver(); //mysql
DriverManager.registerDriver( myDriver );
三、数据库URL
加载驱动程序后,可以使用DriverManager.getConnection()方法建立连接。
三个重载的DriverManager.getConnection()方法:
这里每个格式都需要一个数据库URL。 数据库URL是指向数据库的地址。
(1)MySQL
JDBC驱动程序名称:com.mysql.jdbc.Driver
URL格式:jdbc:mysql://hostname/databaseName
(2)Oracle
JDBC驱动程序名称:oracle.jdbc.driver.OracleDriver
URL格式:jdbc:oracle:thin:@hostname:portNumber:databaseName
(3)PostgreSQL
JDBC驱动程序名称:org.postgresql.Driver
URL格式:jdbc:postgresql://hostname:port/dbname
(4)DB2
JDBC驱动程序名称:com.ibm.db2.jdbc.net.DB2Driver
URL格式:jdbc:db2:hostname:port Number/databaseName
(5)Sybase
JDBC驱动程序名称:com.sybase.jdbc.SybDriver
URL格式:jdbc:sybase:Tds:hostname: portNumber/databaseName
四、创建连接对象
DriverManager.getConnection();
JDBC数据库连接(二)的更多相关文章
- JDBC 数据库连接池
http://www.cnblogs.com/lihuiyy/archive/2012/02/14/2351768.html JDBC 数据库连接池 小结 当对数据库的访问不是很频繁时,可以在每次 ...
- JDBC数据库连接技术
[学习笔记]JDBC数据库连接技术(Java Database Connectivity) 一.JDBC简介 Java是通过JDBC技术实现对各种数据库的访问的,JDBC是Java数据库连接技术的简称 ...
- JDBC数据库连接池
用户每次请求都需要向数据库获得链接,而数据库创建连接通常需要消耗相对较大的资源,创建时间也较长.假设网站一天10万访问量,数据库服务器就需要创建10万次连接,极大的浪费数据库的资源,并且极易造成数据库 ...
- JAVA之JDBC数据库连接池总结篇
JDBC数据库连接池 一.JDBC数据库连接池的必要性 二.数据库连接池技术 三.多种开源的数据库连接池 3.1 C3P0数据库连接池 3.2 DBCP数据库连接池 3.3 Druid(德鲁伊)数据库 ...
- JAVA基础知识之JDBC——JDBC数据库连接池
JDBC数据库连接池 数据库的连接和关闭是很耗费资源的操作,前面介绍的DriverManager方式获取的数据库连接,一个Connection对象就对应了一个物理数据库连接,每次操作都要打开一个连接, ...
- jdbc基础 (二) 通过properties配置文件连接数据库
csdn博文地址:jdbc基础 (二) 通过properties配置文件连接数据库 上一篇描述了对mysql数据库的简单操作,下面来看一下开发中应该如何灵活应用. 因为jdbc对数据库的驱动加载.连接 ...
- 【Java123】JDBC数据库连接池建立
需求场景:多SQL任务多线程并行执行 解决方案:建立JDBC数据库连接池,将线程与连接一对一绑定 https://www.cnblogs.com/panxuejun/p/5920845.html ht ...
- Java自学-JDBC 数据库连接池
数据库连接池 与线程池类似的,数据库也有一个数据库连接池. 不过他们的实现思路是不一样的. 本章节讲解了自定义数据库连接池类:ConnectionPool,虽然不是很完善和健壮,但是足以帮助大家理解C ...
- JAVA jdbc(数据库连接池)学习笔记(二) SQL注入
PS:今天偶然间发现了SQL的注入...所以就简单的脑补了一下,都是一些简单的例子...这篇写的不怎么样...由于自己没有进行很深的研究... 学习内容: 1.SQL注入的概念... 所谓SQL注 ...
随机推荐
- Centos下使用yum命令报错 except KeyboardInterrupt, e: SyntaxError: invalid syntax
使用yum命令报错 File "/usr/bin/yum", line 30 except KeyboardInterrupt, e: ^ SyntaxError: invalid ...
- 【漏洞预警】Redis 4.x/5.x 远程命令执行高危漏洞
2019年7月09日,阿里云应急响应中心监测到有安全研究人员披露Redis 4.x/5.x 远程命令执行高危漏洞利用代码工具.针对未授权或弱口令的Redis服务,攻击者通过构造特定请求,成功利用漏洞可 ...
- LeetCode刷题191203 --回溯算法
虽然不是每天都刷,但还是不想改标题,(手动狗头 题目及解法来自于力扣(LeetCode),传送门. 算法(78): 给定一组不含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集). 说明: ...
- ActiveMQ下载与安装(消息中间件JMS)
下载 官方网站下载:http://activemq.apache.org/ 1.3.2安装(Linux) (1)将apache-activemq-5.12.0-bin.tar.gz 上传至服务器 (2 ...
- 升级python2.7至python3.7
最近在centos7下执行命令时,出现以下提示: DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020 ...
- Linux系统iptables与firewalld防火墙
iptables iptables服务用于处理或过滤流量的策略条目(规则),多条规则可以组成一个规则链,而规则链则依据数据包处理位置的不同进行分类. 在进行路由选择前处理数据包(PREROUTING) ...
- poj 3061 Subsequence 二分 前缀和 双指针
地址 http://poj.org/problem?id=3061 解法1 使用双指针 由于序列是连续正数 使用l r 表示选择的子序列的起始 每当和小于要求的时候 我们向右侧扩展 增大序列和 每当和 ...
- 原子类解决i++问题
原子类解决i++问题 import java.util.concurrent.atomic.AtomicInteger; /** * 一个完整的i++,多线程并发安全问题演示.及使用java.util ...
- IntersectionObserver API,观察元素是否进入了可视区域
网页开发时,常常需要了解某个元素是否进入了"视口"(viewport),即用户能不能看到它. 上图的绿色方块不断滚动,顶部会提示它的可见性. 传统的实现方法是,监听到scroll事 ...
- 从壹开始[做贡献]之二 || 推荐VSCode多语言开发,支持一键JAVA
缘起 哈喽大家周一好!好久不见鸭,最近在看一本书,很好,<人类简史>,适合夏日星空,仰观宇宙之大