网站首页 > 教程分享 正文
JDBC 是连接数据库及java程序完成数据操作
主要包含一下接口
Connection :连接
Statement:命令接口(有sql注入漏洞 不安全)
PreparedStatement:预编译命令的接口 (与Statement的不同 ,在执行前会进行预编译, 更加的安全,效率更高)
ResultSet :结果集合特征接口
操作步骤
1.导入要使用的包
java.sql.
2.声明使用的接口
为什么只提供接口? 提供一个标准 数据库厂商实现这写接口
接口的实现类就是去驱动
连接接口
Connection connection =null;
预编译命令对象
PreparedStatement preparedStatement =null;
结果集对象
ResultSet set=null;
3.加载驱动
导入jar 包
将连接的类加载到内存中 驱动连接是一个类该类在产生对象之前就需要被分配内存中,要用到Class.forName
Class c = new Class();
forName方法要告诉JVM要用的是哪一个类(String形式,且要带完整路径)
无法保证含有字符串的操作的准确性,所以要添加异常的判断(抛出异常
4建立连接(本质就是实例化 Connection对象)
利用DriverManager(驱动管理类) 提供链接手段
连接字符串的url 如jdbc:mysql://地址:端口号 /数据库?
jdbc:mysql java和mysql 连接协议
地址:链接数据库的ip或主机名
端口号 默认3306
连接数据库名称
编码
useSSL 是否使用信任连接方式
用户名 密码
String url = "jdbc:mysql://127.0.0.1:3306/score?characterEncoding=UTF-8&useSSL=false";
String user = "root";
String password = "root";
connection = DriverManager.getConnection(url, user, password);
System.out.println("连接成功");
5实例化命令对象
定义一个要执行(预编译)的命令
prepareStatement =connection.prepareStatement(String sql )// 预编译的sql 语句
预编译>>>使用占位符 ?替代 字符
prepareStatement.setInt(1,666); setObject(2,"llll"); setString (3,22)
占位符的起始位1 String 可用于万能类型
6执行sql命令 execute 执行
execute()执行大多数的DDL
executeUpdate() 执行DML update表示有修改操作,包括修改,删除,插入,返回是执行操作受影响的行数
executeQuery() 执行DDL 针对Select
7.查询操作
使用executeQuery() 返回一个ResultSet
使用游标 boolean next() 游标向前滚动一次 起始游标在0 位置
先判断有没有数据再操作
获取 getXXX(int fieldName) XXX获取的属性类型 fieldNumber 字段编号 (从1开始)
getXXX(String fieldName) filedName 字段名
getString( int /String ) 可以 获取任意类型的字段
set.next(); // 下一个 , 以找到数据为目的
set.previous(); // 前一个
set.first(); // 第一个
set.last(); // 最后一个
set.absolute(10); // 精确定位到第个
set.relative(10); // 相对
8关闭连接,与流一样倒序关闭
ResultSetMetaData 补充
ResultSetMetaData metaData=set.getMetaData(); //resultset 获取对象
metaData.getColumnName(int index) //获取字段名
metaData.getColumnLabel(int index) //获取别名
猜你喜欢
- 2024-10-14 Java之Spring4:JDBC(java之父余胜军网站)
- 2024-10-14 《JDBC》第09节:JDBC之DatabaseMetaData数据库元数据对象
- 2024-10-14 《JDBC》第18节:JDBC之数据库连接池Hikari的使用(软编码方式)
- 2024-10-14 flink教程-详解flink 1.11 中的JDBC Catalog
- 2024-10-14 肝!Spring JDBC持久化层框架“全家桶”教程
- 2024-10-14 JDBC的基础使用(jdbc 教程)
- 2024-10-14 大数据开发基础之JAVA基础-JDBC基础知识
- 2024-10-14 JDBC基础整理(jdbc 教程)
- 2024-10-14 小白都能看懂的JDBC事务(jdbc实现事务管理)
- 2024-10-14 Spring JdbcTemplate讲解(spring的jdbc模板)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- css导航条 (66)
- sqlinsert (63)
- js提交表单 (60)
- param (62)
- parentelement (65)
- jquery分享 (62)
- check约束 (64)
- curl_init (68)
- sql if语句 (69)
- import (66)
- chmod文件夹 (71)
- clearinterval (71)
- pythonrange (62)
- 数组长度 (61)
- javafx (59)
- 全局消息钩子 (64)
- sort排序 (62)
- jdbc (69)
- php网页源码 (59)
- assert h (69)
- httpclientjar (60)
- postgresql conf (59)
- winform开发 (59)
- mysql数字类型 (71)
- drawimage (61)
本文暂时没有评论,来添加一个吧(●'◡'●)