zoukankan      html  css  js  c++  java
  • 测试JDBCUtils的重用性

    package cn.itcast.jdbc;

    import cn.itcast.util.JDBCUtils;

    import java.sql.*;
    import java.util.Properties;
    import java.util.Scanner;

    /**
    * @author newcityman
    * @date 2019/8/15 - 21:28
    * 1、 通过键盘录入用户名和密码
    * 2、 判断用户是否登录成功
    */
    public class JDBCDemo08 {

    public static void main(String[] args) {
    System.out.println("请输入用户名:");
    Scanner sc = new Scanner(System.in);
    String username = sc.next();
    System.out.println("请输入密码");
    String password = sc.next();

    /* boolean flag = new JDBCDemo08().login(username, password);
    if (flag) {
    System.out.println("登录成功");
    } else {
    System.out.println("用户名或密码错误,请联系系统管理员");
    }*/

    boolean f = new JDBCDemo08().login2(username, password);
    if (f) {
    System.out.println("登录成功");
    } else {
    System.out.println("用户名或密码错误,请联系系统管理员");
    }


    }

    /*
    *登录方法
    *
    * */

    public boolean login(String username, String password) {
    Connection conn = null;
    Statement stmt = null;
    ResultSet rs = null;
    if (username == null || password == null) {
    return false;
    }
    try {
    // 1、 获取连接
    conn = JDBCUtils.getConnection();
    // 2、 定义sql
    String sql = "select * from user where name='" + username + "'and password='" + password + "'";
    System.out.println(sql);
    // 3、 获取执行sql的对象
    stmt = conn.createStatement();
    // 4、执行查询
    rs = stmt.executeQuery(sql);
    // 5、判断
    /*if (rs.next()) {
    System.out.println("登录成功");
    return true;
    } else {
    System.out.println("用户名或密码错误,请重新输入");
    return false;
    }*/
    return rs.next();
    } catch (SQLException e) {
    e.printStackTrace();
    } finally {
    JDBCUtils.close(rs, stmt, conn);
    }
    return false;
    }


    /*
    *登录方法2:防止sql注入
    *
    * */

    public boolean login2(String username, String password) {
    Connection conn = null;
    PreparedStatement stmt = null;
    ResultSet rs = null;
    if (username == null || password == null) {
    return false;
    }
    try {
    // 1、 获取连接
    conn = JDBCUtils.getConnection();
    // 2、 定义sql
    String sql = "select * from user where name=? and password=?";
    // 3、 获取执行sql的对象
    stmt = conn.prepareStatement(sql);
    stmt.setString(1,username);
    stmt.setString(2,password);
    // 4、执行查询
    rs = stmt.executeQuery();
    // 5、判断
    /*if (rs.next()) {
    System.out.println("登录成功");
    return true;
    } else {
    System.out.println("用户名或密码错误,请重新输入");
    return false;
    }*/
    return rs.next();
    } catch (SQLException e) {
    e.printStackTrace();
    } finally {
    JDBCUtils.close(rs, stmt, conn);
    }
    return false;
    }
    }
  • 相关阅读:
    阿里云ssh断开处理办法
    OSSIM安装使用教程(OSSIM-5.6.5)
    MySQL字符串列与整数比较
    Linux获取so/ko文件版本号教程
    Linux服务器后门自动化查杀教程
    最强半自动化抓鸡工具打造思路
    渗透测试报告中的那些名词解释
    ELK+MySQL出现大量重复记录问题处理
    Python3+SQLAlchemy不使用字段名获取主键值教程
    Python3+SQLAlchemy+Sqlite3实现ORM教程
  • 原文地址:https://www.cnblogs.com/newcityboy/p/11360933.html
Copyright © 2011-2022 走看看