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

*JDBC数据库连接步骤
      1.将JDBC驱动的jar添加到项目的依赖中。
      2.加载JDBC驱动
      例如: Class.forName("com.mysql.jdbc.Driver");
      3.连接数据库
      例如:
      Connection con = DriverManager.getConnection(URL,username,password);
      4.获取Statement【PreparedStatement】对象,执行SQL语句
      例如:
      String sql = "SELECT * FROM `stu`";
      Statement stm =  con.createStatement();
      ResultSet rs= stm.executeQuery(sql);
      例如:
       String sql = "SELECT * FROM `user` WHERE `username` =  ? AND `password` = ?";
       PreparedStatement pstm = con.prepareStatement(sql);
       pstm.setObject(1,username);
       pstm.setObject(2,password);
       ResultSet rs= pstm.executeQuery();
      5.处理结果
      例如:List<Student> studentList = new ArrayList<>();
        while(rs.next()){
            Student student = new Student();
            student.setSid(rs.getString("sid"));
            student.setSname(rs.getString("sname"));
            student.setAge(rs.getInt("age"));
            student.setGender(rs.getString("gender"));
            studentList.add(student);
      }
      6.释放资源
      注意:SQL对象资源如IO对象资源一样,不会被垃圾回收器回收。

*JDBC-API
   -  DriverManger(驱动管理器)的作用有两个:
   > 1. 注册驱动:这可以让JDBC知道要使用的是哪个驱动;
   > 2. 获取Connection:如果可以获取到Connection,那么说明已经与数据库连接上了。

   - Connection对象表示连接,与数据库的通讯都是通过这个对象展开的.
   > 1.负责Java程序与Mysql数据库之间的数据传输(通讯)

   -- Statement是用来向数据库发送SQL语句的,这样数据库就会执行发送过来的SQL语句:
   >1. int executeUpdate(String sql):执行更新操作(insert、update、delete等);
   >2. ResultSet executeQuery(String sql):执行查询操作,数据库在执行查询后会把查询结果,查询结果就是ResultSet;

   -  ResultSet对象表示查询结果集,只有在执行查询操作后才会有结果集的产生。
   结果集是一个二维的表格,有行有列。操作结果集要学习移动ResultSet内部的“行光标”,
   以及获取当前行上的每一列上的数据:
   >1. boolean next():使“行光标”移动到下一行,并返回移动后的行是否存在;
   >2. XXX getXXX(int col):获取当前行指定列上的值,参数就是列数,列数从1开始,而不是0。


  -PreparedStatement的使用
   >1. 使用Connection的prepareStatement(String sql):即创建它时就让它与一条SQL模板绑定;
   >2. 调用PreparedStatement的setXXX()系列方法为问号设置值
   >3. 调用executeUpdate()或executeQuery()方法,但要注意,调用没有参数的方法;
   优点:
   - 防止SQL攻击;
   - 提高代码的可读性,以可维护性;
   - 提高效率。
    
 

相关文章:

JDBC*

*JDBC数据库连接步骤 1.将JDBC驱动的jar添加到项目的依赖中。 2.加载JDBC驱动 例如&#xff1a; Class.forName("com.mysql.jdbc.Driver"); 3.连接数据库 例如&#xff1a; Connection con DriverManager.getConnection(URL,us…...

Zookeeper注册中心实战

Java学习手册面试指南&#xff1a;https://javaxiaobear.cn Spring Cloud Zookeeper通过自动配置和绑定到 Spring 环境和其他 Spring 编程模型习惯用法&#xff0c;为 Spring Boot 应用程序提供Apache Zookeeper集成。通过一些简单的注释&#xff0c;您可以快速启用和配置应用…...

1-02VS的安装与测试

一、概述 对于一名C语言程序员而言&#xff0c;进行C语言程序的开发一般需要一个文本编辑器加上一个编译器就足够了。但为了方便起见&#xff0c;我们选择使用集成开发环境——Visual Studio&#xff08;简称VS&#xff09;。安装Visual Studio 下面讲一下如何安装VS&#xff0…...

ctfshow——PHP特性

文章目录 web 89web 90web 91web 92web 93web 94web 95web 96web 97web 98web 99web 100——优先级、eval()用法web 101——RefelctionClass反射类web 102——php伪协议、hex2bin()web103web 104——sha1绕过web 105 web 89 使用人工分配 ID 键的数值型数组绕过preg_match. 两个…...

K8S陈述式资源管理

陈述式 命令行&#xff1a;kubectl命令行工具 优点&#xff1a;90%以上的场景都可以满足&#xff0c;对增&#xff0c;删&#xff0c;查比较方便&#xff0c;对改不是很友好 缺点&#xff1a;命令比较冗长&#xff0c;复杂&#xff0c;难记 声明式 k8s当中的yaml文件来实现资…...

详解Python内置函数 !!!

内置函数就是Python给你提供的, 拿来直接用的函数&#xff0c;比如print&#xff0c;input等。 文章目录 前言 一、和数字相关 1. 数据类型 2. 进制转换 3. 数学运算 二、和数据结构相关 1. 序列 2. 数据集合 3. 相关内置函数 三、和数据结构相关 四、和迭代器生成器相关 五、字…...

使用Vue3 + Vite创建uni-app项目(Webstorm)

使用Vue3 Vite创建uni-app项目&#xff08;Webstorm&#xff09; 参考&#xff1a;前端VUE3Vite UniAPP-- 框架搭建_uniapp vite-CSDN博客 // 参考github.com的库&#xff1a;https://github.com/dcloudio/uni-preset-vue npx degit dcloudio/uni-preset-vue#vite-ts vite-vu…...

【js】js实现多个视频连续播放:

文章目录 一、效果&#xff1a;二、实现&#xff1a;三、案例&#xff1a; 一、效果&#xff1a; 二、实现&#xff1a; <!DOCTYPE html> <html> <head><title>Video Player</title><style>#progressBar { width: 800px;height: 20px;b…...

使用openssl 生成pfx格式证书时报错:unable to load certificates

问题现象包如下&#xff1a; 之前在centos上使用openssl部署证书服务器以及颁发证书的时候遇到的问题&#xff0c;在进行个人证书生成之后需要形成pfx格式证书&#xff0c;结果过程中报错了。网上类似资料比较少&#xff0c;做个记录。 生成pfx格式证书的命令&#xff1a; o…...

微信小程序 分享按钮 监听用户分享成功

代码 <view><button class"btnLq ed flex justify-center" open-type"share" click"getAward">点击分享</button> </view>export default {data(){return{shareMd:false,//分享埋点}},onShow(){//if(this.shareMd){uni.…...

数据结构-怀化学院期末题

题目&#xff1a; 利用希尔排序算法实现线性表的排序。希尔排序是根据给定的增量序列将线性表分隔成某个“增量”的记录组成一个子序例&#xff0c;在子序列中采用直接插入排序完成。 输入 第一行为元素个数n(1<n<1000)&#xff0c;第二行为n个元素值(整数)&#xff0c;即…...

跟cherno手搓游戏引擎【1】:配置与入口点

环境配置&#xff1a; 编译环境&#xff1a;VS2019 创建两个项目&#xff1a; 设置Sandbox为启动项&#xff1a; 设置sandbox的配置属性-常规-输出目录\中间目录为如下&#xff1a; 预处理定义&#xff1a;为了配置一些只有windows才能用的函数。 设置YOTOEngin&#xff08;我…...

25计算机专业考研经验贴之准备篇

Hello各位小伙伴&#xff0c;大家新年好&#xff01; 马上就要进入寒假假期了&#xff0c;25考研也该提上日程了。今天先跟大家分享一下大家在假期可以先做起来的准备工作。 【选择学校】 择校是个非常重要的内容&#xff0c;因为不同学校的考试内容是不一样的&#xff0c;有些…...

机器人相关知识

机器人学&#xff08;Robotics) 一些基础概念 位姿 位姿位置姿态 位姿的表示 刚体 刚性物体是一组粒子的集合&#xff0c;其中任意两个粒子之间的距离保持固定&#xff0c;不受物体运动或施加在物体上的力的影响。 “完全不可变形”的物体就是刚体。 刚体位置 刚性连杆 …...

八股文打卡day22——操作系统(5)

面试题&#xff1a;什么是死锁&#xff1f;如何避免死锁&#xff1f; 我的回答&#xff1a; 死锁是两个或者多个进程都占有各自的资源&#xff0c;然后都互相请求资源&#xff0c;导致互相都陷入了阻塞状态。 如何避免死锁呢&#xff1f; 首先&#xff0c;造成死锁有四个必要…...

SQL Server 权限管理

CSDN 成就一亿技术人&#xff01; 2024年 第一篇 难度指数&#xff1a;* * CSDN 成就一亿技术人&#xff01; 目录 1. 权限管理 什么是权限管理&#xff1f; SQL server的安全机制 服务器级角色 数据库级角色 对象级角色 2. 创建用户 赋予权限 最重要的一步骤 1. 权限…...

ReentrantLock底层原理学习一

J.U.C 简介 Java.util.concurrent 是在并发编程中比较常用的工具类&#xff0c;里面包含很多用来在并发场景中使用的组件。比如线程池、阻塞队列、计时器、同步器、并发集合等等。并发包的作者是大名鼎鼎的 Doug Lea。我们在接下来的课程中&#xff0c;回去剖析一些经典的比较…...

数字孪生在增强现实(AR)中的应用

数字孪生在增强现实&#xff08;Augmented Reality&#xff0c;AR&#xff09;中的应用可以提供更丰富、交互性更强的现实世界增强体验。以下是数字孪生在AR中的一些应用&#xff0c;希望对大家有所帮助。北京木奇移动技术有限公司&#xff0c;专业的软件外包开发公司&#xff…...

【数据仓库与联机分析处理】多维数据模型

目录 一、数据立方体 二、数据模型 &#xff08;一&#xff09;星形模型 &#xff08;二&#xff09;雪花模式 &#xff08;三&#xff09;事实星座模式 三、多维数据模型中的OLAP操作 &#xff08;一&#xff09;下钻 &#xff08;二&#xff09;上卷 &#xff08;三…...

【网络面试(3)】浏览器委托协议栈完成消息的收发

前面的博客中&#xff0c;提到过很多次&#xff0c;浏览器作为应用程序&#xff0c;本身是不具备向网络中发送网络请求的能力&#xff0c;要委托操作系统的内核协议栈来完成。协议栈再调用网卡驱动&#xff0c;通过网卡将请求消息发送出去&#xff0c;本篇博客就来探讨一下这个…...

Kotlin: Jetpack — ViewModel简单应用

ViewModel 概览 Android Jetpack 的一部分。 ViewModel 类是一种业务逻辑或屏幕级状态容器。它用于将状态公开给界面&#xff0c;以及封装相关的业务逻辑。 它的主要优点是&#xff0c;它可以缓存状态&#xff0c;并可在配置更改后持久保留相应状态。这意味着在 activity 之…...

【Java技术专题】「攻破技术盲区」攻破Java技术盲点之unsafe类的使用指南(打破Java的安全管控— sun.misc.unsafe)

Java后门机制 — sun.misc.unsafe 打破Java的安全管控关于Unsafe的编程建议实例化Unsafe后门对象使用sun.misc.Unsafe创建实例单例模式处理实现浅克隆&#xff08;直接获取内存的方式&#xff09;直接使用copyMemory原理分析 密码安全使用Unsafe类—示例代码 运行时动态创建类超…...

私有云平台搭建openstack和ceph结合搭建手册

OpenStack与云计算 什么是云&#xff1f; 如何正确理解云&#xff0c;可以从以下几个方面。 云的构成。 用户&#xff1a;对用户而言是透明无感知的&#xff0c;不用关心底层构成&#xff0c;只需要知道利用云完成自己任务即可。 云提供商&#xff1a;对云资产管理和运维。 云…...

debug mccl 02 —— 环境搭建及初步调试

1, 搭建nccl 调试环境 下载 nccl 源代码 git clone --recursive https://github.com/NVIDIA/nccl.git 只debug host代码&#xff0c;故将设备代码的编译标志改成 -O3 (base) hipperhipper-G21:~/let_debug_nccl/nccl$ git diff diff --git a/makefiles/common.mk b/makefiles/…...

ros python 接收GPS RTK 串口消息再转发 ros 主题消息

代码是一个ROS(Robot Operating System)节点,用于从GPS设备读取RTK(实时动态)数据并通过ROS主题发布。 步骤: 导入必要的模块: rospy 是ROS的Python库,用于ROS的节点、发布者和订阅者。serial 用于串行通信。NavSatFix 和 NavSatStatus 是从GPS接收的NMEA 0183标准消息…...

2024年网络安全竞赛-页面信息发现任务解析

页面信息发现任务说明: 服务器场景:win20230305(关闭链接)在渗透机中对服务器信息收集,将获取到的服务器网站端口作为Flag值提交;访问服务器网站页面,找到主页面中的Flag值信息,将Flag值提交;访问服务器网站页面,找到主页面中的脚本信息,并将Flag值提交;访问服务器…...

ARM DMA使用整理

Direct Memory Access&#xff0c; 直接存储访问。同SPI,IIC,USART等一样&#xff0c;属于MCU的一个外设&#xff0c;用于在不需要MCU介入的情况下进行数据传输。可以将数据从外设传输到flash&#xff0c;也可以将数据从flash传输到外设&#xff0c;或者flash内部数据移动。 它…...

移动通信原理与关键技术学习(第四代蜂窝移动通信系统)

前言&#xff1a;LTE 标准于2008 年底完成了第一个版本3GPP Release 8的制定工作。另一方面&#xff0c;ITU 于2007 年召开了世界无线电会议WRC07&#xff0c;开始了B3G 频谱的分配&#xff0c;并于2008 年完成了IMT-2000&#xff08;即3G&#xff09;系统的演进——IMT-Advanc…...

光明源@智慧厕所技术:优化生活,提升卫生舒适度

在当今数字科技飞速发展的时代&#xff0c;我们的日常生活正在经历一场革命&#xff0c;而这场革命的其中一个前沿领域就是智慧厕所技术。这项技术不仅仅是对传统卫生间的一次升级&#xff0c;更是对我们生活品质的全方位提升。从智能感应到数据分析&#xff0c;从环保设计到舒…...

【Bootstrap学习 day13】

Bootstrap5 下拉菜单 下拉菜单通常用于导航标题内&#xff0c;在用户鼠标悬停或单击触发元素时显示相关链接列表。 基础的下拉列表 <div class"dropdown"><button type"button" class"btn btn-primary dropdown-toggle" data-bs-toggl…...

网站建设 昆明 价格/性能优化大师

题目描述 给定String类型的数组strArr&#xff0c;再给定整数k&#xff0c;请严格按照排名顺序打印 出次数前k名的字符串。 [要求] 如果strArr长度为N&#xff0c;时间复杂度请达到O(N \log K)O(NlogK) 输出K行&#xff0c;每行有一个字符串和一个整数&#xff08;字符串表示…...

网站做淘宝客赚钱吗/连接友谊

var pathdocument.location.href.substring(0,document.location.href.lastIndexOf(/));...

专业做农牧应聘的网站/自己做网站如何赚钱

为什么80%的码农都做不了架构师&#xff1f;>>> ;;;;$i 123; ;;;;echo $i, PHP_EOL;这段代码是不是很奇葩&#xff0c;使用;作为代码缩进符号但是它是合法的语句&#xff0c;可以正常运行。并且在Java、PHP等语言中&#xff0c;都可以正常使用。 我第一次得知这种…...

浙江做网站的公司有哪些/外贸营销系统

斜杠与反斜杠 2013-11-13 17:32 876人阅读 评论(0) 收藏 举报分类&#xff1a;C/C&#xff08;121&#xff09; 斜杠&#xff0c;slash&#xff1a;/反斜杠&#xff0c;backslash&#xff1a;\在Unix中&#xff0c;文件系统用斜杠&#xff08;slash&#xff0c;/&#xff09;分…...

自助网站开发/seo属于技术还是营销

作者&#xff08;本文内容来源&#xff09;&#xff1a;Think Like a Data Storyteller workshop翻译&#xff1a;王威力 &#xff1b;校对&#xff1a;白静本文约1800字&#xff0c;建议阅读5分钟。本文介绍了新手数据讲师所犯的最常见的错误&#xff0c;以及如何改正它们。图…...

企业网站怎么做外链/试分析网站推广和优化的原因

首先&#xff0c; vim的设置允许简写 // 单击一次tab&#xff0c;停靠&#xff0c; 停止在 4个spaces距离处 set tabstop4 &#xff0c; 可以简写为&#xff1a; set ts4 // 允许将tab转换为空格 turn tab keypresses into spaces. set expandtab (这样可以获得最大的兼容性&am…...