ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

关于JDBC的六个步骤

2020-12-12 15:35:06  阅读:213  来源: 互联网

标签:stat JDBC rs 步骤 数据库 六个 sql 连接


一、JDBC简述

JDBC(Java DataBase Connectivity) Java数据库连接
其实就是 利用Java语言/程序连接并访问数据库的一门技术
之前我们可以通过CMD或者navicat等工具连接数据库
但在企业开发中,更多的是通过程序(Java程序)连接并访问数据库, 通过Java程序访问数据库,就需要用到JDBC这门技术。

二、JDBC六步

1、注册数据库驱动

1 Class.forName("com.mysql.cj.jdbc.Driver");

注册驱动,就是让JDBC程序加载mysql驱动程序,并管理驱动。

驱动程序实现了JDBC API定义的接口以及和数据库服务器交互的功能,加载驱动是为了方便使用这些功能。

2、获取数据库连接

1 Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/数据库名? characterEncoding=utf-8&serverTimezone=Asia/Shanghai",    "root", "root" );

DriverManager.getConnection() 用于获取数据连接,返回的Connection 连接对象是JDBC程序连接数据库至关重要的一个对象。
参数2和参数3分别是所连接数据库的用户名和密码。
参数1:"jdbc:mysql://localhost:3306/数据库名" 是连接数据库的URL,用于 指定访问哪一个位置上的数据库服务器及服务器中的哪一个数据当连接本地数据库,并且端口为3306时,可以简写为 

1 jdbc:mysql:///数据库名   

 

3、Statement传输器对象--发送Sql语句到服务器执行

Statement stat = conn.createStatement(); //该方法返回用于向数据库服务器发送sql语句的Statement传输器对

4、ResultSet结果集对象--封装查询Sql执行的结果

String sql = ""  //写要执行的sql语句
ResultSet rs = stat.executeQuery(String sql) //用于向数据库发送查询类型的sql语句, 返回一个ResultSet对象中 ResultSet rs = stat.executeUpdate(String sql) //用于向数据库发送更新(增加、删除、修 改)类型的sql语句,返回一个int值,表示影响的记录行数

可以返回影响的行数并打印,方便以后发现问题

int rows = stat.executeQuery(sql);

 5、处理结果

1)遍历数据行的方法
next() – 使指向数据行的箭头向下移动一行,并返回一个布尔类型的结 果,true表示箭头指向了一行数据,false表示箭头没有指向任何数据(后面 也没有数据了)

1 while(rs.next()) {
2  int id = rs.getInt("id");
3  String name = rs.getString("name");
4  double money = rs.getDouble("money");
5  System.out.println(id+","+name+","+money);
6 }


6、释放资源

此处释放资源必须按照一定的顺序释放,越晚获取的越先关闭。所以 先关闭 rs对象,再关闭stat对象,后关闭conn对象。

1 rs.close(); 
2 stat.close();
3 conn.close();

 

标签:stat,JDBC,rs,步骤,数据库,六个,sql,连接
来源: https://www.cnblogs.com/houyu/p/14124760.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有