【JavaWeb学习Day11】
java程序操作数据库(JDBC)
JDBC:(Java DataBase Connectivity),就是使用Java语言操作关系型数据库的一套API。
本质:
1.sun公司官方定义的一套操作所有关系型数据库的规范、即接口。
2.各个数据库厂商去实现这套接口,提供数据库驱动jar包。
3.我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类。
01.入门程序:
1.需求:基于JDBC程序,执行update语句(update user set age = 25 where id = 1)
2.步骤:
准备工作:创建一个maven项目,引入依赖;并准备数据库表user
代码实现:编写JDBC程序,操作数据库
public void testUpdate() throws Exception {//1.注册驱动Class.forName("com.mysql.jdbc.Driver");//2.获取数据库连接//标准的 JDBC URL 格式:jdbc:mysql://hostname:port/databasenameString url="jdbc:mysql://localhost:3306/web01";//连接时一定注意这些数据不能错String username = "root";String password = "1234";Connection connection = DriverManager.getConnection(url, username, password);//3.获取SQL语句执行对象Statement statement = connection.createStatement();//4.执行SQL
int i = statement.executeUpdate("update user set age = 25 where id = 1");//DMLSystem.out.println("SQL执行完毕影响的记录数为:" + i);//5.释放资源statement.close();connection.close();
}
02.JDBC-查询数据:
1.需求:基于JDBC执行如下select语句,将查询结果封装到User对象中。
2.SQL:select * from user where username = 'daoqiao' and password = '123456'
3.ResultSet(结果集对象):ResultSet re = statement.executeQuery(),next():将光标从当前位置向前移动一行,并判断当前行是否为有效行,返回值为Boolean,返回值为true表示有效行,当前行有数据,false为无效行,当前行没有数据。getXxx():获取数据,可以根据列的编号获取,也可以根据列名获取(推荐)。
@Testpublic void testSelect(){String URL = "jdbc:mysql://127.0.0.1:3306/web01";String USER = "root";String PASSWORD = "1234";
Connection conn = null;PreparedStatement stmt = null;ResultSet rs = null;//封装查询返回的结果try{//1.注册驱动Class.forName("com.mysql.cj.jdbc.Driver");//2.打开链接conn = DriverManager.getConnection(URL,USER,PASSWORD);//3.执行查询String sql = "select id,username,password,name,age from user where username = ? AND password = ?";//预编译SQLstmt = conn.prepareStatement(sql);stmt.setString(1,"daqiao");stmt.setString(2,"123456");rs = stmt.executeQuery();//4.处理结果集while (rs.next()){User user = new User(rs.getInt("id"),rs.getString("username"),rs.getString("password"),rs.getString("name"),rs.getInt("age"));System.out.println(user);
}
} catch (Exception e) {e.printStackTrace();} finally {//5.关闭资源try{if(rs!=null) rs.close();if(stmt!=null) stmt.close();if (conn!=null) conn.close();} catch (SQLException se){se.printStackTrace();}}
}
03.预编译SQL
优势一:可以防止SQL注入,更安全。
SQL注入:通过控制输入来修改实现定义好的SQL语句,以达到执行代码对服务器进行攻击的方法。
优势二:性能更高。
相关文章:
![](https://i-blog.csdnimg.cn/direct/3159ed9dda334de5806fe82c1342da16.png)
【JavaWeb学习Day11】
java程序操作数据库(JDBC) JDBC:(Java DataBase Connectivity),就是使用Java语言操作关系型数据库的一套API。 本质: 1.sun公司官方定义的一套操作所有关系型数据库的规范、即接口。 2.各个数据库厂商去…...
![](https://img-blog.csdnimg.cn/direct/432652a195ec44c2bb5260d1cfd250c4.png)
rom定制系列------小米max3安卓12 miui14批量线刷 默认开启usb功能选项 插电自启等
小米Max3是小米公司于2018年7月19日发布的机型。此机型后在没有max新型号。采用全金属一体机身设计,配备6.9英寸全面屏.八核处理器骁龙636,后置双摄像头1200万500万像素,前置800万像素.机型代码 :nitrogen.官方最终版为稳定版12.5…...
![](https://i-blog.csdnimg.cn/img_convert/d4ce8b43aeb313524cfd1a7aa27e1e07.jpeg)
CES 2025|美格智能高算力AI模组助力“通天晓”人形机器人震撼发布
当地时间1月7日,2025年国际消费电子展(CES 2025)在美国拉斯维加斯正式开幕。美格智能合作伙伴阿加犀联合高通在展会上面向全球重磅发布人形机器人原型机——通天晓(Ultra Magnus)。该人形机器人内置美格智能基于高通QC…...
![](https://www.ngui.cc/images/no-images.jpg)
汽车电子相关的协议UDS、DOIP、CAN
UDS协议 UDS(Unified Diagnostic Services,统一诊断服务协议) 是一种标准化的通信协议,广泛应用于汽车电子系统中,尤其是在车辆诊断和服务过程中。它用于车辆的诊断、维护、控制和测试,支持通过车载诊断接…...
![](https://i-blog.csdnimg.cn/direct/70580766fa6a48569e1b8bbac3563fba.png)
k8s笔记29--使用kyverno提高运维效率
k8s笔记29--使用kyverno提高运维效率 介绍原理安装应用场景自动修正测试环境pod资源强制 Pod 标签限制容器镜像来源禁止特权容器其它潜在场景 注意事项说明 介绍 Kyverno是一个云原生的策略引擎,它最初是为k8s构建的,现在也可以在k8s集群之外用作统一的…...
Life Long Learning(李宏毅)机器学习 2023 Spring HW14 (Boss Baseline)
1. 终身学习简介 神经网络的典型应用场景是,我们有一个固定的数据集,在其上训练并获得模型参数,然后将模型应用于特定任务而无需进一步更改模型参数。 然而,在许多实际工程应用中,常见的情况是系统可以不断地获取新数据,例如 Web 应用程序中的新用户数据或自动驾驶中的…...
![](https://www.ngui.cc/images/no-images.jpg)
libc.so.6不兼容
1、查看电脑所有libc.so.6 daviddavid-Shangqi-X4270:~/MySoft/ubuntusoft$ locate libc.so.6 /home/david/MySoft/ubuntusoft/EXEApp/libc.so.6 /home/david/MySoft/ubuntusoft/EXEApp_TEST/libc.so.6 /home/david/MySoft/ubuntusoft/RTMG_APP/libc.so.6 /home/david/MySoft/…...
![](https://i-blog.csdnimg.cn/direct/2d17ae384be046bb8a1aef1ba20ad042.jpeg)
树的模拟实现
一.链式前向星 所谓链式前向星,就是用链表的方式实现树。其中的链表是用数组模拟实现的链表。 首先我们需要创建一个足够大的数组h,作为所有结点的哨兵位。创建两个足够大的数组e和ne,一个作为数据域,一个作为指针域。创建一个变…...
![](https://i-blog.csdnimg.cn/direct/18bc1f2da9854c9b90bbeced20eed7b3.png)
AsyncOperation.allowSceneActivation导致异步加载卡死
先看这段代码,有个诡异的问题,不确定是不是bug public class Test : MonoBehaviour {void Start(){StartCoroutine(LoadScene(Ego.LoadingLevel));}IEnumerator LoadScene(string sceneName){LoadingUI.UpdateProgress(0.9f);yield return new WaitForS…...
![](https://i-blog.csdnimg.cn/blog_migrate/aadffb113c7529bb0a991c3f73e8f846.gif)
如何搭建 Vue.js 开源项目的 CI/CD 流水线
网罗开发 (小红书、快手、视频号同名) 大家好,我是 展菲,目前在上市企业从事人工智能项目研发管理工作,平时热衷于分享各种编程领域的软硬技能知识以及前沿技术,包括iOS、前端、Harmony OS、Java、Python等…...
![](https://i-blog.csdnimg.cn/direct/7f3cdadf46044c3aaf5c0cea9dbb8bb1.png)
单通道串口服务器(三格电子)
一、产品介绍 1.1 功能简介 SG-TCP232-110 是一款用来进行串口数据和网口数据转换的设备。解决普通 串口设备在 Internet 上的联网问题。 设备的串口部分提供一个 232 接口和一个 485 接口,两个接口内部连接,同 时只能使用一个口工作。 设 备 的网 口…...
![](https://i-blog.csdnimg.cn/direct/3925783103cb496b93c6aa32ab087f31.png)
【Excel/WPS】根据平均值,生成两列/多列指定范围的随机数/随机凑出两列数据
原理就是通过随机生成函数和平均值函数。 适用场景:在总体打分后,需要在小项中随机生成小分数 第一列:固定的平均值A2第二列: RANDBETWEEN(A2-10,A210)第三列:根据第二列用平均值函数算除 A2*2-B2这是随机值1的公式&am…...
![](https://i-blog.csdnimg.cn/direct/a0a8def3ee594c46bce5100de9b3d11b.png)
使用网页版Jupyter Notebook和VScode打开.ipynb文件
目录 正文 1、网页版Jupyter Notebook查看 2、VScode查看 因为总是忘记查看文件的网址,收藏了但分类众多每次都找不到……当个记录吧(/捂脸哭)! 正文 此处以gitub中的某个仓库为例: https://github.com/INM-6/mu…...
![](https://i-blog.csdnimg.cn/direct/08f3aa82d62d4b5982c92fdcfc3fb7da.png)
记录一下vue2项目优化,虚拟列表vue-virtual-scroll-list处理10万条数据
文章目录 封装BrandPickerVirtual.vue组件页面使用组件属性 select下拉接口一次性返回10万条数据,页面卡死,如何优化??这里使用 分页 虚拟列表(vue-virtual-scroll-list),去模拟一个下拉的内容…...
![](https://www.ngui.cc/images/no-images.jpg)
CDA数据分析师一级经典错题知识点总结(5)
1、数值型缺失值用中位数补充,分类数据用众数补充。 2、偏态系数>1就是高度偏,0.5到1是中度。 3、分布和检验 在 t检验之前进行 F检验的目的是确保 t检验的方差齐性假设成立。如果 F检验结果显示方差不相等,则需要切换到调整后的 t 检验…...
![](https://www.ngui.cc/images/no-images.jpg)
服务器、电脑和移动手机操作系统
一、服务器操作系统 1、Windows Server 开发商是微软公司。友好的用户界面、与微软生态系统的高度集成、提供了广泛的企业级功能(如Active Directory、DNS、DHCP服务等)。适合需要大量运行Microsoft应用和服务的企业环境,如SQL Server等。经…...
![](https://i-blog.csdnimg.cn/direct/53fc66a83b5e454d9b94c9c87c72543b.gif)
深入解析 Flink 与 Spark 的性能差异
💖 欢迎来到我的博客! 非常高兴能在这里与您相遇。在这里,您不仅能获得有趣的技术分享,还能感受到轻松愉快的氛围。无论您是编程新手,还是资深开发者,都能在这里找到属于您的知识宝藏,学习和成长…...
![](https://i-blog.csdnimg.cn/img_convert/5525c4636081eb6c6835f17b9e40fd4e.png)
如何在 Linux、MacOS 以及 Windows 中打开控制面板
控制面板不仅仅是一系列图标和菜单的集合;它是通往优化个人计算体验的大门。通过它,用户可以轻松调整从外观到性能的各种参数,确保他们的电脑能够完美地适应自己的需求。无论是想要提升系统安全性、管理硬件设备,还是简单地改变桌…...
![](https://www.ngui.cc/images/no-images.jpg)
微信小程序中 隐藏scroll-view 滚动条 网页中隐藏滚动条
在微信小程序中隐藏scroll-view的滚动条可以通过以下几种方法实现: 方法一:使用CSS隐藏滚动条 在小程序的样式文件中(如app.wxss或页面的.wxss文件),添加以下CSS代码来隐藏滚动条: scroll-view ::-webkit…...
![](https://i-blog.csdnimg.cn/direct/f4ac87383d504d2ab6d2e01b46107127.png)
Java 实现 Elasticsearch 查询当前索引全部数据
Java 实现 Elasticsearch 查询当前索引全部数据 需求背景通常情况Java 实现查询 Elasticsearch 全部数据写在最后 需求背景 通常情况下,Elasticsearch 为了提高查询效率,对于不指定分页查询条数的查询语句,默认会返回10条数据。那么这就会有…...
![](https://i-blog.csdnimg.cn/direct/f692f1ce4ee7448aa77d936e7954cef3.png)
android刷机
android ota和img包下载地址: https://developers.google.com/android/images?hlzh-cn android启动过程 线刷 格式:ota格式 模式:recovery 优点:方便、简单,刷机方法通用,不会破坏手机底层数据࿰…...
![](https://i-blog.csdnimg.cn/direct/453dc32888214a9090c9b35aba0c3251.png)
【25考研】西南交通大学计算机复试重点及经验分享!
一、复试内容 上机考试:考试题型为编程上机考试,使用 C 语言,考试时长包括 15 分钟模拟考试和 120 分钟正式考试,考试内容涵盖顺序结构、选择结构、循环结构、数组、指针、字符串处理、函数、递归、结构体、动态存储、链表等知识点…...
![](https://www.ngui.cc/images/no-images.jpg)
OpenCV相机标定与3D重建(49)将视差图(disparity map)重投影到三维空间中函数reprojectImageTo3D()的使用
操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 将视差图像重投影到3D空间。 cv::reprojectImageTo3D 是 OpenCV 库中的一个函数,用于将视差图(disparity map)…...
![](https://i-blog.csdnimg.cn/direct/f5de79d12785476ca96a3e66f7339a59.gif)
学习HTTP Range
HTTP Range 请求 一种通过指定文件字节范围加载部分数据的技术,广泛用于断点续传、流媒体播放、分布式文件系统的数据分片加载等场景。 请求格式-在请求头中使用 Range 字段指定所需的字节范围 Range: bytes0-1023// bytes0-1023:表示请求文件的第 0 …...
![](https://i-blog.csdnimg.cn/direct/1fc6814bc0184e788d2d9e26125cf6b7.png)
大语言模型训练的数据集从哪里来?
继续上篇文章的内容说说大语言模型预训练的数据集从哪里来以及为什么互联网上的数据已经被耗尽这个说法并不专业,再谈谈大语言模型预训练数据集的优化思路。 1. GPT2使用的数据集是WebText,该数据集大概40GB,由OpenAI创建,主要内…...
![](https://www.ngui.cc/images/no-images.jpg)
Webpack和Vite的区别
一、构建速度方面 webpack默认是将所有模块都统一打包成一个js文件,每次修改都会重写构建整个项目,自上而下串行执行,所以会随着项目规模的增大,导致其构建打包速度会越来越慢 vite只会对修改过的模块进行重构,构建速…...
![](https://i-blog.csdnimg.cn/direct/3c737c4f170847d5a27fb5c2dd1be5c6.png)
【再谈设计模式】模板方法模式 - 算法骨架的构建者
一、引言 在软件工程、软件开发过程中,我们经常会遇到一些算法或者业务逻辑具有固定的流程步骤,但其中个别步骤的实现可能会因具体情况而有所不同的情况。模板方法设计模式(Template Method Design Pattern)就为解决这类问题提供了…...
![](https://i-blog.csdnimg.cn/direct/295e04e58ee64544980bce4fd969671e.webp#pic_center)
Bytebase 3.1.1 - 可定制的快捷访问首页
🚀 新功能 可定制的快捷访问首页。 支持查询 Redis 集群中所有节点。 赋予项目角色时,过期时间可以定义精确到秒级的时间点。 🔔 重大变更 移除 Database 消息里的实例角色信息。调用 GetInstance 或 ListInstanceRoles 以获取实例角色信息…...
![](https://i-blog.csdnimg.cn/direct/22532575528c402488d057d9ca7ceec0.png)
Java阶段四04
第4章-第4节 一、知识点 CSRF、token、JWT 二、目标 理解什么是CSRF攻击以及如何防范 理解什么是token 理解什么是JWT 理解session验证和JWT验证的区别 学会使用JWT 三、内容分析 重点 理解什么是CSRF攻击以及如何防范 理解什么是token 理解什么是JWT 理解session验…...
![](https://www.ngui.cc/images/no-images.jpg)
B2C API安全警示:爬虫之外,潜藏更大风险挑战
在数字化时代,B2C(Business-to-Consumer)电子商务模式已成为企业连接消费者、推动业务增长的重要桥梁。而B2C API(应用程序编程接口)作为企业与消费者之间数据交互的桥梁,其安全性更是至关重要。然而&#…...
![](https://img2018.cnblogs.com/blog/1550993/201902/1550993-20190220143634742-690880715.png)
郑州网站制作建设/西地那非片的功效与作用
一、常用命令1、diff A、diff -q 源文件 目标文件 (快速比较文件是否相同) 2、ifconfig、nmcli (查看配置信息) 命令输入注意: Windows 查看网卡配置信息输入命令为:ipconfig Linux 查看网卡配置信息输入命…...
![](https://img-blog.csdnimg.cn/img_convert/1e7a5ab4a57446ccfdd985c974b72df6.png)
自媒体平台注册方法/夫唯老师seo
前面已经详细介绍了从PL端如何用AXI总线去控制DDR的读写,并且从AXI_BRESP的返回值来看,我们也是成功写入了的。但是没有通过别的方式来验证写入的数据的话,总是感觉差了点什么。今天试了一把从PS端直接读取DDR里面的数据,刚好跟PL…...
![](https://img-blog.csdnimg.cn/img_convert/fad54c24bab45be3afa962d6574cd78c.gif)
对新网站做seo大概需要多久/手机百度推广怎么打广告
java讲讲几种常见的排序算法(二)目录堆排序思路:构建一个小顶堆,小顶堆就是棵二叉树,他的左右孩子均大于他的根节点(大顶堆反之)。构建完一个小顶堆后,开始排序。 将最后一个节点和第一个节点交换位置(根节点是最小的,…...
![](/images/no-images.jpg)
wordpress做ftp/百度一下 官方网
文章目录 概论对比HashMap 的初始容量默认11 的初始容量任意指定非负的容量对比HashMap 的 对null 值的支持HashTable key value 都不支持null升级HashTable 使其支持null 做value对比 HashTable 的继承关系DictionaryHashtable线程安全contains方法debug 源码 put 方法总结你觉…...
![](http://img3m1.ddimg.cn/5/27/20021171-1_w_13.jpg)
网站为什么要seo?/今日头条权重查询
网站 更多书籍点击进入>> CiCi岛 下载 电子版仅供预览及学习交流使用,下载后请24小时内删除,支持正版,喜欢的请购买正版书籍 电子书下载(皮皮云盘-点击“普通下载”)购买正版 封页 编辑推荐 请关注Head First系列其他新书 ★荣获…...
![](https://img-blog.csdnimg.cn/77e6ba836af44406bfbbf808c51c1db3.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBASm9obm55TGluMDA=,size_20,color_FFFFFF,t_70,g_se,x_16)
韶关网站建设墨子/注册公司流程和费用
Configuration注解 配置类 里面使用Bean标注在方法上,通过该方式给容器注册组件,以方法名作为组件的id(也可以通过Bean(“组件名”) 显示指定),返回类型就是组件类型,返回值就是组件在容器中的实例。默认也…...