一、准备工作
在qy66数据库下,新建一个denglu表。添加 name password 。
package cn.zhouzhou; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.Scanner; /* * 目的? 实现用户登录。 * 使用PreparedStatement 从控制台输入! * *一、导包Scanner 实现控制台交互效果 * *二、写入登录方法? * 1.login(name, password); * 2.调用工具类 Connection con01=Jdbc工具类.getConnection(); * 3.编写SQL语句 未知内容使用 ? 占位符: * 4.获得PreparedStatement对象 PreparedStatement ps01=con01.prepareStatement(sql); * 5.setString(int parameterIndex, String x) 将指定的参数设置为给定的Java String值。 6.执行sql语句 ResultSet rs01=ps01.executeQuery(); 7.判断输入是否正确? 8.关闭资源 * */ public class Jdbc用户登录 { public static void main(String[] args) throws SQLException { Scanner sc01=new Scanner(System.in); //1.控制台输入 姓名 密码 System.out.println("输入用户名"); String name=sc01.nextLine(); System.out.println("输入密码"); String password=sc01.nextLine(); //登录的方法? login(name, password); } private static void login(String name,String password) throws SQLException{ Connection con01=Jdbc工具类.getConnection(); String sql="select * from denglu where name=? and password=?"; //编写SQL语句 未知内容使用 ? 占位符: PreparedStatement ps01=con01.prepareStatement(sql); ps01.setString(1, name); ps01.setString(2, password); ResultSet rs01=ps01.executeQuery(); if (rs01.next()) { //获得值 就显示登陆成功 否则就显示失败。 System.out.println("登陆成功"); } else { System.out.println("登录失败"); } Jdbc工具类.close(rs01, ps01, con01); //先开后关原则。 } }