JDBC用户登录demo

Android studio 通过mysql连接数据库完成注册登录,登陆后通过tcp协议与电脑的网络调试助手互发信息 Android开发,连接数据库以及事件tcp通讯 阅读详情

 mysql列表:

JAVA代码:

第一段用statement方法,有sql注入危险,实际工程一般不会使用

package cn.itcast.jdbc;

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

public class jdbcDemo3 {
//    创建user表
//    create table USER(
//        id INT PRIMARY KEY AUTO_INCREMENT,
//        username VARCHAR(32),
//    password VARCHAR(32)
//    );
    
    public static void main(String[] args) {
        //1.输入用户名和密码
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入用户名:");
        System.out.println("请输入密码:");
        String username = sc.nextLine();
        String password = sc.nextLine();
        //2.调用login方法
        boolean flag = new jdbcDemo3().login(username, password);
        //3.判断结果 输出语句
        if(flag) System.out.println("登录成功");
        else System.out.println("登录失败");
    }

    
    public boolean login(String username,String password){
        //连接数据库
        //*****
        Statement stmt = null;
        Connection conn = null;
        ResultSet rs = null;
        //1.导入jar包
        //2.注册驱动
        try {
            Class.forName("com.mysql.cj.jdbc.Driver");
            //3.获取数据库连接对象
            conn  = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/user_id?serverTimezone=GMT%2b8","root","sujie123");
            //4.定义sql语句
            String sql = "select * from USER where username = '"+username+"'and password = '"+password+"'";
            //5.获取执行的对象statement
            stmt  = conn.createStatement();
            //6.执行sql语句
            //int count = //更新语句
            rs = stmt.executeQuery(sql);
            //7.处理结果
            return rs.next();
        } catch (ClassNotFoundException | SQLException e) {
            e.printStackTrace();
        }finally {
            try {
                stmt.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
            try {
                conn.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    return false;
    }
}

第二段代码用PrepareStatement方法,安全性更高,主要在于获取用户名和密码验证方式不同

package cn.itcast.jdbc;

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

public class jdbcDemo3 {
//    创建user表
//    create table USER(
//        id INT PRIMARY KEY AUTO_INCREMENT,
//        username VARCHAR(32),
//    password VARCHAR(32)
//    );

    public static void main(String[] args) {
        //1.输入用户名和密码
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入用户名:");
        String username = sc.nextLine();

        System.out.println("请输入密码:");
        String password = sc.nextLine();
        //2.调用login方法
        boolean flag = new jdbcDemo3().login(username, password);
        //3.判断结果 输出语句
        if(flag) System.out.println("登录成功");
        else System.out.println("登录失败");
    }


    public boolean login(String username,String password){
        //连接数据库
        //*****
        PreparedStatement pstmt = null;
        Connection conn = null;
        ResultSet rs = null;
        //1.导入jar包
        //2.注册驱动
        try {
            Class.forName("com.mysql.cj.jdbc.Driver");
            //3.获取数据库连接对象
            conn  = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/user_id?serverTimezone=GMT%2b8","root","sujie123");
            //4.定义sql语句
            String sql = "select * from USER where username =? and password =?";
            //5.获取执行的对象statement
            pstmt  = conn.prepareStatement(sql);
            //赋值操作
            pstmt.setString(1,username);
            pstmt.setString(2,password);
            //6.执行sql语句
            //int count = //更新语句
            rs = pstmt.executeQuery();
            //7.处理结果
            return rs.next();
        } catch (ClassNotFoundException | SQLException e) {
            e.printStackTrace();
        }finally {
            try {
                pstmt.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
            try {
                conn.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    return false;
    }
}

输出结果:

 

用java实现用户登录 //用户名及密码 String username = "123456798"; String passward = "123456"; //键盘录入 for (int i=0;i<3;i++){ Scanner scanner = new Scanner(System.in); System.out.println("请输入用户名:"); String s = scanner... 阅读详情

相关推荐

java web 练习demo。生成简单验证码前端是jsp

简单java web 练习项目。包含简单的增删改查连接数据库

~ 812

JDBCDemo 利用JDBC实现登录验证、注册、用户信息插入功能

JDBCDemo_~~Peace&Love~~ JDBCDemo一、代码结构二、外部库三、代码内容1.Login.java2.Register.java3.login.jsp4.register.jsp5.web.xml(似乎没用)五、数据库部分 JDBCDemo 利用JDBC实现登录验证、注册、用户信息插入功能 一、代码结构 二、外部库 JDBCDemo Referenced Library servlet-api.jar D:\apache-tomcat-10.0.6\lib\servl

Leesnwen的博客 992

AC7811无感FOC实战:从开环到闭环的电机控制调试全记录

本文详细记录了基于国产AC7811芯片实现无感FOC电机控制的全过程。从硬件软件环境搭建、开环I/F启动调试,到滑模观测器参数整定,再到平滑切入闭环及双环PID调节,提供了完整的实战步骤与参数调试心法。文章重点分享了无感控制从开环到闭环切换的关键技巧与常见问题排查清单,为工程师提供了一份避坑指南。

kotlin6android的博客 713

Java基础案例教程 第九章 JDBC ———9.3 实现第一个JDBC程序

一、JDBC的使用步骤 1、注册数据库的驱动 Class.forName("com.mysql.jdbc.Driver"); 2、通过DriverManager获取数据库连接 //jdbc:subprotocol/subname String url = "jdbc:mysql://127.0.0.1:3306/dbName?useU...

wangpailiulanqi8的博客 836

VirtualBox虚拟机拖放文件总失败?手把手教你配置双向拖放与共享文件夹(Ubuntu版)

本文详细指导如何在VirtualBox的Ubuntu虚拟机中配置高效的数据交换方案。核心是安装VirtualBox Guest Additions,并在此基础上开启双向拖放与共享粘贴板功能,同时建立稳定的共享文件夹,彻底解决主机与虚拟机间文件传输失败的问题,构建无缝的跨系统工作环境。

weixin_29245767的博客 232

LVGL9.2移植至正点原子阿波罗STM32F429开发板

LVGL(Light and Versatile Graphics Library)是一个开源的图形库,旨在为嵌入式系统提供高效、灵活的图形用户界面(GUI)解决方案。它具有小巧的内存占用和高性能的渲染能力,支持多种硬件平台,包括单片机、DSP 和 ARM 处理器等。LVGL 支持丰富的控件(如按钮、标签、图标、滚动条等),并提供强大的主题、样式和动画功能,使得开发者能够轻松设计出美观且响应迅速的界面。

m0_51149752的博客 3173

JDBC简单操作Demo

JDBC: Java DataBase Connectivity本文主要介绍曹总基本步骤, 包括链接,增删改查. 详细见注释import java.sql.*; import java.sql.Connection; import java.sql.PreparedStatement;import com.mysql.jdbc.*; import com.mysql.jdbc.Driver;/**

Dextrad_ihacker的博客 4949

海康摄像头V3.4 升级改造VUE3

摘要:本文介绍了一个基于Vue3的海康威视摄像头组件封装方案。针对官方仅提供HTML版本SDK的问题,作者通过封装实现了Vue3组件化集成,解决了iframe/webview引入方式的弊端。组件核心功能包括实时预览、本地录像、录像下载、截图抓拍等,并优化了SDK初始化逻辑(单例模式)、定位问题修复和错误处理机制。关键技术点包括:1)SDK插件容器定位修复;2)录像下载进度监控;3)多格式图片数据处理;4)多窗口场景下的SDK实例管理。该组件可直接通过npm安装使用,提供了完善的API和事件接口,显著提升了海

LINLINLINShi的博客 113

jdbc 入门 demo1

package cn.itcast.jdbc; import java.sql.*; /** * jdbc快速入门 */ public class JdbcDemo1 { public static void main(String[] args) throws ClassNotFoundException, SQLException { // 1.导入驱动jar包 // 2.注册驱动 Class.forName("com.mysql.cj.

fly 128

7.29华为OD机试真题 新系统 - 能量对撞 (Java/Py/C/C++/Js/Go)

7.29华为OD机试真题 新系统 - 能量对撞 (Java/Py/C/C++/Js/Go)

算法大师! 1316

把 LDB 讲透:SAP ABAP 逻辑数据库的结构、事件模型、动态选择与现代替代方案

摘要:SAP中的Logical Database(LDB)是一种将表组织成树形结构并统一生成选择屏幕的技术,通过事件驱动方式向报表程序传递数据。虽然被标记为过时,但在理解标准代码和优化性能方面仍有价值。LDB通过SE36事务码创建,其结构包含层级关系、选择屏幕和数据库程序。报表通过NODES声明和GET事件处理数据,支持动态选择以减少数据库访问。在S/4HANA和ABAP Cloud环境下,建议使用CDS View和ABAP SQL等现代方案替代LDB,以提升可测试性和架构清晰度。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 215

JDBC IDEA 连接使用MySQL+用户登录demo

JDBC IDEA 连接使用 JDBC IDEA 连接使用MySQL 背景知识jdbc JDBC简介 感谢小猴子,By 小猴子1024 | 2017年8月22日 什么是JDBC JDBC是java database connectivity的缩写,是SUN公司提供的一套操作数据库的标准规范。JDBC提供一些操作数据的API,开发者可以在java中使用这些API操作数据库,实现对表中数据的增删改查操...

kingsirvince的博客 6771

Python爬虫实战:爬取国家气象局台风路径数据的完整教程

国家气象局(如中国气象局)一般会在官方网站公布台风的实时路径,包括台风编号、名称、时间点、经纬度、中心气压、最大风速等信息。这些数据以图形和表格的形式呈现,有时以JSON或CSV文件形式下载。爬取这类数据,有助于构建台风数据库、历史路径分析、趋势预测等应用。本文详细介绍了如何通过Python爬取国家气象局发布的台风路径数据,涵盖了数据采集、解析、存储和可视化全流程。通过实践,你可以构建自己的台风数据库,结合机器学习开展路径预测和风险评估等高级分析。后续可结合深度学习技术,实现台风轨迹预测;

2201_76125261的博客 1024

mysql jdbc不同权限用户登录_Demo_JDBC_实现一个用户登陆的功能并改进sql的注入问题...

图解如何使用JDBC实现一个用户登陆的功能1、新建一个Java Project项目2、新建一个User类对应MySQL中的users表package com.soar.entity;import java.util.Date;public class User {private int id;private String name;private String password;private S...

weixin_28859539的博客 423

计算机毕设项目一:基于卷积神经网络、resnet、VGG化妆品分类识别 完整代码数据可直接运行

计算机毕设项目一:基于卷积神经网络、resnet、VGG化妆品分类识别 完整代码数据可直接运行

653

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Spring + Struts2 + Spring JDBC Template+ajaxanywhere+jquery实现登录,用户管理demo

要求用Spring + Struts2 + Spring JDBC Template+ajaxanywhere+jquery实现登录、部门管理(部门编号、部门名称,前端使用jquery ajax,要求增删改后列表局部刷新),实现用户管理功能(增加修改删除查询用户,用户信息包含用户名、密码、用户编号、真实姓名、所属部门、是否有效标识即可(前端使用ajaxanywhere,要求添加删除修改后列表局部刷...

shepherd_dirk的博客 687

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

全网最使用MySQL, JSP, Bean, JDBC(连接数据库) ,制作有权限(老师,学生,辅导员) 用户登录demo,表单查看demo

全网最使用MySQL, JSP, Bean, JDBC(连接数据库) ,制作有权限(老师,学生,辅导员) 用户登录demo,表单查看demo

m0_48851832的博客 453

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

实训日记(一)——环境安装和JDBC开发demo

实训日记 实训第一天。上午一来便是能力测试,分组。然后自然是开发环境配置。要装的东西有JDK、IDEA、tomcat、maven、DB、Notepad++编辑器安装包。不过其中很多东西都装过,这里不再赘述。就挑其中重装了的tomcat和maven来记录一下。下午进行了编程能力的自测,用JDBC来开发一个实现用户登录和用户增删查改的demo。 目录 安装配置教程 JDBC开发 一、安装配置教程 ...

qq_40689705的博客 379

Servlet+html+css+jsp+mysql实现用户登录

以下是项目结构:

Super陈 655

JDBC连接数据库实现简单登陆注册

【代码】JDBC连接数据库实现简单登陆注册。

cike_9905的博客 523

新手福音:用快马ai生成带详细注释的javaweb登录注册demo

比如在LoginServlet的init()方法旁会注明"容器初始化时调用一次",在doGet()旁写着"处理页面跳转请求",而doPost()旁则标注"处理表单提交数据"。最贴心的是,代码里还对比了GET和POST的区别,用注释画出了请求响应的完整流程图。特别在预处理语句防SQL注入的地方,注释不仅说明为什么要用PreparedStatement,还给出了SQL注入的示例攻击代码对比。最实用的是代码里预留的TODO注释,比如"此处可以添加密码加密"、"未来可增加验证码功能"。

BlackironPanther23的博客 25

Java实现的一个CUDR的Demo--------Servlet+JSP(JSTL)

一个Demo Demo结构 数据库部分 数据库表 工具类部分 数据库工具类 DBUtil.java package com.util; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; public class DBUtil { private

cCENDD的博客 239

jdbc基础之登录逻辑及工具封装

需求:封装登录方法、实现模拟登录。//创建Statement。功能:创建连接和关闭连接。验证用户名和密码是否匹配。第二步:编写登录逻辑。

洛洛呀。的博客 480

Java web框架之用户登录需求设计

这个用户登录需求说明,和技术设计,下面博文将通过一层模型,二层模型,三层模型,四层模型分别来实现这个功能。

黄瓜与萝卜 3360

Java实现用户登录Demo

一、环境 工具:Idea,mysql,Jdk9 二、工程目录 三、代码编写 1、数据库表 _ user CREATE TABLE user( id INT, username VARCHAR(10), password VARCHAR(10) ); ALTER TABLE user MODIFY id INT PRIMARY KEY AUTO_INCREMENT; ALTER TABLE us...

zhang150114的博客 1万+
上一篇: JDBC连接mysql记录
下一篇: Maven安装本地仓库报错总结
斯乌i
博客等级 码龄8年 20粉丝 25原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值