Java 验证登录的案例

    需求
       已知用户名和密码,请用程序模拟用户登录,总共有三次机会,登录之后,给出相对应的提示
    思路
           1.已知用户名和密码,定义两个字符串即可
           2.键盘录入登录数数据
           3.用录入的数据和原来的数据相比对  equals()方法实现
           4.用循环实现多次机会,采用for循环,在登录成功后,实验break结束循环

首先,看黑马老师的代码 

package 课后作业;

import java.util.Scanner;

public class 用户登录黑马 {
	/*
	   需求
	   已知用户名和密码,请用程序模拟用户登录,总共有三次机会,登录之后,给出相对应的提示
	   
	   
	   思路
	       1.已知用户名和密码,定义两个字符串即可
	       2.键盘录入登录数数据
	       3.用录入的数据和原来的数据相比对  equals()方法实现
	       4.用循环实现多次机会,采用for循环,在登录成功后,实验break结束循环
	 */

	public static void main(String[] args) {
		// TODO 自动生成的方法存根
		String username="itheima";
		String password="czbk";
		
		//4.用循环实现多次机会,采用for循环,在登录成功后,实验break结束循环
		for (int i = 0; i < 3 ; i++) {
			
		
		
		Scanner sc=new Scanner(System.in);
		System.out.println("请输入账号:");
		String name =sc.nextLine();
		System.out.println("请输入密码:");
		String pwd=sc.nextLine();
		sc.close();
		if(name.equals(username)&&pwd.equals(password)) {
			System.out.println("密码验证成功");
			break;
		}else {
			//
	    	 System.out.println("密码验证失败,您还有"+(2-i)+"次机会");
	    	 
	        }
		}
	}

}

 以下的代码,是我自己写的,可以作为参考,比黑马老师的代码复杂一丢丢.

其实我就是按照,面对对象的思想来写的,实例化对象来获取类中的方法,或者获取值,这样就能把main方法中的代码简单化,甚至只需要调用就好了,出了问题直接去看各个“模块”,问题一目了然,在写代码的路上也遇到了很多很多问题,例如NoSuchElementException报错等等等,但是好在都解决了,不过思来想去,我渐渐明白了也个道理,就是感觉一直跟着课走其实很傻,有的时候,在一些案例题上,你会产生自己的想法,但是,课上的老师,肯定不会教给你难的方法,他只是想让你明白他说的这种方式,有的时候你就也跟着老师走了,但是这样的话,这个问题,你的想法,是不会再来第二次的,课是上不完的,思想虽然也在与时俱进,但是会不会总是显得不这么完整!,学java来的这几天,我总是以为自己差不多都看会了,但其实,当你自己去实操一个小小的小项目的时候,弊端就一个一个都出来了,就像这个破案例,我都做了一天半,不过好在是成功了,太笨了,还需要好好努力,加油,勉励!

获取账号和密码类

package 登录;

import java.util.Scanner;

public class 获取账户密码 {
	public int getAccount() {
		// TODO 自动生成的方法存根
		System.out.println("请输入账号");
		Scanner sc=new Scanner(System.in);
	    int pp=sc.nextInt();
		
		
		return pp;

	}
	public String getPassword() {
		// TODO 自动生成的方法存根
		System.out.println("请输入密码");
		Scanner sc=new Scanner(System.in);
	    String pp=sc.next();
		
		
		return pp;

	}

}

比较类 

package 登录;

public class 比较 {
	
	public static int judgement(int account,String password,int a,String p) {
		获取账户密码 aaa = new 获取账户密码();
		 a =aaa.getAccount();
		获取账户密码 ppp = new 获取账户密码();
		 p =ppp.getPassword();
		System.out.println(a+"这还a");
		System.out.println(p+"这是p");
		System.out.println(account+"这是account");
		System.out.println(password+"这是password");
		if( a==account && p.equals(password) ) {   //||是或者的意思
	    	 return 0;                             //&&是和的意思
	    }else {
	    	 return 1;
	    }
	 }
}

测试类

package 登录;

public class 测试 {
	

	public static void main(String[] args) {
		 
		
		for (int i = 0; i < 3; i++) {
		  int a=0;             //进行初始化
		  String p="null";     //进行初始化
		  int result =比较.judgement(123456,"123456", a, p);
		 if(result>0) {
	    	 System.out.println("密码验证失败请重新输入账号和密码,您还有"+(2-i)+"次机会");
	     }else {
	    	 System.out.println("密码验证成功");
	    	 break;
	     }
	}
	}
}

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
Java自动登录是指在网站或应用程序中使用Java语言编写代码,实现用户账户的自动登录功能。以下是一个简单的Java自动登录案例: 假设有一个网站,网站在登录页面上有用户名和密码的输入框,并有一个登录按钮,当用户输入正确的用户名和密码后点击登录按钮,网站会验证用户的身份,并跳转到用户的个人主页。现在我们使用Java语言编写代码,实现自动登录功能。 首先,我们需要导入需要的Java库,如`java.net.URL`、`java.net.HttpURLConnection`等。然后创建一个`URL`对象,传入网站登录页面的URL地址。 接下来,我们创建一个`HttpURLConnection`对象,并使用`openConnection()`方法建立与URL的连接。 然后,我们设置连接的一些属性,如请求方法为POST、设置请求头部(Content-Type为application/x-www-form-urlencoded等)等。 接着,我们构建一个字符串,将用户名和密码以POST请求的格式(如username=value&password=value)放入请求体中,并将请求体写入到连接的输出流中。 然后,我们调用`getInputStream()`方法获取连接的输入流,并读取服务器的响应。如果响应中包含了登录成功的标志(如用户个人主页的URL),则表示登录成功。 最后,我们关闭连接。 以上就是一个简单的Java自动登录案例。需要注意的是,实际中还可能需要处理一些异常、添加验证码处理、保存登录状态等,具体实现方法会因网站的不同而有所不同。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

很丧

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值