import java.io.*;
import java.net.*;public class MyServer extends Thread {
ServerSocket server; int port; MyServer(int port) {
this.port = port;
try {
server = new ServerSocket(this.port);
} catch (IOException e) {
e.printStackTrace();
}
} public static void main(String[] args) {
MyServer myserver = new MyServer(5678);
myserver.setDaemon(true); //问题,执行这行的话,客户端的连接就被拒绝
myserver.start();
} public void run() {
logger = Logger.getLogger(MyServer.class.getName());
PropertyConfigurator.configure("MyServer.properties");
try {
Socket client = server.accept();
BufferedReader in = new BufferedReader(new InputStreamReader(client
.getInputStream()));
PrintWriter out = new PrintWriter(client.getOutputStream());
while (true) {
String str = in.readLine();
System.out.println(str);
out.println("has receive....");
out.flush();
if (str.equals("end"))
break;
}
client.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}客户端import java.io.*;
import java.net.*;public class Client { static Socket server;
public static void main(String[] args) {
try {
server = new Socket(InetAddress.getLocalHost(),5678);
BufferedReader in = new BufferedReader(new InputStreamReader(server
.getInputStream()));
PrintWriter out = new PrintWriter(server.getOutputStream());
BufferedReader wt = new BufferedReader(new InputStreamReader(
System.in));
while (true) {
String str = wt.readLine();
out.println(str);
out.flush();
if (str.equals("end")) {
break;
}
System.out.println(in.readLine());
}
server.close();
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} }}
import java.net.*;public class MyServer extends Thread {
ServerSocket server; int port; MyServer(int port) {
this.port = port;
try {
server = new ServerSocket(this.port);
} catch (IOException e) {
e.printStackTrace();
}
} public static void main(String[] args) {
MyServer myserver = new MyServer(5678);
myserver.setDaemon(true); //问题,执行这行的话,客户端的连接就被拒绝
myserver.start();
} public void run() {
logger = Logger.getLogger(MyServer.class.getName());
PropertyConfigurator.configure("MyServer.properties");
try {
Socket client = server.accept();
BufferedReader in = new BufferedReader(new InputStreamReader(client
.getInputStream()));
PrintWriter out = new PrintWriter(client.getOutputStream());
while (true) {
String str = in.readLine();
System.out.println(str);
out.println("has receive....");
out.flush();
if (str.equals("end"))
break;
}
client.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}客户端import java.io.*;
import java.net.*;public class Client { static Socket server;
public static void main(String[] args) {
try {
server = new Socket(InetAddress.getLocalHost(),5678);
BufferedReader in = new BufferedReader(new InputStreamReader(server
.getInputStream()));
PrintWriter out = new PrintWriter(server.getOutputStream());
BufferedReader wt = new BufferedReader(new InputStreamReader(
System.in));
while (true) {
String str = wt.readLine();
out.println(str);
out.flush();
if (str.equals("end")) {
break;
}
System.out.println(in.readLine());
}
server.close();
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} }}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货