您的位置:首页 > 理论基础 > 计算机网络

Java学习之网络编程

2017-07-31 16:11 218 查看
因为我是java菜鸟,目前还在入门阶段,用最简单的代码来记录相关的知识点:

TCP客户端程序:

package dailyadviceclient;

import java.io.*;
import java.net.*;

public class DailyAdviceClient {

public void go(){
try {
Socket s = new Socket("127.0.0.1",5555);//建立一个新的Socket网络连接:第一个参数是IP地址,第二个是端口

InputStreamReader streamReader = new InputStreamReader(s.getInputStream());//创建Socket数据输入流
BufferedReader reader = new BufferedReader(streamReader);//从数据流中读取信息

String advice = reader.readLine();

System.out.println("Today you should:"+advice);
reader.close();
} catch (Exception e) {
e.printStackTrace();
}

}
public static void main(String[] args) {
DailyAdviceClient client = new DailyAdviceClient();

client.go();

}

}


TCP服务端程序

package dailyadviceserver;

import java.io.*;
import java.net.*;

public class DailyAdviceServer {

String[] adviceList = {"Take smaller bites","Go for the tight jeans.No they do NOT make "
+ "you look fat"};//服务端要发送的信息列表
public void go()
{
try {
ServerSocket serverSocket = new ServerSocket(5555);//设置一个新的端口,尽量不要讲端口设置为0~1024,因为他们已经被已知的服务占用
while (true) {
Socket socket = serverSocket.accept();//创建件一个新的端口监听
PrintWriter writer = new PrintWriter(socket.getOutputStream());
String advice = getAdvice();
writer.println(advice);//向数据流中写信息
writer.close();
System.out.println(advice);
}
} catch (Exception e) {
}

}
private String getAdvice()
{
int random = (int)(Math.random() * adviceList.length);
return adviceList[random];
}
public static void main(String[] args) {
DailyAdviceServer server = new DailyAdviceServer();
server.go();
}
}


上面的例子大概描述了一个TCP网络编程的简单流程。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java