没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论








JDBC
一、JDBC(Java DataBase Connectivity)
1.1 什么是JDBC?
JDBC:Java连接数据库规范,可以使用java语言完成数据库的CRUD操作。
连接数据库:
打开cmd
mysql -uroot -p
使用数据库
CRUD
1.2 JDBC核心思想
java中定义了访问数据库的接口,可以为多种数据库产品提供统一的访问方式。由数据库厂商提
供驱动实现类(Driver数据库驱动)。
1.2.1 MySQL数据库驱动
mysql-connector-java-5.1.x 适用于5.x版本
mysql-connector-java-8.0.x 适用于8.x版本
1.3 环境搭建
在项目下新建一个lib文件夹,用于存放jar文件。
将mysql驱动mysql-connector-java-5.1.47.jar复制到项目的lib文件中。
选中lib文件夹右键 Add as Library,点击OK。
二、JDBC 开发步骤【重点】
2.1 jdbc 查询
package com.qf.edu.test;
import java.sql.*;
/**
* @Author 了悟
* @Date 9:57 2022/12/3
* @Description jdbc开发步骤
*/
public class DemoJdbc {
public static void main(String[] args) throws ClassNotFoundException, SQLException
{
// ***必须记住*** 先写注释,在写代码
// 1、注册驱动
// 异常 ClassNotFoundException 解决:1、捕获 try catch 2、抛出
// Class.forName(); 反射 可以从二进制文件中反推Java类;普通反射,暴力反射
// com.mysql.jdbc.Driver 驱动 数据库厂商提供 mysql
Class.forName("com.mysql.jdbc.Driver");

// 2、连接数据库
// jdbc:mysql 协议
// localhost 本地 127.0.0.1
// 3306 端口号 数据库默认端口号
// day_javaweb 数据库名称
// useUnicode=true&characterSet=utf8 可以解决部分中文乱码情况
String url = "jdbc:mysql://localhost:3306/day_javaweb?
useUnicode=true&characterSet=utf8";
// 数据库用户
String username = "root";
// 数据库密码 自己的
String password = "root";
// alt + enter 快捷键 快速生成对应的类
Connection connection = DriverManager.getConnection(url, username, password);
// 3、获取发送SQL语句的对象
Statement statement = connection.createStatement();
// 4、执行SQL语句
String sql = "select * from student where sno = 1";
// executeQuery 用于查询操作的方法
// executeUpdate 用于更新操作(增、删、改)的方法
// 产生的结果集 resultSet
ResultSet resultSet = statement.executeQuery(sql);
// 5、结果解析
// resultSet.next() 判断有无下一个元素 迭代器的思想
while (resultSet.next()) {
int sno = resultSet.getInt("sno");
String user = resultSet.getString("username");
String ssex = resultSet.getString("ssex");
String sphone = resultSet.getString("sphone");
String ssub = resultSet.getString("ssub");
int sage = resultSet.getInt("sage");
String saddr = resultSet.getString("saddr");
String pwd = resultSet.getString("password");
System.out.println(sno);
System.out.println(user);
System.out.println(sphone);
System.out.println(ssub);
System.out.println(ssex);
System.out.println(sage);
System.out.println(saddr);
System.out.println(pwd);
}
// 6、释放资源 先开后闭 resultSet statement connection
resultSet.close();
statement.close();
connection.close();
/*
JDBC 连接数据库中需要使用到IO流,
IO 流
数据大小:字节流 字符流
流向:输入流 输出流
水龙头 洗碗池满 溢出
如果打开的IO流比较多,对内存的消耗越多,

2.2 student类
16G 8G
JVM 虚拟机 GC 垃圾回收
问题: 内存溢出 内存泄露
*/
}
}
package com.qf.edu.entity;
/**
* @Author 了悟
* @Date 10:59 2022/12/3
* @Description
*/
public class Student {
// 面向对象的思想 封装对象
// 属性
private int sno;
private String username;
private String ssex;
private String sphone;
private String ssub;
private int sage;
private String saddr;
private String password;
// 构造方法 alt + insert generate
public Student() {
}
public Student(int sno, String username, String ssex, String sphone, String ssub,
int sage, String saddr, String password) {
this.sno = sno;
this.username = username;
this.ssex = ssex;
this.sphone = sphone;
this.ssub = ssub;
this.sage = sage;
this.saddr = saddr;
this.password = password;
}
// get/set方法 供外部访问
public int getSno() {
return sno;
}
public void setSno(int sno) {
this.sno = sno;
}
public String getUsername() {
return username;
}
剩余13页未读,继续阅读
资源评论

qxl122122
- 粉丝: 0
- 资源: 1

上传资源 快速赚钱
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助

会员权益专享
安全验证
文档复制为VIP权益,开通VIP直接复制
