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

JDBC(Java访问数据库)

Java Database Connectivity:Java访问数据库的解决方案

JDBC定义了一套标准接口,即访问数据库的通用API, 不同的数据库厂商根据各自数据库的特点去实现这些接口。

JDBC希望用相同的方式访问不同的数据库,让具体的数据库操作与数据库厂商实现无关,从而在不同数据库之间轻易的进行切换。

下载对应的数据库的驱动 mysql-connector-java-5.0.4-bin.jar

将驱动类加载到项目中 Eclipse: Build Path

 一、连接数据库

        //1.加载驱动  -- 反射的方式加载mysql驱动类Class.forName("com.mysql.cj.jdbc.Driver");//2.获取连接对象//URL   协议 地址:端口 资源String url="jdbc:mysql://localhost:3306/example?serverTimezone=GMT&useSSL=false";String user="root";String pwd="password";Connection conn=DriverManager.getConnection(url,user,pwd);//3.释放资源conn.close();

 二、数据增添操作

        // 执行sql语句Statement statm=conn.createStatement();String sql="insert into student(sname,ssex,birthday,classid) values('rose','女','2010-1-1',1)";int ret=statm.executeUpdate(sql);//逻辑if(ret>0) {System.out.println("添加成功");}else {System.out.println("添加失败");}

三、数据删除操作

        //执行sqlStatement statm=conn.createStatement();String sql="delete from student where sid='18'";int ret=statm.executeUpdate(sql);if(ret>0) {System.out.println("修改成功");}else {System.out.println("修改失败");}

四、数据修改操作

        //执行sqlStatement statm=conn.createStatement();System.out.println("请输入学生的姓名");String sname=input.next();System.out.println("请输入学生的生日");String birthday=input.next();System.out.println("请输入学生的性别");String ssex=input.next();System.out.println("请输入学生的新班级");String classid=input.next();System.out.println("请输入学生的学号");String sid=input.next();String sql="update student set sname='"+sname+"',birthday='"+birthday+"',ssex='"+ssex+"',classid="+classid+" where sid="+sid;int ret=statm.executeUpdate(sql);if(ret>0) {System.out.println("修改成功");}else {System.out.println("修改失败");}

五、数据查找操作

        //执行sql语句Statement statm=conn.createStatement();//String sql="select * from student";String sql="select sid,sname,classid,birthday,ssex from student";ResultSet rs=statm.executeQuery(sql);//解析结果集while(rs.next()) {int sid=rs.getInt("sid");String sname=rs.getString("sname");Date bir=rs.getDate("birthday");String sex=rs.getString("ssex");int classid=rs.getInt("classid");System.out.println(sid+sname+bir+sex+classid);}

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【ESP01开发实例】-驱动OLED SSD1306显示屏
  • Web安全:Web体系架构存在的安全问题和解决方室
  • 视觉巡线小车(STM32+OpenMV)——总结
  • Dify中HTTP请求节点的常见操作
  • 数据url
  • C++中 cin、cin.get()、cin.getline()、getline() 的区别
  • Blender材质-PBR与纹理材质
  • scratch聊天机器人 2024年6月scratch四级 中国电子学会图形化编程 少儿编程等级考试四级真题和答案解析
  • sql server 连接报错error 40
  • 基于内容的音乐推荐网站/基于ssm的音乐推荐系统/基于协同过滤推荐的音乐网站/基于vue的音乐平台
  • 基于Element UI内置的Select下拉和Tree树形组件,组合封装的树状下拉选择器
  • 这一文,关于 Java 泛型的点点滴滴 一(泛型基础、类型擦除)
  • Javascript面试基础6【每日更新10】
  • MyBatis中的赋值语句:#{}和${}的区别差异(常见面试题)
  • 【Python机器学习】决策树的构造——划分数据集
  • ES6指北【2】—— 箭头函数
  • 《Javascript高级程序设计 (第三版)》第五章 引用类型
  • 「前端早读君006」移动开发必备:那些玩转H5的小技巧
  • Docker下部署自己的LNMP工作环境
  • ECS应用管理最佳实践
  • IndexedDB
  • leetcode46 Permutation 排列组合
  • Node.js 新计划:使用 V8 snapshot 将启动速度提升 8 倍
  • 对话:中国为什么有前途/ 写给中国的经济学
  • 构造函数(constructor)与原型链(prototype)关系
  • 机器学习中为什么要做归一化normalization
  • 聚类分析——Kmeans
  • 爬虫进阶 -- 神级程序员:让你的爬虫就像人类的用户行为!
  • 爬虫模拟登陆 SegmentFault
  • 批量截取pdf文件
  • 前端攻城师
  • 前端技术周刊 2019-01-14:客户端存储
  • 悄悄地说一个bug
  • 如何设计一个微型分布式架构?
  • 使用权重正则化较少模型过拟合
  • 它承受着该等级不该有的简单, leetcode 564 寻找最近的回文数
  • 我从编程教室毕业
  • 中文输入法与React文本输入框的问题与解决方案
  • Spring第一个helloWorld
  • 移动端高清、多屏适配方案
  • ​LeetCode解法汇总2304. 网格中的最小路径代价
  • #100天计划# 2013年9月29日
  • #DBA杂记1
  • #如何使用 Qt 5.6 在 Android 上启用 NFC
  • (8)Linux使用C语言读取proc/stat等cpu使用数据
  • (备份) esp32 GPIO
  • (补)B+树一些思想
  • (附源码)python旅游推荐系统 毕业设计 250623
  • (转)创业家杂志:UCWEB天使第一步
  • (转载)深入super,看Python如何解决钻石继承难题
  • .ai域名是什么后缀?
  • .bat批处理(三):变量声明、设置、拼接、截取
  • .Net CoreRabbitMQ消息存储可靠机制
  • .net 调用php,php 调用.net com组件 --
  • .NET+WPF 桌面快速启动工具 GeekDesk