Java实现登录和注册功能

这篇具有很好参考价值的文章主要介绍了Java实现登录和注册功能。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本文主要应用的技术有:GUI和IO流

我们要利用Java的图形化界面编程实现一个拥有注册和登录简单功能的案例

设计思路:首先我们要实现注册功能,就要有一个用来储存用户名和密码的对象,这里所采用的对象就是文件,通过IO流操作,将用户名和密码以字符串拼接的方式存入文件;其次,要做到登录的功能,就是要使用户输入的用户名和密码,能与文件中储存的(其中一条)数据对的上,就显示登录成功,否则就失败;最后我们就是要将GUI与IO流结合起来,达到实现。

代码:

package 练习;

import java.awt.Dimension;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;


public class Test1 extends JFrame{
	//创建文本标签和文本框
	JLabel usernamel=new JLabel("用户名");
	JLabel usernuml=new JLabel("密码  ");
	JTextField usernamet=new JTextField(18);
	JTextField usernumt=new JTextField(18);
	
	//创建一个容器用来储存
	JPanel jp=new JPanel();
	
	//注册和登录的按钮
	JButton jbutton1=new JButton("注册");
	JButton jbutton2=new JButton("登录");
	public Test1() {
		
		Toolkit t=Toolkit.getDefaultToolkit();//工具类
		Dimension d=t.getScreenSize();
		
		int height=(int)d.getHeight();//得到显示屏的高度
		int width=(int)d.getWidth();//得到显示屏的宽度
		this.setBounds((width-300)/2, (height-400)/2, 250, 150);//设置一个宽为250,高为150的窗口,并且让窗口居中
		
		this.setDefaultCloseOperation(3);//关闭窗口的同时,结束运行
		this.setTitle("登录系统");//窗口标题
		init();
		this.setVisible(true);//让窗口显示
	}
	public void init() {
		//将内容添加到容器中
		jp.add(usernamel);
		jp.add(usernamet);
		jp.add(usernuml);
		jp.add(usernumt);
		jp.add(jbutton1);
		jp.add(jbutton2);
		
		jbutton1.addActionListener(new ActionListener() {//添加监听器
			//将用户名和密码写入文件中的操作
			@Override
			public void actionPerformed(ActionEvent e) {
				try {
					BufferedWriter w=new BufferedWriter(new FileWriter("D:/登录.txt",true));
					String sum=usernamet.getText()+" "+usernumt.getText();//中间加了空格是为了确保后续登录与文件数据匹配的稳定性
					BufferedReader r=new BufferedReader(new FileReader("D:/登录.txt"));
					boolean cot=true;
					String s;
					while((s=r.readLine())!=null) {
						if(sum.equals(s)) {
							cot=false;//如果符合其中一条数据,说明该数据就已经存在了,就不能在注册
						}
					}
					if(cot) {
					w.write(sum);
					w.newLine();
					w.flush();
					w.close();
					JOptionPane.showMessageDialog(null, "注册成功!");//对按了注册按钮做出的回应
					}else {
						JOptionPane.showMessageDialog(null, "已经存在了,请更换用户名和密码!");//对按了注册按钮做出的回应
					}
				} catch (IOException e1) {
					e1.printStackTrace();
				}
				
			}
		});
		
		jbutton2.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed(ActionEvent e) {
				String sum=usernamet.getText()+" "+usernumt.getText();//中间加了空格是为了确保与文件数据匹配的稳定性
				//对用户名和密码进行匹配
				boolean cot=false;
				String s;
				try {
					BufferedReader r=new BufferedReader(new FileReader("D:/登录.txt"));
					while((s=r.readLine())!=null) {
						if(s.equals(sum)) {
							cot=true;//如果符合其中一条数据,就为登录成功
						}
					}
					//对按登录按钮做出的回应
					if(cot) {
						JOptionPane.showMessageDialog(null, "登录成功!");
					}else {
						JOptionPane.showMessageDialog(null, "用户名或者密码错误,登录失败!");
					}
				} catch (Exception e1) {
					e1.printStackTrace();
				}
			}
		});
		this.add(jp);
	} 
	public static void main(String[] args) {
		new Test1();
	}
}

 页面运行结果:

Java实现登录和注册功能

 注册账号结果:

 

Java实现登录和注册功能

如果输入了相同的账号和密码,就不会注册成功:

Java实现登录和注册功能 

在比对用户名是否被注册方面,还没有完善。 

登录结果:

Java实现登录和注册功能 

登录失败结果:

Java实现登录和注册功能 

谢谢观看!文章来源地址https://www.toymoban.com/news/detail-508564.html

到了这里,关于Java实现登录和注册功能的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 根据Java Web 使用Servlet +Mysql 实现简易的登录及注册功能以及项目间的分层

    1、概述         一个好的层次划分不仅可以能使代码结构更加清楚,还可以使项目分工更加明确,可读性大大提升,跟回家有利于后期的维护和升级。从另一个角度来看,好的代码分层架构,应该使可以很好的匹配上单一职责原则的。这样就可以降低层与层之间的依赖,

    2024年02月05日
    浏览(59)
  • 网页版Java(Spring/Spring Boot/Spring MVC)五子棋项目(二)前后端实现用户的登录和注册功能【用户模块】

    1. 用户id 2. 用户名 3. 密码 4. 天梯积分 5. 总场数 6. 获胜场数 和数据库的数据一一对应 1. 连接数据库(application.yml连接数据库) 这个可以直接赋值代码 2. 创建UserMapper的Java接口(interface UserMapper) 创建接口,在UserMapper.xml实现 在model中创建 需要实现@Mapper注释 3. 创建UserMappe

    2024年02月13日
    浏览(51)
  • js实现登录注册功能

    话不多说,上代码。 登录功能 注册功能

    2024年02月11日
    浏览(39)
  • SSM框架实现登录注册功能

    刚刚写出来的SSM登录注册案例,网上随便翻一下都有 ,本篇直接上手,使用Maven工程搭建一个简单的SSM框架实现简单的登录注册,验证重名功能。 链接:https://pan.baidu.com/s/1qJ8aN7rheZXWT2_O_uiBKg  提取码:6666  目录 项目结构图 持久层相关配置文件 applicationContext-dao.xml application

    2023年04月08日
    浏览(42)
  • Django实现的登录注册功能

    在Web开发中,用户登录和注册是最基本且必不可少的功能。Django,作为一个高级的Python Web框架,为我们提供了强大的工具和库来快速实现这些功能。下面,我将详细介绍如何使用Django来实现用户登录和注册功能。 该项目是使用django+bootstrp开发的项目,包含以下功能 注册:

    2024年04月16日
    浏览(48)
  • Unity实现登录/注册/审核功能

    2024年01月23日
    浏览(50)
  • Unity实现账号登录,注册功能

    制作了用户登录界面  关于弹窗使用了DOTween插件,实现渐隐渐显效果。 关于账号使用了本地Json读取, 默认账号:YSQS/YSQS1 密码:admin/admin1 注册功能其实应该重构的因为有二次读流的问题存在。 账号注册加入了邀请码(其实就一个if)  接下来就是我那臭死了的源码。 GameSt

    2024年02月11日
    浏览(42)
  • 微搭低代码实现登录注册功能

    原来产品在创建应用的时候可以创建模型应用,模型应用对应我们小程序的后端。最新的更新已经将模型应用的能力下线,那我们不得不自己实现一下后端的逻辑。 后端需要要求用户进行注册,注册完了之后进行登录。本文介绍一下如何借助API的能力实现注册和登录。 用户

    2024年02月04日
    浏览(50)
  • Vue项目二 登录注册功能的实现

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 环境搭建完,根据管理系统用户需要注册,实现登录然后将用户信息保存在本地中的需求,本章主要实现系统登录注册功能。 首先分析注册页面所要实现的功能,其功能包括账号、昵称、密码和二次确

    2023年04月08日
    浏览(47)
  • 登录和注册页面 - 验证码功能的实现

    目录 1. 生成验证码 2. 将本地验证码发布成 URL 3. 后端返回验证码的 URL 给前端 4. 前端将用户输入的验证码传给后端 5. 后端验证验证码 使用hutool 工具生成验证码. 1.1 添加 hutool 验证码依赖 1.2 创建验证码的控制器  application.propertities 中添加验证码保存路径 ( 末尾一定要带斜杆

    2024年02月15日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包