java学习:jdbc连接示例
时间:2022-04-23
本文章向大家介绍java学习:jdbc连接示例,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
java中最常用的数据库连接技术就是JDBC。
目前几乎所有的主流数据库都提供了相应的jdbc驱动,可以简单理解为.net中的数据库客户端dll,.net中如果对于netframework默认不支持的数据库(比如sqllite,mysql之类),就必须要下载专门的数据库客户端dll文件,在vs.net中添加该dll的引用,然后就可以用它来连接数据库。
jdbc也是同样的道理,jdk默认安装后,几乎没带什么jdbc驱动,需要到各数据库提供商网站下载对应的jdbc驱动,以mysql为例,下载mysql jdbc驱动后(百度搜索 “mysql jdbc”就行),会得到一个mysql-connector-java-5.1.22-bin.jar的文件,把它复制到 jdkjrelibext 目录下(这样程序运行时,通过ClassPath就能找到该文件)
然后就可以写代码连接了,示例代码 :
package jmyang.jdbctest;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.sql.Connection;
public class MySqlTest {
public static void main(String[] args) {
Connection conn = null;
try {
// 加载mysql驱动程序
Class.forName("com.mysql.jdbc.Driver");
// 连接localhost上的mysql,并指定使用test数据库,用户名为root,密码为***
conn = DriverManager.getConnection("jdbc:mysql://localhost/test",
"root", "***");
if (!conn.isClosed()) {
System.out.println("数据库连接成功!"); //验证是否连接成功
}
Statement statement = conn.createStatement();
//查询数据
ResultSet rs = statement.executeQuery("select * from person");
//输出结果集(类似.net中的DataSet/DataTable)
while (rs.next()) {
System.out.println("id=" + rs.getInt("Id") + ",name=" +
rs.getString("Name"));
}
rs.close();
} catch (Exception e) {
e.printStackTrace();
} finally {
if (conn != null) {
try {
conn.close();
conn = null;
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
}
下面是oracle 11g Express版连接的示例:
oracle 11g安装后,在jdbc目录下,会有 ojdbc5.jar,ojdbc6.jar,ojdbc6_g.jar 三个包,其中ojdbc5适用于jdk1.5及以上版本,另外二个适用于jdk1.6及以上版本。
注:经我实际测试,如果搞不清自己的jdk版本号,直接把ojdbc5.jar,ojdbc6.jar二个文件都复制到 jdkjrelibext下 也可以。
Class.forName("oracle.jdbc.driver.OracleDriver");
// 连接localhost上的oracle,用户名为yangjm,密码为***,SID为XE,端口号1521,oracle服务器IP:localhost
conn = DriverManager.getConnection("jdbc:oracle:thin:@//localhost:1521/XE",
"yangjm", "***");
与mysql示例代码的区别仅在于:加载的驱动不同 以及 getConnection时指定的url不同
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释