package com.net;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
public class LoginServer {
public static void main(String[] args) throws Exception {
ServerSocket ss = new ServerSocket(10000);
while (true) {
Socket s = ss.accept();
new Thread(new UserThread(s)).start();
}
}
}
class UserThread implements Runnable {
private Socket s;
public UserThread(Socket s) {
super();
this.s = s;
}
@Override
public void run() {
try {
BufferedReader brIn = new BufferedReader(new InputStreamReader(
s.getInputStream()));
BufferedReader br = new BufferedReader(new FileReader("user.txt"));
PrintWriter pw = new PrintWriter(s.getOutputStream(),true);
for (int i = 0; i < 3; i++) {
String name = brIn.readLine();
if (name == null)
break;
boolean flag = false;
for (String line = null; (line = br.readLine()) != null;) {
if (name.equals(line)) {
flag = true;
break;
}
}
if (flag) {
System.out.println(name + "已登陆");
pw.println("欢迎");
break;
} else {
System.out.println(name + "正在尝试登陆");
pw.println("用户名错误");
}
}
s.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
package com.net;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;
public class LoginClient {
public static void main(String[] args) throws Exception{
Socket s = new Socket("127.0.0.1",10000);
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
PrintWriter pw = new PrintWriter(s.getOutputStream(),true);
BufferedReader brIn = new BufferedReader(new InputStreamReader(s.getInputStream()));
for(int i=0;i<3;i++) {
String line = null;
line = br.readLine();
if(line==null)
break;
pw.println(line);
String str = brIn.readLine();
System.out.println(str);
if(str.contains("欢迎"))
break;
}
br.close();
s.close();
}
}