// 包名
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. 【Zookeeper】Win平台伪集群搭建

    下载稳定版Zookeeper https://downloads.apache.org/zookeeper/stable/ GZ包: apache-zookeeper-3.6.3-bin.tar.gz ...

  2. 【Linux】快速文件交互 lrzsz

    首先需要安装依赖: yum install -y lrzsz 没有此依赖,Linux提示找不到命令: [root@localhost ~]# rz -bash: rz: 未找到命令 [root@loc ...

  3. 【ActiveJdbc】04

    一.乐观锁 作者po的乐观锁思想: http://en.wikipedia.org/wiki/Optimistic_concurrency_control 维基百科,墙了看不到 作者要求表字段必须存在 ...

  4. 【Hibernate】Re03 注解方式实现

    使用JPA规范提供的注解即可实现,这样的好处是不需要配置Entity.hbm.xml文件了 但是考虑到多表查询的情况,还是会有xml配置的需要. 一.常用的JPA注解: 1.public @inter ...

  5. 特朗普开始在YouTube上打竞选广告了 —— 美国总统的竞选广告已经开始媒体投放了

    相关: 拜登开始在YouTube上打竞选广告了 -- 美国总统的竞选广告已经开始媒体投放了 PS. 又多了一个猴上台,哈哈哈. 特朗普的竞选资金筹集网站:

  6. 首次配置成功rllab运行环境,给出anaconda下的配置

    name: rllab channels: - defaults dependencies: - _libgcc_mutex=0.1=main - _openmp_mutex=5.1=1_gnu - ...

  7. 安装RabbitMQ遇到的一些坑

    Ubantu18.0正确安装RabbitMQ 1.安装erlang 因为RabbitMQ需要erlang语言的支持,所以我们需要先安装erlang. sudo apt-get install erla ...

  8. JavaScript设计模式样例十八 —— 命令模式

    命令模式(Command Pattern) 定义:请求以命令的形式包裹在对象中,并传给调用对象.调用对象寻找可以处理该命令的合适的对象,并把该命令传给相应的对象,该对象执行命令.目的:将一个请求封装成 ...

  9. JavaScript设计模式样例十六 —— 备忘录模式

    备忘录模式(Memento Pattern) 定义:保存一个对象的某个状态,以便在适当的时候恢复对象.目的:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态.场景:数据缓存. ...

  10. k8s Deployment与Service配置样例

    一.Deployment apiVersion: apps/v1 kind: Deployment metadata: name: pie-algorithm-farmland-detection s ...