java简单案例:登录注册

前言

实习课第二课,用java连接数据库做个登录注册

最开始的简单代码

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

public class jdbc_test1 {
    public static void main(String[] args) throws ClassNotFoundException, SQLException {
        //1.导入jar包
        //2.注册驱动
        Class.forName("com.mysql.jdbc.Driver"); //alt+回车
        //3.获取数据库连接对象 Connection
        Connection connection= DriverManager.getConnection("jdbc:mysql://localhost:3306/testtt?useSSL=false","root","123456");//需要更改数据库及数据表相关信息
        //4.定义sql
        String sql = "INSERT into user (name,password) VALUES('zr','111');";
        //5.获取执行sql语句的对象,Statement
        Statement statement = connection.createStatement();
        //6.执行sql语句,接收返回结果
        int count = statement.executeUpdate(sql);
        //7.处理结果
        System.out.println(count);
        //8.释放资源
        connection.close();
        statement.close();
        }
   	}

建立jdbc.properties

url=jdbc:mysql://localhost:3306/testtt?useSSL=false
user=root
password=123456
driver= com.mysql.jdbc.Driver

建立JDBCUtils

import java.io.FileReader;
import java.io.IOException;
import java.net.URL;
import java.sql.*;
import java.util.Properties;

public class JDBCUtils {
    private static String url;
    private static String user;
    private static String password;
    private static String driver;

    //读取文件,只需读取一次即可拿到这些值,使用静态代码块
    static {

        try{
            //1.创建Properties集合类
            Properties pro = new Properties();

            //获取src路径下文件---→ClassLoader 类加载器
            ClassLoader classLoader = JDBCUtils.class.getClassLoader();
            URL res =classLoader.getResource("jdbc.properties");
            String path = res.getPath();
            System.out.println(path);

            //2.加载文件
            pro.load(new FileReader(path));

            //3.获取数据,赋值
            url = pro.getProperty("url");
            user = pro.getProperty("user");
            password = pro.getProperty("password");
            driver = pro.getProperty("driver");

            //4.注册驱动
            Class.forName(driver);

        }catch (IOException e){
            e.printStackTrace();
        }catch (ClassNotFoundException e1){
            e1.printStackTrace();
        }
    }

    //连接
    public static Connection getCounection() throws SQLException {
        return DriverManager.getConnection(url,user,password);
    }

    //释放资源
    public  static void close(ResultSet rs, Statement stmt, Connection conn) throws SQLException {
        if (rs!=null){
            rs.close();
        }
        if (stmt!=null){
            stmt.close();
        }
        if (conn!=null){
            conn.close();
        }
    }

    public  static void close(Statement stmt, Connection conn) throws SQLException {
        if (stmt!=null){
            stmt.close();
        }
        if (conn!=null){
            conn.close();
        }
    }
}

登录方法

//登录方法
    public boolean login(String username,String password) throws SQLException {
        if(username==null||password==null){
            return false;

        }
        Connection conn =null;
        Statement stmt =null;
        ResultSet rs =null;

        try {
            conn = JDBCUtils.getCounection();
            //定义sql
            String sql = "select * from user where name = '"+username+"' and password = '"+password+"'";
            //获取执行Sql对象
            stmt = conn.createStatement();

            //执行查询
            rs=stmt.executeQuery(sql);
            return rs.next();               //返回查询结果的下一行 查询到多少行
        }catch (SQLException e){
            e.printStackTrace();
        }finally {
            JDBCUtils.close(rs,stmt,conn);
        }
        return false;
    }

注册方法

//注册方法
    public boolean register(String username,String password) throws SQLException {
        if(username==null||password==null){
            return false;

        }
        Connection conn =null;
        Statement stmt =null;
        int rs=-1;

        try {
            conn = JDBCUtils.getCounection();
            //定义sql
            String sql = "INSERT INTO user (name,password) values('"+username+"','"+password+"')";
            //获取执行Sql对象
            stmt = conn.createStatement();

            //执行查询
            rs=stmt.executeUpdate(sql);
            return true;//返回查询结果的下一行 查询到多少行
        }catch (SQLException e){
            e.printStackTrace();
        }finally {
            JDBCUtils.close(stmt,conn);
        }
        return false;
    }

原有数据库

在这里插入图片描述

登录验证

"C:\Program Files\Java\jdk-13.0.1\bin\java.exe" "-javaagent:E:\idae\IntelliJ IDEA 2020.1.1\lib\idea_rt.jar=55880:E:\idae\IntelliJ IDEA 2020.1.1\bin" -Dfile.encoding=UTF-8 -classpath D:\java\out\production\java;D:\java\lib\weld-spi.jar;D:\java\lib\weld-api.jar;D:\java\lib\weld-core-jsf.jar;D:\java\lib\weld-servlet-core.jar;D:\java\lib\cdi-api.jar;D:\java\lib\weld-core-impl.jar;D:\java\lib\weld-core.jar;D:\java\lib\weld-se-core.jar;D:\java\lib\weld-se.jar;D:\java\lib\weld-servlet.jar;D:\java\lib\mysql-connector-java-5.1.47-bin.jar jdbc_test
请输入用户名:
w
请输入密码:
45
/D:/java/out/production/java/jdbc.properties
登录成功!

Process finished with exit code 0

注册验证

"C:\Program Files\Java\jdk-13.0.1\bin\java.exe" "-javaagent:E:\idae\IntelliJ IDEA 2020.1.1\lib\idea_rt.jar=55996:E:\idae\IntelliJ IDEA 2020.1.1\bin" -Dfile.encoding=UTF-8 -classpath D:\java\out\production\java;D:\java\lib\weld-spi.jar;D:\java\lib\weld-api.jar;D:\java\lib\weld-core-jsf.jar;D:\java\lib\weld-servlet-core.jar;D:\java\lib\cdi-api.jar;D:\java\lib\weld-core-impl.jar;D:\java\lib\weld-core.jar;D:\java\lib\weld-se-core.jar;D:\java\lib\weld-se.jar;D:\java\lib\weld-servlet.jar;D:\java\lib\mysql-connector-java-5.1.47-bin.jar jdbc_test1
请输入用户名:
wdd4
请输入密码:
1231
/D:/java/out/production/java/jdbc.properties
注册成功!

Process finished with exit code 0

注册后数据库

在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值