java-JDBC登录注册代码
登录:
public static void main(String[] args) throws Exception{
Scanner sc = new Scanner(System.in);
System.out.println("账号:");
String uid = sc.nextLine();
System.out.println("密码:");
String pwd = sc.nextLine();
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb","root","");
String sql = "select * from users where user = ? and password = ?";
PreparedStatement ps = conn.prepareStatement(sql);
ps.setString(1, uid);
ps.setString(2, pwd);
ResultSet rs = ps.executeQuery();
boolean ok = rs.next();
if(ok){
System.out.println("欢迎"+rs.getString(3)+"回来");
}
else
{
System.out.println("您输入的账号密码有误");
}
}
这是一个简单的通过输入数据跟数据库的数据比较来完成登录验证。这里用的是PreparedStatement
PreparedStatement 与Statement 的区别
1 有安全性
PreparedStatement 可以由于不是使用拼接,防止了sql注入,提高了安全性。
2 更方便
PreparedStatement 可以自动对类型进行转换,代码可读性,可维护性提高。
3 批处理
PreparedStatement 有预编译功能,大批量的处理sql效率更高。(MySQL 不明显,Oracle 非常明显)
注册:
public static void main (String[] args) throws Exception{
Scanner sc = new Scanner(System.in);
System.out.println("请输入账号");
String uid = sc.nextLine();
System.out.println("请输入密码");
String pwd = sc.nextLine();
System.out.println("请输入昵称");
String nc = sc.nextLine();
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb?characterEncoding=GBK","root","");
String sql = "insert into users values (?,?,?)";
PreparedStatement ps = conn.prepareStatement(sql);
ps.setString(1, uid);
ps.setString(2, pwd);
ps.setString(3, nc);
ps.executeUpdate();
conn.close();
}
java-JDBC登录注册代码的更多相关文章
- java和jdbc 登录时代码以及常见问题
package jdbc; import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;imp ...
- java请求登录接口代码示例
前言 近期研究如何利用java代码如何获取其他系统中所需的数据,自己总结的方法如下: 1.工具类代码 /** * <pre> * 方法体说明:向远程接口发起请求,返回字符串类型结果 * @ ...
- Python简单的登录注册代码
#-*- coding: utf-8 -*- import hashlib # 定义数据库(声明字典) #注册登录的简单hash处理 db={} def get_md5(password): md5= ...
- springMVC+Java验证码完善注册功能
这篇文章简单的写了一个java验证码,为之前写过的springMVC注册功能加上验证码,验证码的作用就不多说了,防止机器人程序恶意注册什么的.. 其中User.java,加上了password和cod ...
- android安卓Sqlite数据库实现用户登录注册
看了很多别人写的安卓SQlite数据的操作代码,一点也不通俗易懂,我觉得我写的不错,而且安卓项目也用上了,所以在博客园里保存分享一下!建立一个类 并继承SQLiteOpenHelper public ...
- JAVA JDBC(存储过程和事务管理)
1.什么是存储过程 存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,存储在数据库中,经过第一次编译后再次调用不需要再次编译,用户通过指定存储过程 ...
- Java Spring+Mysql+Mybatis 实现用户登录注册功能
前言: 最近在学习Java的编程,前辈让我写一个包含数据库和前端的用户登录功能,通过看博客等我先是写了一个最基础的servlet+jsp,再到后来开始用maven进行编程,最终的完成版是一个 Spri ...
- Java图形界面开发—简易登录注册小程序
登录注册小代码,将学过的一些小知识融合在一起进行了使用,加深印象.本例中如果有注释不详细的地方,详见其它博客. Java程序操作数据库SQLserver详解 功能介绍:简单的登录注册系统,使用了数据库 ...
- Java基础知识强化之IO流笔记56:IO流练习之 登录注册IO版
1. 登录注册IO版的Java项目框架,如下: 2. 具体代码实现: (1)User.java(cn.itcast.game): package cn.itcast.pojo; /** * 这是用户 ...
随机推荐
- maven打包
1.利用maven-jar-plugin <build> <plugins> <!-- The configuration of maven-jar-plugin --& ...
- iOS10 远程推送代码 以及服务器端代码(.net)
// // AppDelegate.m // MyPushDemo // // Created by justapple on 16/12/25. // Copyright © 2016年 dengq ...
- android 蓝牙 http://blog.csdn.net/u012843100/article/details/52384219
http://blog.csdn.net/u012843100/article/details/52384219
- JavaScript获取时间戳、日期格式化
一. js获取时间戳: 第一种方法: var timestamp1 = Date.parse(new Date()); 第二种方法: var timestamp2 = (new Date()) ...
- Expression Blend 4 学习笔记
Animation Storyboard(情节提要)在对象和时间线面板中建立和命名,定位到对象(object),通过拖动play head(播放头,时间线中垂直的黄色指示线)定位到特定的时间点,点击“ ...
- KVO __ 浅谈
KVO :Key-Value Observing 它提供一种机制,当指定的对象的属性被修改后,则对象就会接受到通知.简单的说就是每次指定的被观察的对象的属性被修改后,KVO就会自动通知相应的观察者了. ...
- 1Z0-050
QUESTION 13 View the Exhibit.Examine the following command that is executed for the TRANSPORT table ...
- 【leetcode】Isomorphic Strings
题目简述: Given two strings s and t, determine if they are isomorphic. Two strings are isomorphic if the ...
- Swift -运算符和循环结构
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px Menlo; color: #4dbf56 } p.p2 { margin: 0.0px 0. ...
- 消息中间件MetaQ高性能原因分析-转自阿里中间件
简介 MetaQ是一款高性能的消息中间件,经过几年的发展,已经非常成熟稳定,历经多年双11的零点峰值压测,表现堪称完美. MetaQ当前最新最稳定的稳本是3.x系统,MetaQ 3.x重新设计和实现, ...