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);}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/50704.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HDU1056——HangOver,HDU1057——A New Growth Industry,HDU1058——Humble Numbers

目录 HDU1056——HangOver 题目描述 运行代码 代码思路 HDU1057——A New Growth Industry 题目描述 运行代码 代码思路 HDU1058——Humble Numbers 题目描述 运行代码 代码思路 HDU1056——HangOver 题目描述 Problem - 1056 运行代码 #include <iostream&…

Elasticsearch面试三道题

针对Elasticsearch的面试题&#xff0c;从简单到困难&#xff0c;我可以给出以下三道题目&#xff1a; 1. Elasticsearch的基本概念与优势 问题&#xff1a;请简要介绍Elasticsearch是什么&#xff0c;并说明它相比传统数据库的优势有哪些&#xff1f; 答案&#xff1a; El…

数学建模--整数规划和非线性规划

目录 整数规划 非线性规划 总结 整数规划中分支定界法的具体步骤和实现细节是什么&#xff1f; 初始化&#xff1a; 分支&#xff1a; 定界&#xff1a; 剪枝&#xff1a; 终止条件&#xff1a; 非线性规划中的梯度法、牛顿法和拟牛顿法的比较分析有哪些&#xff1f;…

php判断某个目录下是否存在文件

/*** 判断字符串是否以什么结尾* param String $haystack 字符串* param String $needle 结尾* return Boolean*/ function endWith($haystack, $needle) {$length strlen($needle);if ($length 0) {return true;}return (substr($haystack, -$length) $needle); } /***…

Prometheus 监控 RabbitMQ

1. 安装 RabbitMQ Exporter RabbitMQ Exporter 是连接 RabbitMQ 和 Prometheus 的桥梁,它从 RabbitMQ 收集指标并以 Prometheus 可以理解的格式暴露这些指标。 1.1 下载 RabbitMQ Exporter wget https://github.com/kbudde/rabbitmq_exporter/releases/download/v0.20.0/ra…

前端面试题每日一学_1

今日一问&#xff1a; 下面的JS代码中&#xff0c;执行结果为object的选项是 () A、typeof []; B、typeof {}; C、typeof null; D、typeof undefined;​ 答案和解析可在文章底部查看。 今日面试题&#xff1a; 1、前端SEO优化的方法有哪些&#xff1f; ① 设置合理准确的t…

拉提查合创5步玩转git工具协作代码开发

1 工具使用场景 开发团队使用git版本管理工具&#xff0c;进行协作代码开发过程中&#xff0c;最常用的场景为&#xff1a; &#xff08;1&#xff09;拉取代码 将git远端仓库最新代码拉取到本地。 &#xff08;2&#xff09;提交代码 将本地新增修改的代码提交至git远端仓库中…

【SpringBoot】2 项目搭建

创建项目 1&#xff09;确实本地 jdk 版本 打开命令行窗口&#xff1a;快捷键 Windows R&#xff0c;输入 CMD&#xff0c;敲回车 执行命令&#xff1a;java -version 2&#xff09;在项目 clone 的位置创建 Spring Boot 项目&#xff0c;使用 Maven 进行依赖管理&#xff…

大模型学习(1)

初学者&#xff0c;仅做自己学习记录&#xff0c;如果对你有什么帮助&#xff0c;那更好了。 下面是论文《Attention Is All You Need》的经典transformer架构&#xff0c;在学习的过程中&#xff0c;有很多疑惑。 embedding层在做什么 Transformer的embedding层在做的是将输…

35.【C语言】详解函数递归

目录&#xff1a; 定义 作用 例子1~3 拓展学习 趣味练习 1.定义&#xff1a;函数自己调用自己&#xff08;递推回归&#xff09; int main() {main()return 0; } 这样容易死循环&#xff0c;导致爆栈(Stack Overflow) 所以需要设立限制条件&#xff0c;使执行时越来越接近条…

02 Golang面向对象编程_20240727 课程笔记

视频课程 最近发现越来越多的公司在用Golang了&#xff0c;所以精心整理了一套视频教程给大家&#xff0c;这个是其中的第二部&#xff0c;后续还会有很多。 视频已经录制完成&#xff0c;完整目录截图如下&#xff1a; 课程目录 01 结构体的声明.mp402 使用var根据结构体…

iOS基础---多线程:GCD、NSThread、NSOperation

系列文章目录 iOS基础—多线程&#xff1a;GCD、NSThread、NSOperation 文章目录 系列文章目录一、GCD1.GCD的任务、函数、队列a.任务b.函数c.队列 2.GCD的使用a.同步函数并发队列b.异步函数并发队列c.同步函数串行队列d.异步函数串行队列e.同步函数主队列f.异步函数主队列 3.…

JavaScript 运算符优先级值表格

JavaScript 运算符优先级值 值 运算符 描述 实例 20 ( ) 表达式分组 (3 4) 19 . 成员 person.name 19 [] 成员 person["name"] 19 () 函数调用 myFunction() 19 new 创建 new Date() 17 后缀递增 i 17 -- 后缀递减 …

FastAPI(七十五)实战开发《在线课程学习系统》接口开发-- 创建课程

源码见&#xff1a;"fastapi_study_road-learning_system_online_courses: fastapi框架实战之--在线课程学习系统" 上次我们分享了&#xff0c;FastAPI&#xff08;七十四&#xff09;实战开发《在线课程学习系统》接口开发-- 删除留言 从本篇文章开始&#xff0c;…

如何学习Doris:糙快猛的大数据之路(从入门到专家)

引言:大数据世界的新玩家 还记得我第一次听说"Doris"这个名字时的情景吗?那是在一个炎热的夏日午后,我正在办公室里为接下来的大数据项目发愁。作为一个刚刚跨行到大数据领域的新手,我感觉自己就像是被丢进了深海的小鱼—周围全是陌生的概念和技术。 就在这时,我的…

使用Springcloud Gateway和Spring AI遇到的问题

使用Springcloud Gateway和Spring AI遇到的问题 1. 启动微服务时出现以下问题 Web application could not be started as there was no org.springframework.boot.web.reactive.server.ReactiveWebServerFactory bean defined in the context.解决方法 <dependency>&l…

Vue Pinia 基础

Vue Pinia 是一个专为Vue设计的状态管理库。它提供了一种简单、直观且强大的方式来管理Vue应用中的状态。 Store 用于保存和管理应用的状态。每个store都是一个独立的状态&#xff0c;包含自己的State、Getters和Actions。 State 状态&#xff0c;类似Vue的data。用于存储st…

【GeoJSON】Java 使用 GeoTools 将 SHP 文件转成 GeoJSON 文件

文章目录 引言Maven settings.xml 配置配置项目中的 pom.xml引入 GeoTools Jar 包使用 引言 在使用 GeoTools 时&#xff0c;我们没办法直接使用 Maven 中央库的 GeoTools&#xff0c;所以就需要我们配置一下关于 GeoTools 自己的镜像&#xff0c;所以我们才需要以下这几个步骤…

嵌入式Python、ROS、SLAM、WebSocket和Node.js:智能巡逻监控安防机器人设计流程(代码示例)

项目概述 随着智能技术的发展&#xff0c;智能巡逻机器人在安防、监控和巡逻等领域的应用越来越广泛。本文将介绍一个结合嵌入式系统、机器人技术和后端开发的智能巡逻机器人。该机器人能够自主导航&#xff0c;实时检测异常情况&#xff08;如火灾或入侵者&#xff09;&#…

【北京迅为】《i.MX8MM嵌入式Linux开发指南》-第三篇 嵌入式Linux驱动开发篇-第五十七章 Linux中断实验

i.MX8MM处理器采用了先进的14LPCFinFET工艺&#xff0c;提供更快的速度和更高的电源效率;四核Cortex-A53&#xff0c;单核Cortex-M4&#xff0c;多达五个内核 &#xff0c;主频高达1.8GHz&#xff0c;2G DDR4内存、8G EMMC存储。千兆工业级以太网、MIPI-DSI、USB HOST、WIFI/BT…