JDBC笔记
来源:互联网 发布:win7旗舰版服务优化 编辑:程序博客网 时间:2024/06/05 05:38
什么是JDBC?
JDBC,意为 Java Database Connectivity(Java数据库连接),是 SUN 公司为了统一各大数据库厂商的链接而制定的一套规范。它可以为多种关系数据库提供统一访问,由大多数的接口和一部分类组成,程序员可以根据这种基准构建更为高级的工具和接口,使数据库开发人员更易于操作数据库。
关系:SUN公司制定规范,数据库厂商实现规范,程序员使用规范 ----侵删
JDBC开发步骤
- 导入数据库驱动,把 jar 包导入到工程中去,加入编译路径(创建文件夹-->粘贴jar包-->build path)
- 加载驱动,将驱动程序配置到 claspath 中(Class.foeName("driver name"))
- 连接数据库,通过 Connection 和 DriverManager 类完成
- 操作数据库,通过 Statement、PreparedStatement 和 ResultSet 三个接口完成
- 关闭数据库
注册数据库厂商提供的驱动程序,只要使用Driver接口就可以完成,可以在程序里写静态代码块以完成加载
static {try {Class.forName("com.mysql.jdbc.Driver");} catch (ClassNotFoundException e){e.printStackTrace();}}
连接数据库
Connection配合DriverManager 与数据库连接,在上下文执行sql语句并由 ResultSet 返回结果。
Connection conn = null;Statement stmt = null;try {//注册/加载 JDBC 驱动Class.forName("com.mysql.jdbc.Driver");//打开链接System.out.println("连接数据库······");conn = DriverManager.getConnection(DB_URL, USER, PASS);//执行查询stmt = conn.createStatement();String sql = "select empno,ename,job from emp;";ResultSet rs = stmt.executeQuery(sql); //ResultSet 得到结果查询结果
ResultSet对象有一个 next() 方法,返回布尔值以判断是否有下一条记录。
while(rs.next()) {//通过字段检索int empno = rs.getInt("empno");String name = rs.getString("ename");String job = rs.getString("job");//输出数据System.out.print("empno: " + empno);System.out.print("\tename: " + name);System.out.println("\tjob: " + job);}
代码实例
public static void main(String[] args) {Connection conn = null;Statement stmt = null;try {//注册/加载 JDBC 驱动Class.forName("com.mysql.jdbc.Driver");//打开链接System.out.println("连接数据库······");conn = DriverManager.getConnection(DB_URL, USER, PASS);//执行查询System.out.println("实例化 statement对······");stmt = conn.createStatement();String sql;sql = "select empno,ename,job from emp;";ResultSet rs = stmt.executeQuery(sql);//展开结果集数据库while(rs.next()) {//通过字段检索int empno = rs.getInt("empno");String name = rs.getString("ename");String job = rs.getString("job");//输出数据System.out.print("empno: " + empno);System.out.print("\tename: " + name);System.out.println("\tjob: " + job);}//完成后关闭rs.close();stmt.close();conn.close();}catch(SQLException se) {//处理 JDBC 错误se.printStackTrace();}catch(Exception e) {//处理 Class.forName 错误e.printStackTrace();}finally {//关闭资源try {if(stmt!=null) stmt.close();}catch(SQLException se) {//什么也不做}try {if(conn!=null) conn.close();}catch(SQLException se) {se.printStackTrace();}}System.out.println("查询完成,白白ヾ(•ω•`)o");}
阅读全文
0 0
- 【JDBC笔记】JDBC基础知识
- JDBC笔记
- JDBC 笔记
- JDBC笔记
- jdbc笔记
- JDBC 笔记
- JDBC笔记
- JDBC笔记
- JDBC笔记
- jdbc笔记
- JDBC笔记
- JDBC笔记
- jdbc笔记
- JDBC笔记
- JDBC笔记
- JDBC 笔记
- 笔记--jdbc
- JDBC笔记
- 算法导论之栈
- ajax和json
- java环境设置
- 数据库索引详解
- c++ hook 钩子的使用介绍
- JDBC笔记
- 解决XML本地无法找到的问题
- next_permutation() 输出全排列
- shader学习之基础纹理透明效果
- ClassLoader原理剖析
- 软件工程-过程模型-瀑布模型
- 机房收费系统----逻辑关系篇
- redis命令及jedis数据类型
- 初识Spring_02