这个是java初步的题,我不会,有没有高手能帮我写一个简单的我学习一下,书上的太难了谢谢啦,明天老

这个是java初步的题,我不会,有没有高手能帮我写一个简单的我学习一下,书上的太难了谢谢啦,明天老师要考,所以比较急,谢谢大家了

package com.cwc.mystudy.entity;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Scanner;

public class AuthTest {

public static void main(String[] args) {
System.out.println("请输入用户名:");
Scanner s = new Scanner(System.in);
String name = s.next();

System.out.println("请输入密码:");
String password = s.next();
s.close();

AuthTest test = new AuthTest();

test.echResult(new Auth1(), name, password);
test.echResult(new Auth2(), name, password);

}

void echResult(Auth aAuth, String name, String password){
if (aAuth.check(name, password)) {
System.out.println("OK");
} else {
System.out.println("Error");
}
}

}

interface Auth {
boolean check(String name, String password);
Map<String, String> getAuthData();
}


class Auth1 implements Auth {

private static final String AUTH_FILE_PATH = "d:/auth1.txt";

@Override
public boolean check(String name, String password) {
if (name != null && name.length() > 0 && password != null && password.length() > 0) {
Map<String, String> authData = getAuthData();
if (authData.size() > 0 && authData.containsKey(name)) {
if (authData.get(name).equals(password))
return true;
}
}
return false;
}

/**
 * 
 * 姓名:密码
 *
 */
@Override
public Map<String, String> getAuthData() {
Map<String, String> result = new HashMap<String, String>();

try {
BufferedReader br = new BufferedReader(new FileReader(new File(AUTH_FILE_PATH)));
String info = null;
 
while(null !=(info = br.readLine())) {
String[] temp = info.split(":");
result.put(temp[0], temp[1]);
}
br.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}

return result;
}

}


class Auth2 implements Auth {
private static final String AUTH_FILE_PATH = "d:/auth2.txt";

@Override
public boolean check(String name, String password) {
if (name != null && name.length() > 0 && password != null && password.length() > 0) {
Map<String, String> authData = getAuthData();
if (authData.size() > 0 && authData.containsKey(name)) {
if (authData.get(name).equals(password))
return true;
}
}
return false;
}

/**
 * 
 * 姓名
 * 密码
 */
@Override
public Map<String, String> getAuthData() {
List<String> userData = new ArrayList<String>();
Map<String, String> result = new HashMap<String, String>();

try {
BufferedReader br = new BufferedReader(new FileReader(new File(AUTH_FILE_PATH)));
String info = null;
 
while(null !=(info = br.readLine())) {
userData.add(info);
}
br.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
int size = userData.size();
for (int i = 0; i < size; i=i+2){
result.put(userData.get(i), userData.get(i+1));
}

return result;
}

}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-06-13
不连接数据库,写个登录吧!
相似回答