JDBC入门--初学者必看
JDBC入门
其实在学完数据库之后,我们就会进入到JDBC的学习和使用。本篇会进行针对初学者的一些基本的学习内容进行概述。进阶内容可以私聊博主进行更新。
什么是JDBC
JDBC(Java DataBase Connectivity)Java数据库连接。
学习数据库的时候,我们会通过cmd或者Navicat进行连接并访问操作数据库。那么在实际开发中却大多数采用Java代码进行实现访问数据库。
为什么会有JDBC
在SUN公司会提供一种数据库的访问规则、规范, 由于数据库种类较多,并且java语言使用比较广泛,sun公司就提供了一种规范,让其他的数据库提供商去实现底层的访问规则。 我们的java程序只要使用sun公司提供的jdbc驱动即可。
如何使用JDBC
-
数据的准备-------写一个User员工数据库表
-
创建一个Java工程
-
写一个测试类
-
开始进行实现JDBC程序
JDBC之六脉神剑
以下实现遍历去查询数据库表中的所有的记录。
//准备工作
Connection conn = null;
Statement stat = null;
ResultSet rs = null;
少商剑----实现数据库的驱动
Class.forName("com.mysql.jdbc.Driver");
商阳剑----获取数据库的连接
conn = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/dd_db?characterEncoding=utf-8",
"root", "root");
中冲剑----获取传输器
stat = conn.createStatement();
关冲剑----利用传输器发送SQL到服务器中去执行,然后接收执行结果
String sql = "select * from user";
rs = stat.executeQuery( sql );
少泽剑----处理结果(暂时放到控制台打印查看结果)
while( rs.next() ) {
int id = rs.getInt("id");
//int id = rs.getInt( 1 );
String name = rs.getString("username");
//String name = rs.getString( 2 );
String password= rs.getString("password");
//String password = rs.getString( 3 );
System.out.println( id+":"+name+":"+password );
}
少冲剑---- 释放资源
if( rs != null ) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
} finally {
rs = null;
}
}
if( stat != null ) {
try {
stat.close();
} catch (SQLException e) {
e.printStackTrace();
} finally {
stat = null;
}
}
if( conn != null ) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
} finally {
conn = null;
}
}
}
整个代码需要在try-catch-finally中去处理。
完整代码如下:
public class JdbcTest {
public static void main(String[] args) {
Connection conn = null;
Statement stat = null;
ResultSet rs = null;
try {
//1.注册数据库驱动
Class.forName("com.mysql.jdbc.Driver");
//2.获取数据库连接
conn = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/dd_db?characterEncoding=utf-8",
"root", "root");
//3.获取传输器
stat = conn.createStatement();
//4.利用传输器发送SQL到服务器执行,接收执行结果
String sql = "select * from account";
rs = stat.executeQuery( sql );
//5.处理结果(将查询的结果输出到控制台)
while( rs.next() ) {
int id = rs.getInt("id");
//int id = rs.getInt( 1 );
String name = rs.getString("username");
//String name = rs.getString( 2 );
String password= rs.getString("password");
//String password = rs.getString( 3 );
System.out.println( id+":"+name+":"+password );
}
System.out.println("OK...");
} catch (Exception e) {
e.printStackTrace();
} finally {
//6.释放资源
if( rs != null ) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
} finally {
rs = null;
}
}
if( stat != null ) {
try {
stat.close();
} catch (SQLException e) {
e.printStackTrace();
} finally {
stat = null;
}
}
if( conn != null ) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
} finally {
conn = null;
}
}
}
}
}
下一篇会讲到如何写工具类的使用。感谢阅读,关注一波拉。