import java.util.*;
import java.io.*;
public class UserLogin 
{
Properties prop;
public UserLogin()throws IOException
{
 prop = new Properties();


FileInputStream fis= new FileInputStream("sample.properties.txt"); prop.load(fis);


}
public String getUserName()
{
String username = prop.getProperty("username");
return username;
}
public String getPassword()
{
String password = prop.getProperty("password");
return password;
}
public static void main(String[] args)throws Exception
{
UserLogin userProp = new UserLogin();
System.out.println("\n                   欢迎进入登录界面!");
do
{
System.out.print("请输入用户名:");
Scanner s = new Scanner(System.in);
String userName = s.next().trim();
System.out.print("请输入密码:");
String password = s.next();
if(userName.equals(userProp.getUserName())&&password.equals(userProp.getPassword()))
{
System.out.println("欢迎进入收银系统!");
break;
}
else
{
System.out.println("你输入的密码或者用户名有误!\n是否继续登录?[y:继续登录][任意键:退出登录]");
String key = s.next();
if(key.equals("y"))
{
continue;
}
else
{
System.out.println("退出登录界面!");
break;
}
}

}while(true);
}
}
//这是实现一名用户名登录的,怎样实现多名的?

解决方案 »

  1.   

    一名的都写出来了,多名的还不会写吗?
    在sample.properties.txt配置文件中多配置几个用户和对应的密码呗,例如userName=name1,name2...nameN;
    passWord=passWord1,passWord2...passWordN
    把文件中的用户和密码都读取出来放到list中,遍历list判断输入是否匹配就可以了啊。
      

  2.   

    user=sam,jack,mother
    password=cat,dog,fish
      

  3.   

    Properties文件中的key不允许重复,相信你主要是想解决这个问题吧。
    你可以在Properties里以username1 password1,username2 password2的方式写多个用户名和密码
    然后这样取值:public Map getLoginInfo() 

    Map<String, String> map = new HashMap<String, String>();
    for (int i = 1; ; i++) {
    String username = prop.getProperty("username"+i);
    if (username == null) {
    break;
    }
    map.put(username, prop.getProperty("password"+i));
    }
    return map;

      

  4.   

    你应该没实践过吧
    username=aaa,bbb
    password=122,133
    此时输入的用户名为aaa,bbb
    密码为122,133
    才正确