`
lhgyy00
  • 浏览: 145248 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

socket学习笔记(1)

阅读更多
client端的代码


package test2;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.InetAddress;
import java.net.Socket;
import java.net.UnknownHostException;

import com.tt.hz.remoteClient;


public class ClientCode {
	/*public static void main(String[] args) {
		String aa = remoteClient.hzGetServerSingleData("192.168.0.101", "15002", "3", "NULL");
		System.out.println(aa);
	}*/


	static String clientName="Mike";
	public static int portNo=15002;	
	
	public static void main(String[] args) {
		try {
			Thread.sleep(1000);
		} catch (InterruptedException e1) {
			e1.printStackTrace();
		}
		Socket socket=null;
		try {
			InetAddress addr=InetAddress.getByName("localhost");
			try {
				socket=new Socket(addr,15002);
				
				PrintWriter pw=new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())),true);
//				PrintWriter pw=new PrintWriter(socket.getOutputStream(),true);
				pw.println("Hello Server,I am "+clientName);
				
				BufferedReader in=new BufferedReader(new InputStreamReader(socket.getInputStream()));
				String strLine=in.readLine();
				System.out.println(strLine);
				
				pw.println("byby");
			} catch (IOException e) {
				e.printStackTrace();
			}
			
		} catch (UnknownHostException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}finally{
			try {
				socket.close();
			} catch (IOException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		
	}

}
 
Server端的代码:


package test2;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;

public class ServerCode {

	public static int portNo=15002;
	
	public static void main(String[] args) {
		
		Socket socket=null;
		ServerSocket serverSocket=null;
		try {
			serverSocket=new ServerSocket(portNo);
			socket=serverSocket.accept();
			System.out.println("Accept the Client:"+socket.toString());
			
			BufferedReader in=new BufferedReader(new InputStreamReader(socket.getInputStream()));
			PrintWriter out=new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())),true);
			
			while(true){
				String str=in.readLine();
				if(str!=null){
					System.out.println("In Server reveived the info :"+str);
					out.println(str);
				}
			}
			
		} catch (Exception e) {
		}finally{
			try {
				socket.close();
			} catch (IOException e) {
				e.printStackTrace();
			}
			
		}
		
	}

}



 
分享到:
评论

相关推荐

    WindowsSocket学习笔记.docx

    WindowsSocket学习笔记.docx

    WindowsSocket学习笔记.pdf

    WindowsSocket学习笔记.pdf

    Socket网络编程学习笔记

    这份"Socket网络编程学习笔记"涵盖了从基础概念到高级技术的全面知识,对于初学者来说是一份非常有价值的参考资料。以下是对这份笔记内容的详细解读: 1. **Socket基本概念**:Socket在计算机网络中扮演着桥梁的...

    Socket网络编程学习笔记(1)

    ### Socket网络编程基础知识点 #### 一、IP地址操作类详解 在进行Socket网络编程时,熟练掌握IP地址的操作是至关重要的。以下是两个关键的类:`IPAddress`和`IPEndPoint`。 ##### 1. `IPAddress`类 `IPAddress`...

    Socket网络编程学习笔记.zip

    "TCP_UDP_Socket学习笔记.md" 文件很可能会详细阐述这些概念,包括如何创建和使用Socket对象,如何处理连接和数据传输,以及在实际应用中的注意事项。此外,笔记可能还会包含实例代码,帮助初学者更好地理解和实践...

    socket 学习笔记

    以下是对Socket学习笔记的详细解释: 1. **Socket构造方法**: - `Socket()`:创建一个未连接的Socket对象。 - `Socket(InetAddress address, int port)`:创建一个Socket并连接到指定的IP地址和端口。 - `...

    socket网络笔记总结(适合新手)

    适合新手学习的网络socket编程笔记,内容详细简单明了。

    Windows Socket 学习笔记.doc

    1. **流式套接字 (SOCK_STREAM)**:这种类型的Socket提供了一个双向、有序、无重复且无记录边界的连续数据流服务,适用于需要可靠传输大量数据的应用,如FTP和HTTPS。它是面向连接的,需要先建立TCP连接,这保证了...

    Socket学习笔记

    本资源包含了Socket学习笔记和课件,适合对网络编程感兴趣的初学者或希望深入理解Socket技术的学习者。 首先,我们需要了解Socket的基本概念。Socket是操作系统提供的一个接口,它允许应用程序通过这个接口发送和...

    socket学习笔记

    在本文中,我们将深入探讨"socket学习笔记"中的关键概念和技术细节。 首先,让我们理解什么是Socket。Socket是应用层与传输层之间的一个接口(API),它允许程序通过网络进行数据交换。在TCP/IP协议族中,Socket...

    Socket网络编程学习笔记(4)

    Socket网络编程是构建分布式应用程序的基础,它允许两个网络上的进程之间进行双向通信。在本文中,我们将探讨在TCP...在后续的学习笔记中,作者还将探讨如何在消息中传递实体类信息,这将进一步扩展网络通信的能力。

    Socket网络编程学习笔记(1)

    1. `GetHostName()`:返回本地计算机的主机名。 2. `GetHostByName(string hostName)`:根据主机名返回一个`IPHostEntry`对象,包含了主机名、别名和IP地址数组。 3. `GetHostByAddress(IPAddress address)`或`...

    socket学习精华笔记

    Socket是一种广泛应用于计算机网络通信中的编程接口,它允许多个程序之间的数据交换。在互联网上,Socket用以实现不同计算机或同一计算机上不同进程间的通信。为了更深入地理解Socket,接下来将详细阐述其关键知识点...

    学习笔记:多线程Java Socket编程示例

    在本学习笔记中,我们将探讨如何使用Java的Socket编程实现多线程服务器,特别是通过ExecutorService创建线程池来处理客户端的并发请求。ExecutorService是一个高级的线程管理工具,它允许我们更有效地管理和控制线程...

    Socket网络编程学习笔记(6)

    Socket网络编程是构建网络应用程序的基础,它允许两个进程通过网络进行通信。在本文中,我们将关注如何使用线程池来优化Socket通信中的多线程处理,以提高程序性能。 在传统的Socket编程中,每当有新的客户端请求...

Global site tag (gtag.js) - Google Analytics