JDBC之查询
案例1:查询所有用户的信息,封装到一个List里面
1 String url="jdbc:mysql://localhost:3306/nz201";
2 String user="root";
3 String password="root";
4
5 Connection con=null;
6 PreparedStatement ps=null;
7 ResultSet rs=null;//结果集
8
9 try {
10 Class.forName("com.mysql.jdbc.Driver");//加载驱动
11
12 con=DriverManager.getConnection(url,user,password);//获取连接
13
14 String sql="select * from userinfo";
15
16 //获取预处理语句
17 ps=con.prepareStatement(sql);
18
19 //执行查询得到结果集
20 rs=ps.executeQuery();
21
22 //新建一个集合,将结果集的数据,封装到这个集合里面
23 List<UserInfo>list=new ArrayList<UserInfo>();
24 UserInfo ui;
25 //一次循环是一行数据
26 while(rs.next()){//遍历查询结果,没循环一次就代表一行数据
27
28 //实例化一个UserInfo对象
29 ui=new UserInfo();
30 // //从数据行里面取出一条数据
31 // int id=rs.getInt("id");
32 // String username=rs.getString("username");
33 // String userhobby=rs.getString("userhobby");
34 // String usersex=rs.getString("usersex");
35 //
36 //要将这个数据保存在UI对象里面
37 ui.setId(rs.getInt("id"));
38 ui.setUsername(rs.getString("username"));
39 ui.setUserhobby(rs.getString("userhobby"));
40 ui.setUsersex(rs.getString("usersex"));
41
42 //把这个对象添加到集合里面
43 list.add(ui);//存进去 的不是UI而是userinfo地址
44
45 }
46
47 for(UserInfo ss:list){
48 System.out.println(ss);
49 }
50
51 rs.close();
52 ps.close();
53 con.close();
54
55 }catch(Exception e){
56 e.printStackTrace();
57 }
58
59 }
案例二:查询用户表,进行登录操作
1 public static void main(String[] args) {
2
3 String url="jdbc:mysql://localhost:3306/nz201";
4 String user="root";
5 String password="root";
6
7 Connection con=null;
8 PreparedStatement ps=null;
9 ResultSet rs=null;//结果集
10
11 System.out.println("请输入用户名:");
12 Scanner scan=new Scanner(System.in);
13 String name=scan.nextLine();
14
15 System.out.println("请输入密码:");
16 String pass=scan.nextLine();
17
18
19 try {
20 Class.forName("com.mysql.jdbc.Driver");//加载驱动
21
22 con=DriverManager.getConnection(url,user,password);//获取连接
23
24 //执行登录,用户名和密码都一样
25 String sql="select * from userinfo where username=? and userpass=?";
26
27 //获取预处理语句
28 ps=con.prepareStatement(sql);
29
30 //给SQL语句,设置我们的参数
31 ps.setString(1, name);
32 ps.setString(2, pass);
33
34 //执行查询
35 rs=ps.executeQuery();
36
37 if(rs.next()){
38 System.out.println("登录成功");
39 }else{
40 System.out.println("登录失败");
41 }
42
43
44 }catch(Exception e){
45 e.printStackTrace();
46 }
47
48
49 }
JDBC之查询的更多相关文章
- [原创]java WEB学习笔记109:Spring学习---spring对JDBC的支持:使用 JdbcTemplate 查询数据库,简化 JDBC 模板查询,在 JDBC 模板中使用具名参数两种实现
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...
- Jmeter JDBC Request 查询语句中有汉字查询结果为空的解决方法
搜索接口我会校验返回值,查询JDBC Request 查询语句有中文字的时候查询会有问题. 解决方法很简单,在JDBC Connection Configuration的Database URL里加一 ...
- 使用元数据简化jdbc代码---查询操作(用到反射)
使用元数据简化jdbc代码---查询操作(用到反射) 一 思路分析 简化就是把共同的地方提取出来并放到一个方法里,在用到时只要调用就ok了,上一篇介绍了更新的操作,而查询的操作相对来说比较复杂,因为 ...
- 【重点】Jmeter----- 将 JDBC Request 查询结果作为下一个接口参数方法(二)
一.说明 jmeter与数据库mysql已连接成功 二.需求 1.前置条件: 1.已user数据库的前8位手机号码作为行动计划的名称 2.行动计划的日期是2018-10-17 2.操作步骤: 1)获取 ...
- Java 使用JDBC连接查询操作数据
import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import java.sql. ...
- Java JDBC 模糊查询 避免输入_,%返回全部数据
Java JDBC 模糊查询 避免输入_,%返回全部数据 "SELECT * FROM employees WHERE INSTR(first_name,?)>0 " 仅供参 ...
- JDBC_part1_Oracle数据库连接JDBC以及查询语句
本文为博主辛苦总结,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 谢谢配合! JDBC part1 JDBC概述 jdbc是一种用于 ...
- Spring JDBC实现查询
1 db.properties jdbc.user=root jdbc.password=920614 jdbc.driverClass=com.mysql.jdbc.Driver jdbc.jdbc ...
- 【Java框架型项目从入门到装逼】第十五节 - jdbc模糊查询实现(附带详细调试过程)
上一节,我们实现了用户列表查询,已经按条件精确查询: if(student.getUsername() != null && !"".equals(student. ...
- JDBC动态查询MySQL中的表(按条件筛选)
动态查询实现按条件筛选.PreparedStatement 准备语句指定要查询的表头列,.setString()通过赋值指定行,.executeQuery()执行语句 在数据库test里先创建表sch ...
随机推荐
- Conda使用教程
Conda介绍 conda 可以理解为一个工具,也是一个可执行命令,其核心功能是包管理和环境管理. 包管理与 pip 的使用方法类似似,环境管理则是允许用户方便安装不同版本的 python 环境并在不 ...
- ModuleNotFoundError: No module named '_ctypes' when Python3
前言 运行 python 报错:ModuleNotFoundError: No module named '_ctypes' when using Value from module multipro ...
- 查看、安装python指定版本的包、安装卸载第三方模块
python安装/卸载第三方包 (1)安装第三方包: 安装指令pip install xxx (xxx,需安装的包名) 安装特定版本的package:通过使用==, >=, <=, > ...
- js解析json字符串、对象与json之间的转换
前言 在数据传输流程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键. js解析json字符串 // JSON字符串 'v ...
- osmts:OERV之一站式管理测试脚本
最近团队里面实习的小伙伴开发了一个新的项目,可以用来一键式运行各种测试脚本并且完成数据总结,我也尝试部署了一下,遇到了一些问题,接下来一起解析一下这个项目. 首先是获取osmts git cl ...
- SQL Server 5105 和 1802 错误的触发方式和解决方式之一
一般导致这两个错误的原因是:文件路径错误 还有的说,可能是文件权限问题,详情见权限错误纠正方式 错误代码 create database teaching on primary ( name = te ...
- leetcode每日一题:最小化字符串长度
题目 2716. 最小化字符串长度 给你一个下标从 0 开始的字符串 s ,重复执行下述操作 任意 次: 在字符串中选出一个下标 i ,并使 c 为字符串下标 i 处的字符.并在 i 左侧(如果有)和 ...
- Jenkins pipeline jenkinsfile的两种写作方式声明式和脚本式
Jenkins pipeline jenkinsfile的两种写作方式,声明式和脚本式. 为什么需要pipeline? 在多年前Jenkins成为最流行的持续集成服务器的Jenkins 1.x时代,所 ...
- v-bind,v-if,v-for,v-on,v-model基本用法
总结: 1.v-bind绑定数据:标签属性v-bind:title='xxx',简写:title='xxx', 标签内容{{xxx}} <span :title='message'>{{m ...
- 解决 windows 10 WSL 安装Ubuntu后 屏幕亮度飙至最高 且屏幕亮度无法调节 外接显示器无法显示 的问题
转载请注明出处:博客园 博主Bubgit https://www.cnblogs.com/Bubgit/p/16367937.html 问题现象 自从windows 10推出了 wsl (Window ...