java登录时数据库验证账户密码-mysql
一:连接数据库:##
package login;
import java.sql.*;
public class conmysql {
String drivername="com.mysql.jdbc.Driver";
String password="zhangyabaio";
Statement stmt;
ResultSet rs;
int insertValue=-1;
Connection con;
public conmysql()throws Exception{
try{
Class.forName(drivername);//加载驱动
con = DriverManager.getConnection("jdbc:mysql://localhost:3307/student","root",password); ;//获取连接
stmt=con.createStatement();//获取statement对象
}catch(SQLException e){
e.printStackTrace();
}
}
public ResultSet executeQuery(String sql) throws Exception{
rs=stmt.executeQuery(sql);
return rs;
}
public int insert(String sql)throws Exception{
insertValue=stmt.executeUpdate(sql);
return insertValue;
}
}
二:创建登录界面:##
package login;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.*;
import javax.swing.*;
import sun.security.util.Password;
public class loginformat extends JFrame {
private JLabel lb1,lb2;
private JButton jbn1,jbn2,jbn3;
private JTextField jtx1;
private JPasswordField jpd;
private JPanel jp1,jp2,jp3;
conmysql contest;
String managername,managerpassword;
String outPut="";
public boolean flag=false;
public loginformat() throws SQLException{
lb1=new JLabel("用户:");
lb2=new JLabel("密码:");
jbn1=new JButton("确定");
jbn2=new JButton("取消");
jbn3=new JButton("注册");
jtx1=new JTextField(10);
jpd=new JPasswordField(10);
jp1=new JPanel();
jp2=new JPanel();
jp3=new JPanel();
jbn1.addActionListener(new password_actionAdapter(this));
jp1.add(lb1);
jp1.add(jtx1);
jp2.add(lb2);
jp2.add(jpd);
jp3.add(jbn1);
jp3.add(jbn2);
jp3.add(jbn3);
this.setLayout(new GridLayout(3,1,0,0));
this.add(jp1);
this.add(jp2);
this.add(jp3);
this.setSize(300,300);
this.setLocation(300, 300);
this.setVisible(true);
}
/**
* @param args
* @throws SQLException
*/
public static void main(String[] args) throws SQLException {
// TODO Auto-generated method stub
new loginformat();
}
public void jbn1_actionperformed(ActionEvent e) throws Exception{
String name=jtx1.getText().toString();
String password=jpd.getText().toString();
if(!name.equals("")&&!password.equals("")){
String queryString="select * from user";
try{
contest=new conmysql();
ResultSet resultSet=contest.executeQuery(queryString);
while(resultSet.next()){
managername=resultSet.getString("user_name");
managerpassword=resultSet.getString("useer_p");
if(managername.equals(name)&&managerpassword.equals(password)){
this.flag=true;
this.show(false);
jiemian test=new jiemian();
test.show();
break;
}else{
jtx1.setText("");
jpd.setText("");
}
}
}catch(SQLException q){
System.out.println(q);
}
}else{//都为空显示错误信息
JOptionPane.showMessageDialog(null, "请输入完整信息","登录",JOptionPane.PLAIN_MESSAGE);
}
}
class password_actionAdapter implements java.awt.event.ActionListener{
loginformat adaptee;
public password_actionAdapter(loginformat adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
try{
adaptee.jbn1_actionperformed(e);
}catch(Exception ee){
System.out.println(ee);
}
}
}
}
跳转页面:##
package login;
import java.awt.*;
import javax.swing.*;
public class jiemian extends JFrame {
private JButton bt;
public jiemian(){
bt=new JButton("欢迎");
this.add(bt);
this.setSize(300,300);
this.setVisible(true);
}
}
java登录时数据库验证账户密码-mysql的更多相关文章
- Servlet页面登录的数据库验证程序(一)
一.基本思想是MVC模式,一个登录页面login.jsp,一个服务器处理程序Servlet.java,一个MySql数据库userinfo. 另外还有相关的数据封装类User和数据库连接类GetDat ...
- Servlet页面登录的数据库验证程序(二)
这个程序在原来的程序基础上加入了密码验证. 一.增加一个error.jsp页面,用于跳转出现用户名和密码错误显示信息. <%@ page language="java" im ...
- Html网页链接数据库验证账户密码(新手)
连接代码(其中用到了连接池,不要忘记Jar包.拉入配置文件和工具类): package cn.Wuchuang.Servlet; import org.springframework.jdbc.cor ...
- pl/sql登录时,数据库下拉框没有任何内容
打开plsql时突然发现database下拉框里面没有任何配置信息,如下图: 解决方法: 找到环境变量TNS_ADMIN,修改存放tnsnames.ora的路径:
- Java应用程序连接数据库--JDBC基础
Java应用程序连接数据库--JDBC基础 Java应用程序连接数据库–JDBC基础 <!-- MySQL驱动,连接数据库用,由数据库厂商提供 --> <dependency&g ...
- servlet数据库验证登录
servlet数据库验证登录 一.将数据库连接和验证封装为一个单独的类 import java.sql.*; public class SQLtest { // JDBC 驱动名及数据库 URL st ...
- koa2+mysql+vue实现用户注册、登录、token验证
说明: node.js提供接口,vue展现页面,前后端分离,出于编辑器功能和编辑习惯,vue用HbuilderX,node.js用VScode.(PS:仅作为学习笔记,如有不当之处欢迎指出,在此先谢为 ...
- java文件来演示如何访问MySQL数据库
java文件来演示如何访问MySQL数据库. 注:在命令行或用一个SQL的前端软件创建Database. 先创建数据库: CREATE DATABASE SCUTCS; 接着,创建表: CREATE ...
- mysql登录时闪退的问题
之前mysql用着好着,可是今天在启动mysql后输入密码出现了闪退,在任务管理器中发现mysql服务没有启动,当手动启动时提示拒绝访问.在网上查找原因发现问题所在. 问题原因:mysql服务没有安装 ...
随机推荐
- JavaScript、Python、java、Go算法系列之【快速排序】篇
常见的内部排序算法有:插入排序.希尔排序.选择排序.冒泡排序.归并排序.快速排序.堆排序.基数排序等. 用一张图概括: 选择排序 选择排序是一种简单直观的排序算法,无论什么数据进去都是 O(n²) 的 ...
- 自己写的书《深入理解Android虚拟机内存管理》,不出版只是写着玩
百度网盘地址:https://pan.baidu.com/s/1jI4xZgE 我给起的书名叫做<深入理解Android虚拟机内存管理>.本书分为两个部分,前半部分主要是我对Linux0. ...
- Html标签,file方式,上传文件
恩,如果不记下来,记忆就会模糊掉. 希望自己下次看见这篇博客的时候,会解决掉疑问 ----------------------------------------------------------- ...
- JEESZ-Redis分布式缓存安装和使用
独立缓存服务器: Linux CentOS Redis 版本: 3.0下面我们针对于Redis安装做下详细的记录:编译和安装所需的包:# yum install gcc tcl创建安装目录:# mkd ...
- 【CSS入门基础,有需要的看过来哦】心境,心静,不轻言放弃!---致CSS
整理一下近一周学习的有关CSS的基础知识笔记: CSS语法必须写在<style>标签中哦~/*注释*/ [CSS常用背景属性]background background-color:背景色 ...
- Neo4j 第二篇:图形数据库
在深入学习图形数据库之前,首先理解属性图的基本概念.一个属性图是由顶点(Vertex),边(Edge),标签(Lable),关系类型和属性(Property)组成的有向图.顶点也称作节点(Node), ...
- GoodReads: Machine Learning (Part 3)
In the first installment of this series, we scraped reviews from Goodreads. In thesecond one, we per ...
- 用c++实现高精度加法
c++实习高精度加法 最近遇到一个c++实现高精度加法的问题,高精度问题往往十复杂但发现其中的规律后发现并没有那么复杂,这里我实现了一个整数的高精度加法,主要需要注意以下几点: 1:将所需输入的数据以 ...
- Java将头像图片保存到MySQL数据库
在做头像上传的过程中通常是将图片保存到数据库中,这里简单介绍一中将图片保存到数据库的方法: jsp代码: <div> <input class="avatar-input& ...
- 一天搞定CSS:css选择器--07
选择器:是指选择标签的方法 1.选择器类型 2.id选择器 代码演示 <!DOCTYPE html> <html> <head> <meta charset= ...