JDBC常规步骤、控制台模拟实现登录注册
2018-03-24 20:28
507 查看
通过JDBC来实现在控制台注册登录用户名密码
先说说JDBC与数据库之间的操作常规步骤
获取数据库连接:DriverManager.getConnection(url,user,password)
创建SQL语句框架:String sql=”“
进行SQL语句预编译:conn.prepareStatement(sql)
对SQL语句进行赋值:ps.setString()
执行SQL语句:rs.executeQuery()
处理查询结果集:while(rs.next()){}
关闭流:finally{if(){}}
获取数据库连接:DriverManager.getConnection(url,user,password)
创建SQL语句框架:String sql=”“
进行SQL语句预编译:conn.prepareStatement(sql)
对SQL语句进行赋值:ps.setString()
执行SQL语句:rs.executeUpdate()
关闭流:finally{if(){}}
登录功能:用户输入用户名和密码,同时匹配才能登录
注意:每个需要输入的地方都使用?占位符来表示
先说说JDBC与数据库之间的操作常规步骤
一、SQL语句为DQL(查询语句)
注册驱动:Class.forName()获取数据库连接:DriverManager.getConnection(url,user,password)
创建SQL语句框架:String sql=”“
进行SQL语句预编译:conn.prepareStatement(sql)
对SQL语句进行赋值:ps.setString()
执行SQL语句:rs.executeQuery()
处理查询结果集:while(rs.next()){}
关闭流:finally{if(){}}
二、SQL语句为DML(insert、delete、update)(没有处理查询结果集)
注册驱动:Class.forName()获取数据库连接:DriverManager.getConnection(url,user,password)
创建SQL语句框架:String sql=”“
进行SQL语句预编译:conn.prepareStatement(sql)
对SQL语句进行赋值:ps.setString()
执行SQL语句:rs.executeUpdate()
关闭流:finally{if(){}}
控制台登录注册实现
注册功能:注册用户名、密码登录功能:用户输入用户名和密码,同时匹配才能登录
一、创建t_user表
use t1; create table t_user( id int(4) primary key auto_increment, username varchar(32) not null, password varchar(32) not null );
二、注册____jdbcregister.java
package com.jdbc.learn; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.SQLException; /** * @author 林杰_ * JDBC——注册 */ public class jdbcregister { public static void main(String[] args) throws IOException { BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); System.out.println("欢迎注册"); System.out.println("请输入用户名:"); String username=br.readLine(); System.out.println("请输入密码:"); String pwd=br.readLine(); Connection conn=null; PreparedStatement ps=null; try { //注册驱动 Class.forName("com.mysql.jdbc.Driver"); //获取数据库连接 String url="jdbc:mysql://localhost:3306/t1"; String user="root"; String password="1111"; conn=DriverManager.getConnection(url,user,password); //创建sql框架 String sql="insert into t_user(username,password) values(?,?)"; //sql预编译 ps=conn.prepareStatement(sql); //sql赋值 ps.setString(1, username); ps.setString(2, pwd); //执行sql int count=ps.executeUpdate(); if(count==1) { System.out.println("注册成功"); }else { System.out.println("注册失败"); } } catch (ClassNotFoundException | SQLException e) { e.printStackTrace(); }finally {//关闭流 if(ps!=null) { try { ps.close(); } catch (SQLException e) { e.printStackTrace(); } } if(conn!=null) { try { conn.close(); } catch (SQLException e) { e.printStackTrace(); } } } } }
三、登录______jdbclogin.java
package com.jdbc.learn; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; /** * @author Administrator * JDBC——登录 */ public class jdbclogin { public static void main(String[] args) throws IOException { BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); System.out.println("欢迎登录"); System.out.println("请输入用户名:"); String username=br.readLine(); System.out.println("请输入密码:"); String pwd=br.readLi c32e ne(); Connection conn=null; PreparedStatement ps=null; ResultSet rs=null; boolean flag=false; try { //注册驱动 Class.forName("com.mysql.jdbc.Driver"); //获取数据库连接 String url="jdbc:mysql://localhost:3306/t1"; String user="root"; String password="1111"; conn=DriverManager.getConnection(url,user,password); //创建sql框架 String sql="select username from t_user where username=? and password=?"; //sql预编译//编译一次,执行n次 ps=conn.prepareStatement(sql); //sql赋值 ps.setString(1, username); ps.setString(2, pwd); //执行sql rs=ps.executeQuery(); //处理查询结果集 while(rs.next()) { flag=true; } } catch (ClassNotFoundException | SQLException e) { e.printStackTrace(); }finally { if(rs!=null) { try { rs.close(); } catch (SQLException e) { e.printStackTrace(); } } if(ps!=null) { try { ps.close(); } catch (SQLException e) { e.printStackTrace(); } } if(conn!=null) { try { conn.close(); } catch (SQLException e) { e.printStackTrace(); } } } if(flag) { System.out.println("登录成功"); }else { System.out.println("您的用户名或密码有误"); } } }
注意:每个需要输入的地方都使用?占位符来表示
相关文章推荐
- JDBC应用、控制台连MySQL接数据库实现学生管理系统的登录注册、增删改查
- Spring+Spring MVC+Spring JDBC+MySql实现简单登录注册
- java利用jdbc连接Mysql数据库——实现登录注册功能
- 【Java】运用JDBC实现一个注册、登录系统的编写
- CSS3/HTML5实现漂亮的分步骤注册登录表单
- JAVA 用于练手的超简单登录注册,jdbc实现【学习笔记】
- spring 3.x 学习笔记_spring mvc、spring jdbc 实现网站的登录注册功能
- Java小程序之集合框架模拟数据库实现用户登录和注册功能
- spring mvc 模拟数据库实现注册 登录
- Java实现控制台登录(控制台输入的数据与数据库中的数据匹配) 注册
- 基于MVC模式模拟实现登录注册开发过程(二)
- rails中注册与登录的实现步骤
- Android实现注册登录头像上传等功能常规开发(Android端,服务器端开发实例)
- 【SQL】运用JDBC实现一个注册、登录系统的编写
- CSS3/HTML5实现漂亮的分步骤注册登录表单
- C语言控制台程序实现的注册登录
- 模拟后端存储数据,实现表单的注册和登录
- 小白Java求学之路之一:控制台实现用户注册、登录
- Java小程序之集合框架模拟数据库实现用户登录和注册功能
- 不二极端编程之JAVA基础总结(3)[数组循环实现控制台注册登录全功能]