当前位置: 首页 > web >正文

Java使用JDBC操作数据库

1.创建一个数据库一会用来连接

2.使用idea新建一个Java项目

3.在pom文件中加上相关依赖,并配置Maven路径

<dependencies><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.29</version></dependency>
</dependencies>

新建jdbcdemo包和其中的类

package com.qcby.jdbcdemo;import com.mysql.jdbc.Driver;import java.sql.*;public class JdbcDemo {//主方法 主函数 程序入口public static void main(String[] args) {ResultSet resultSet = null;Statement statement = null;Connection connection = null;try {//1,加载驱动    2种  反射加载    直接加载//Class.forName("com.mysql.jdbc.Driver");DriverManager.registerDriver(new Driver());//2,获取连接    4个  用户名 密码  url//jdbc:mysql://localhost:3306/test  主协议 二层协议    mysql   IP地址    端口号     127.0.0.1:3306connection = DriverManager.getConnection("jdbc:mysql:///jdbctest","root","123456");//3,编写sqlString sql = "select * from student";//4,获取执行sql的对象  2种  不安全 sql注入问题 preparedStatementstatement = connection.createStatement();//5,执行sql   拿到结果集resultSet = statement.executeQuery(sql);//6,遍历结果集while (resultSet.next()){Student student = new Student();student.setId(resultSet.getInt("id"));student.setName(resultSet.getString("name"));student.setAge(resultSet.getInt("age"));student.setSex(resultSet.getString("sex"));System.out.println(student);}}catch (Exception e) {throw new RuntimeException(e);}finally {//永远执行//7,关闭资源try {resultSet.close();statement.close();connection.close();} catch (Exception e) {throw new RuntimeException(e);}}}
}
package com.qcby.jdbcdemo;public class Student {private Integer id;private String name;private Integer age;private String sex;public Student() {}public Student(Integer id, String name, Integer age, String sex) {this.id = id;this.name = name;this.age = age;this.sex = sex;}public Integer getId() {return id;}public void setId(Integer id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public Integer getAge() {return age;}public void setAge(Integer age) {this.age = age;}public String getSex() {return sex;}public void setSex(String sex) {this.sex = sex;}@Overridepublic String toString() {return "Student{" +"id=" + id +", name='" + name + '\'' +", age=" + age +", sex='" + sex + '\'' +'}';}
}

然后运行,就可以从数据库中读取数据了

http://www.xdnf.cn/news/3962.html

相关文章:

  • OpenCV进阶操作:图像直方图、直方图均衡化
  • 2.CFD 计算过程概述:Fluent在散热计算中的优势
  • 【Linux】linux入门——基本指令
  • Qt 信号槽机制底层原理学习
  • C++笔记之模板与可变参数模板
  • 动态链接库(DLL)
  • 网狐飞云娱乐三端源码深度实测:组件结构拆解与部署Bug复盘指南(附代码分析)
  • LeetCode 热题 100 17. 电话号码的字母组合
  • 分布式事物
  • VTK 系统架构
  • 【NLP】33. Pinecone + OpenAI :构建自定义语义搜索系统
  • 五一作业-day04
  • 解决跨域的4种方法
  • CRS 16 slot 设备硬件架构
  • 【RK3588嵌入式图形编程】-Cairo-Cairo图形库支持后端
  • 嵌入式Linux驱动学习
  • 哈希算法、搜索算法与二分查找算法在 C# 中的实现与应用
  • 基于机器学习算法预测二手车市场数据清洗与分析平台(源码+定制+讲解) 基于Python的数据挖掘与可视化 二手车数据处理与分析系统开发 (机器学习算法预测)
  • 深入理解 Bash 中的 $‘...‘ 字符串语法糖
  • 浅拷贝和深拷贝的区别
  • Android控件View、ImageView、WebView用法
  • 14.网络钓鱼实战
  • 【论文阅读】DETR+Deformable DETR
  • 【现代深度学习技术】现代循环神经网络07:序列到序列学习(seq2seq)
  • [学成在线]23-面试题总结
  • AIGC学术时代:DeepSeek如何助力实验与数值模拟
  • 基于PPO的自动驾驶小车绕圈任务
  • Photo-SLAM论文理解、环境搭建、代码理解与实测效果
  • Kubernetes 虚拟机安全关机操作流程
  • 生成式AI服务内容被滥用的法律责任划分