身份验证时,我们常常要返回一个User对象,然而又要知道到底是什么地方错误。我们可以用Exception进行控制!下面是我写的一个例子,你可以加上数据库连接!
public class Login{
public User validate(String userName,String password) throws InvalidNameException,WrongPasswordException{
if(userName.equals("java")){
if(password.equals("java")){
return new User(userName);
}else{
throw new WrongPasswordException();
}
}else{
throw new InvalidNameException();
}
//return null;
}
public static void main(String[] args){
Login l=new Login();
User user=null;
try{
user=l.validate("javac","java");
}catch(InvalidNameException invalidName){
System.out.println("The username is invalid!");
}catch(WrongPasswordException wrongPassword){
System.out.println("The password is wrong");
}
if(!(user==null)){
System.out.println(user.getUserName());
}
}
}
class User{
private String userName;
public User(String userName){
this.userName=userName;
}
public void setUserName(String userName){
this.userName=userName;
}
public String getUserName(){
return userName;
}
}
class InvalidNameException extends Exception{
public InvalidNameException(){
}
}
class WrongPasswordException extends Exception{
public WrongPasswordException(){
}
}
责任编辑:虫虫