这是我的服务器端代码
- package com.cg.tcp;
- import java.io.InputStream;
- import java.io.OutputStream;
- import java.net.ServerSocket;
- import java.net.Socket;
- public class TcpServer2{
- public static void main(String[] args) throws Exception {
- ServerSocket ss=new ServerSocket(10005);
- String ip=ss.getInetAddress().getHostAddress();
- System.out.println(ip+"-----connected!");
- Socket s=ss.accept();
- InputStream in=s.getInputStream();
- byte[] buf=new byte[1024];
- int len=in.read(buf);
- System.out.println(new String(buf,0,len));
-
- OutputStream out=s.getOutputStream();
- out.write("信息收到,你好!".getBytes());
- s.close();
- ss.close();
- }
- }
复制代码
下面是我的客户端代码,客户端代码可以发送信息,并且服务端也能收到信息,就是服务器端无法反馈信息
- package com.cg.tcp;
- import java.io.InputStream;
- import java.io.OutputStream;
- import java.net.InetAddress;
- import java.net.Socket;
- /*
- * 演示tcp的传输客户端和服务端的互访
- *
- * 演示
- * 客户端
- * 1.建立socket服务,指定要连接主机和端口
- * 2.获取socket流中的输出流,将数据写入到该流中,通过网络发送给客户端
- * 3.获取socket流中的输入流,将服务端反馈的数据获取到,并打印
- * 4.关闭客户端资源
- * */
- public class TcpClient {
- public static void main(String[] args) throws Exception {
- Socket s=new Socket(InetAddress.getLocalHost(),10005);
- OutputStream out=s.getOutputStream();
- out.write("服务端,你好!".getBytes());
- InputStream is=s.getInputStream();
- byte[] buf=new byte[1024];
- int len=is.read();
- System.out.println(new String(buf,0,len));
- s.close();
- }
- }
复制代码 |