// 包名
package com.zhulx.JDBC; // 导入实例类
import com.zhulx.pojo.Account; import java.sql.*;
import java.util.ArrayList;
import java.util.List; /**
* JDBC 快速入门
* **/
public class JDBC02 {
// throws Exception 说明此方法不会处理异常
public static void main(String[] args) throws Exception {
// TODO 把查询到的数据都放到ArrayList 【 返回给前端的数据 】
// 1. 注册驱动 【 固定写法 】 /**
* JDBC 常用接口和类
* (1) Driver 接口:加载驱动程序。
* (2) DriverManager 类:装人所需的 JDBC 驱动程序,编程时调用它的方法来创建连接。
* (3) Connection 接口:编程时使用该类对象创建 Statement 对象。
* (4) Statement 接口:编程时使用该类对象得到 ResultSet 对象。
* (5) ResultSet 类:负责保存 Statement 执行后所产生的查询结果。
*
* */ /**
* 任务:
* 查询account账户数据,封装Account对象中,并且存储到ArrayList中
* 1. 定义实体类Account 【就是有get和set函数的类就是实体类】
* 2. 查询数据,封装到ArrountList中
* 3. 将Account对象 存入ArrayList集合中
* ArrayList就是我返回给前端的数据是 【 对象数组 】
*/
// Class.forName("com.mysql.cj.jdbc.Driver"); // 2. 获取连接 【 就是关联数据库 】 访问 test 数据库
String url = "jdbc:mysql://127.0.0.1:3306/test";
String username = "root";
String password = "abc123";
Connection conn = DriverManager.getConnection(url, username, password); // 3. 定义 sql DQL
String sql = "select * from account"; // 4. 获取执行 sql 对象 statement
Statement stmt = conn.createStatement() ;
// 创建集合
List<Account> List; List = new ArrayList<>(); System.out.println(List);
// 5. 执行 sql 【返回值是受影响的行数】
ResultSet rs = stmt.executeQuery(sql); // 6. 处理结果遍历 rs 所有的数据
while(rs.next()) {
// ps: 1 2 3 都是行数
// 获取数据 每查询一个数据就创建一个对象然后放到数组里面
Account account = new Account();
System.out.println(account);
int id = rs.getInt(1);
String name = rs.getString(2);
double money = rs.getDouble(3) ; // 赋值
account.setId(id);
account.setName(name);
account.setMoney(money); // 存入集合
List.add(account);
} System.out.println(List); // 7. 释放资源
stmt.close();
conn.close();
rs.close();
}
}

JDBC后端实现查询功能逻辑的更多相关文章

  1. 精通SpringBoot--分页查询功能的实现

    本文将介绍如何实现分页查询功能,推荐使用github的pagehelper插件实现(事实上大家基本都是这么干的),但本文的实现方式和大多数不同,废话少说,现在就带着大家看看区别在哪里.先看pom.xm ...

  2. Thymeleaf前后端分页查询

    分页查询是一个很常见的功能,对于分页也有很多封装好的轮子供我们使用. 比如使用mybatis做后端分页可以用Pagehelper这个插件,如果使用SpringDataJPA更方便,直接就内置的分页查询 ...

  3. OJ2.0userInfo页面Modify逻辑bug修复,search功能逻辑实现

    这周的主要任务:userInfo页面Modify逻辑bug修复,search功能逻辑实现. (一)Modify逻辑bug修复: 这里存在的bug就是在我们不重置password的时候依照前面的逻辑是不 ...

  4. 使用jdbc拼接条件查询语句时如何防止sql注入

    本人微信公众号,欢迎扫码关注! 使用jdbc拼接条件查询语句时如何防止sql注入 最近公司的项目在上线时需要进行安全扫描,但是有几个项目中含有部分老代码,操作数据库时使用的是jdbc,并且竟然好多都是 ...

  5. jQuery对标签select优化:实现模糊搜索查询功能

    由于select标签中的option条数较多,翻页查询比较麻烦,需要对select标签进行优化,解决方法是通过增加模糊查询功能来提高用户体验感. 优化后的界面如下: 在实现这个优化的过程中,参考了两个 ...

  6. 用Java实现异构数据库的高效通用分页查询功能

    不同数据库的分页查询语句有着较大区别,其中MySQL数据的limit offset语法最为简单,而SQL Server数据库和Oracle数据库的分页就比较复杂了. 网上常见的SQL Server和O ...

  7. go语言实战教程之管理员查询功能、退出功能

    前面第10节课内容中已经学习开发完成了管理员登陆功能.本节课我们将继续学习开发完成管理员信息查询功能.管理员退出功能 管理员信息查询功能 请求及路由映射 管理员信息查询接口 接口名称:获取管理员信息. ...

  8. Python与数据库[2] -> 关系对象映射/ORM[5] -> 利用 sqlalchemy 实现关系表查询功能

    利用 sqlalchemy 实现关系表查询功能 下面的例子将完成一个通过关系表进行查询的功能,示例中的数据表均在MySQL中建立,建立过程可以使用 SQL 命令或编写 Python 适配器完成. 示例 ...

  9. jsp 实现查询功能

    要求: 实现查询功能 1.数据库代码 create database mvce; use mvce; create table test2( id int not null identity, tna ...

  10. 使用juqery-ui完成联想查询功能

    最近公司的项目有个需求,需要使用联想查询功能.就是一个文本输入框,在输入的时候获取值去后端模糊查询然后按照列表显示在下面.效果如下图: 经过搜索找到这个插件,查阅资料可以完成这个功能,即可以实现静态数 ...

随机推荐

  1. 【SpringCloud】 Re02 Nacos

    运行Nacos注册中心 win版Nacos在bin目录下打开cmd 执行此命令以运行单机模式的Nacos startup.cmd -m standalone 控制台输出: Microsoft Wind ...

  2. 如何在无窗口模式下运行GPG——如何在命令行模式下使用gpg生成秘钥:How to make gpg prompt for passphrase on CLI——GPG prompt for password in command line

    参考: Unable to generate a key with GnuPG (agent_genkey failed: No such file or directory) ["No s ...

  3. aarch64架构CPU下Ubuntu系统环境源码编译pytorch-gpu-2.0.1版本

    准备事项: 1. pytorch源码下载: 源码的官方地址: https://github.com/pytorch/pytorch 但是这里我们不能简单的使用git clone命令下载,因为pytor ...

  4. spring5的新特性

    1.背景 2.依赖环境的变化 整个 Spring5 框架的代码基于 Java8,运行时兼容 JDK9,许多不建议使用的类和方 法在代码库中删除 3.自带了通用的日志封装 3.1.日志的简单使用 Spr ...

  5. [COCI2013-2014#6] KRUŽNICE 题解

    前言 题目链接:洛谷. 题目分析 显然,手模样例发现答案分为以下几个贡献: 所有圆外面的那个大平面,贡献为 \(1\). 每个圆至少被分成一部分,贡献为 \(n\). 如果有一个圆被"拦腰截 ...

  6. 微服务全链路跟踪:grpc集成jaeger

    微服务全链路跟踪:grpc集成zipkin 微服务全链路跟踪:grpc集成jaeger 微服务全链路跟踪:springcloud集成jaeger 微服务全链路跟踪:jaeger集成istio,并兼容u ...

  7. 一口Linux公众号粉丝破万了!

    0.楔子 终于万粉了! 总算熬过了冷启动阶段. 一万这个小目标看着很简单, 但是实际做的时候,发现远没有自己想的那么容易. 亿万粉丝,其实并不是很多,一度犹豫要不要写这个万份总结, 和嵌入式领域内的一 ...

  8. Python 开发中,使用bcrypt 或 Passlib 对系统用户密码进行哈希和验证处理

    在设计一个系统的时候,肯定都有会有用户身份认证的问题,一般对用户校验的时候,都是对用户存在数据库总的密码哈希值进行判断,从而避免密码泄露和反向解密,那么在Python 开发中,我们可以引入bcrypt ...

  9. windows中MySQL迁移数据存放盘符位置

    由于刚开始安装mysq时都选择了默认安装,数据存放在了c盘,后面数据量过大c盘不堪重负,所以迁移数据到D盘 windows中MySQL迁移数据存放盘符位置 参考: https://blog.csdn. ...

  10. Win32 创建窗口翻车记录

    今天创建窗口的时候,在捕获消息WM_CREATE的时候翻车了,找了好久都没找到,我换另一台电脑上又没出问题, 现分享下:LRESULT QWnd::WindowProc(HWND hWnd, UINT ...