首页 > 其他分享 >JDBC练习-登录案例

JDBC练习-登录案例

时间:2022-11-10 11:35:23浏览次数:62  
标签:username JDBC String 登录 练习 null user sql password

需求:

1.通过键盘录入用户名和密码

2.判断用户是否登录成功

select * from user where username="" and password="";
如果这个sql有查询结果 则成功  反之 则失败

步骤:

1.创建数据表user

sql语句

复制代码
CREATE TABLE user(
        id INT PRIMARY KEY AUTO_INCREMENT,
        username VARCHAR(32),
        password VARCHAR(32)
);
INSERT INTO user VALUES(null,"zhangsan","123");
INSERT INTO user VALUES(null,"lisi","456");
复制代码

 测试类

复制代码
public static void main(String[] args) {
        // 1.键盘录入 接受用户名和密码
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入用户名:");
        String username = sc.nextLine();
        System.out.println("请输入密码:");
        String password = sc.nextLine();
        // 2.调用方法
        boolean flag = new JDBCDemo07().login(username, password);
        // 3.判断结果 输入不同语句
        if (flag) {
            // 登录成功
            System.out.println("登录成功!");
        } else {
            System.out.println("用户名或密码错误!!!");
        }
    }

    /*
      登录方法
     */
    public boolean login(String username, String password) {
        if (username == null || password == null) {
            return false;
        }
        // 连接数据库判断是否登录成功
        Connection conn = null;
        Statement stmt = null;
        // 1.获取连接
        try {
            conn = JDBCUtil.getConnection();
            // 2.定义sql
            String sql = "select * from user where username='" + username + "' and password='" + password + "'";
            // 3.获取执行sql的对象
            stmt = conn.createStatement();
            // 4.执行查询
            ResultSet rs = stmt.executeQuery(sql);
            // 判断
            return rs.next();
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        } finally {
            JDBCUtil.close(stmt, conn);
        }

        return false;
    }
复制代码

运行结果

标签:username,JDBC,String,登录,练习,null,user,sql,password
From: https://www.cnblogs.com/shenziyi/p/16876506.html

相关文章

  • JDBC各个类详解-ResultSet-遍历结果集和JDBC工具类
    ResultSet-遍历结果集注意:使用步骤:1、游标向下移动一行2、判断是否有数据3、获取数据//循环判断游标是否是最后一行末尾while(rs.next()){//获取数据......
  • vuecli之todo练习1静态资源html
    首先建立静态资源htmlApp。vue<template><divid="app"><divclass="todo-container"><divclass="todo-wrap"><MyHeader>......
  • JDBC与数据库连接池
    5.2.1 JDBC的作用JDBC是允许Java程序访问并操作关系型数据库数据的一套APL。本身就是一种规范,它提供的接口,一套完整的,可移植的访问底层数据库的程序。5.2.2JDBC的架构......
  • 牛客练习赛105
    切蛋糕的贝贝题意:将多边形一个蛋糕切成6份,使得面积之比为1:1:4:5:1:4(顺序可以打乱),只有两种切法,一种是将过外接圆的多边形的对角线,第二种是从多边形的中心和顶点的连线,先......
  • GBase 8a数据库集群JDBC入库非常慢原因及解决方案(Datax同步Gbase数据库也可用)
    一、GBase8a数据库集群JDBC入库方式如下:1、insert方式,每次插入一行;2、insert方式,每次n行,批量提交;3、输出成文件,load加载方式; 二、以上三种方式性能对比:1、第一种,......
  • Spring Boot:The new driver class is com.mysql.cj.jdbc.Driver
    以前使用的是​​5.1.31​​​的​​mysql​​​驱动,后面使用​​SpringBoot​​​默认的​​mysql​​驱动,启动就报错了:Loadingclass`com.mysql.jdbc.Driver'.Thisis......
  • 【JDBC】获取数据库连接
    1.获取数据库连接的要素要素一:加载并注册驱动要素二:URL要素三:用户名和密码要素一:加载并注册驱动(1)导入mysql-connector-java的jar包(2)加载驱动调用Class类的静态方......
  • 2022/11 LeetCode练习
    ......
  • 别的电脑ssh win10 免密登录的方法
    首先要在win10里面把可选功能的opensshserver钩上,然后在win+r输入services.msc打开服务重启opensshserver服务然后使用管理员打开powershell,输入Not......
  • 几个数据持久化框架(Hibernate、JPA、Mybatis、JOOQ、JDBC Template)的比较
    本文作者对几个数据持久化框架(Hibernate、JPA、Mybatis、JOOQ、JDBCTemplate)的比较,洋洋洒洒,信手拈来,强烈推荐!前言因为项目需要选择数据持久化框架,看了一下主要几个流行......