Maison  >  Article  >  Java  >  Comment déterminer le nom d'utilisateur et le mot de passe en Java

Comment déterminer le nom d'utilisateur et le mot de passe en Java

藏色散人
藏色散人original
2020-02-11 11:15:245419parcourir

Comment déterminer le nom d'utilisateur et le mot de passe en Java

Comment Java détermine-t-il le nom d'utilisateur et le mot de passe ? Nom d'utilisateur et mot de passe de vérification Java

Supposons qu'un nom d'utilisateur et un mot de passe doivent être saisis dans l'interface de connexion d'un système de gestion d'entrepôt. Le nom d'utilisateur ne peut contenir que 6 à 10 chiffres et le mot de passe ne peut être composé que de 6 à 10 chiffres. avoir 6 chiffres. Tout manquement aux exigences en matière de nom d’utilisateur ou de mot de passe est considéré comme une exception et doit être détecté et traité.

Partage de didacticiels vidéo associés : Tutoriel vidéo Java

Ce qui suit utilise une classe d'exception personnalisée pour compléter la fonction de vérification des informations de connexion de l'utilisateur. Les étapes de mise en œuvre sont les suivantes.

(1) Écrivez une classe d'exception personnalisée LoginException, qui hérite de Exception. La classe LoginException contient deux constructeurs, à savoir le constructeur sans paramètres et le constructeur avec un paramètre. Le code est le suivant :

public class LoginException extends Exception
{
public LoginException()
{
super();
}
public LoginException(String msg)
{
super(msg);
}
}

(2) Créez la classe de test Test08, dans The validateLogin. () est définie dans cette classe pour vérifier le nom d'utilisateur et le mot de passe. Lorsque le nom d'utilisateur ou le mot de passe ne répond pas aux exigences, utilisez la classe d'exception personnalisée LoginException pour générer les informations d'exception correspondantes. La méthode validateLogin() est définie comme suit :

public boolean validateLogin(String username,String pwd)
{
boolean con=false; //用户名和密码是否正确
boolean conUname=false; //用户名格式是否正确
try
{
if(username.length()>=6&&username.length()<=10)
{
for(int i=0;i<username.length();i++)
{
char ch=username.charAt(i); //获取每一个字符
if(ch>=&#39;0&#39;&&ch<=&#39;9&#39;)
{ //判断字符是否为0~9的数字
conUname=true; //设置 conUname 变量值为 true
}
else
{ //如果字符不是0~9的数字,则拋出LoginException异常
conUname=false;
throw new LoginException("用户名中包含有非数字的字符!");
}
}
}
else
{ //如果用户名长度不在6~10位之间,拋出异常
throw new LoginException("用户名长度必须在6〜10位之间!");
}
if(conUname)
{ //如果用户名格式正确,判断密码长度
if(pwd.length()==6)
{ //如果密码长度等于6
con=true; //设置con变量的值为true,表示登录信息符合要求
}
else
{ //如果密码长度不等于6,拋出异常
con=false;
throw new LoginException("密码长度必须为 6 位!");
}
}
}
catch(LoginException e)
{ //捕获 LoginException 异常
System.out.println(e.getMessage());
}
return con;
}
(3) 在 Test08 类中添加 main() 方法,调用 validateLogin() 方法,如果该方法返回 true,则输出登录成功的信息。main() 方法的定义如下:
 
public static void main(String[] args)
{
Scanner input=new Scanner(System.in);
System.out.println("用户名:");
String username=input.next();
System.out.println("密码:");
String password=input.next();
Test08 lt=new Test08 ();
boolean con=lt.validateLogin(username,password); //调用 validateLoginO 方法
if(con)
{
System.out.println("登录成功!");
}
}

Dans la méthode validateLogin() de ce programme, les instructions de contrôle conditionnel et les instructions de boucle for sont utilisées pour vérifier respectivement le nom d'utilisateur et le mot de passe. Toute situation qui ne répond pas aux exigences en matière de nom d'utilisateur ou de mot de passe lèvera une exception personnalisée LoginException, interceptera l'exception dans l'instruction catch et affichera les informations sur l'exception.

Exécutez le programme. Lorsque le nom d'utilisateur saisi par l'utilisateur contient des caractères non numériques, une exception LoginException sera levée. Exécutez le code dans le bloc d'instruction catch pour imprimer les informations d'exception, comme indiqué ci-dessous.

用户名:
xiake8!
密码:
123456
用户名中包含有非数字的字符!

Lorsque la longueur du nom d'utilisateur saisi par l'utilisateur n'est pas comprise entre 6 et 10 caractères, une exception LoginException sera également levée et les informations sur l'exception seront imprimées, comme indiqué ci-dessous.

用户名:
administrator
密码:
123456
用户名长度必须在6~10位之间!

Lorsque le mot de passe de connexion saisi par l'utilisateur n'est pas égal à 6 chiffres, une exception LogWException sera également levée et les informations sur l'exception seront imprimées, comme indiqué ci-dessous.

用户名:
20181024
密码:
12345
密码长度必须为 6 位!

Lorsque le nom d'utilisateur et le mot de passe saisis par l'utilisateur répondent aux exigences, les informations de connexion réussie seront imprimées, comme indiqué ci-dessous.

用户名:
20181024
密码:
123456
登录成功!

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn