java编写TCP方式的通信程序
来源:互联网 发布:数据透视表怎么合计 编辑:程序博客网 时间:2024/05/18 20:10
java API中封装了大量的函数,供编写网络通信程序时使用.这使得java在网络方面具有强大的功能.用java编写TCP方式的通信程序比较简单,但也有一些问题需要注意.以下为监听主程序,监听程序在发现客户端连接后,启动一个会话socket线程,以实现实时发送,接收信息和多客户端同时工作.import java.io.*;import java.lang.*;import java.net.ServerSocket;import java.net.Socket;//主程序一直处于监听状态,有连接则启动一个线程进行处理,以实现多个客户端public class listenserve{private ServerSocket ss;private boolean listening=true;public listenserve(){Init();//初始化lisn();//启动监听 }public void Init(){try{ss=new ServerSocket(10015,10);}catch(IOException ie){ System.out.println("无法在10015端口监听"); ie.printStackTrace();}}public void lisn(){try{ while(listening) new Thread(new dialogserve(ss.accept())).start(); } catch(IOException ie) {ie.printStackTrace();}}public static void main(String args[]){new listenserve();}}//以下为会话主程序应该特别注意,如果客户端先关闭,会话socket中可能抛出socketexception:connection reset这应该在程序中进行处理,这也是较易忽略的问题.import java.io.*;import java.lang.*;import java.net.ServerSocket;import java.net.Socket;import java.net.SocketException;public class dialogserve implements Runnable{private Socket s;private InputStream in;private String rev,temp;private byte b[];private int len;public dialogserve(Socket ss){s=ss;b=new byte[1024];try{in=s.getInputStream();}catch(IOException ie){ie.printStackTrace();}rev="";}public void run(){try{while(s.isConnected()==true){if((len=in.read(b))!=-1){temp=new String(b,0,len); rev+=temp; System.out.print(rev); temp=null; Thread.sleep(1000);}} in.close();s.close();System.out.println("会话socket已断开!");}catch(SocketException se){System.out.println("客户端已断开!"); System.exit(0);}catch(IOException io){io.printStackTrace();System.exit(0);}catch(InterruptedException ire){ ire.printStackTrace();}}}//以下为客户端主程序import java.io.*;import java.net.Socket;import java.lang.*;public class client{private Socket con;//客户端连接socketprivate OutputStream out;private String sen;private byte b[];public client(){clientInit();}public void clientInit(){try{ con=new Socket("localhost",10015); con.setSoTimeout(10000); b=new byte[1024]; OutputStream out=con.getOutputStream(); sen="hello serve,以TCP方式发送数据!"; b=sen.getBytes(); out.write(b); out.flush(); out.close(); con.close();}catch(IOException ie){ie.toString();}}public static void main(String args[]){new client();}}总的来说,以上所列代码较为简单,但已基本反映出java编写简单TCP通信程序的原理.希望各位朋友批评.大家共同学习交流.
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>- java编写TCP方式的通信程序
- java编写TCP方式的通信程序
- java编写TCP方式的通信程序
- java编写TCP&&UDP方式的通信程序
- 黑马程序员--java入门之TCP协议编写的通信程序
- Java编写一个简单的TCP通信程序。服务器发送一条字符串,客户端接收该信息并显示。
- JAVA系列课程讲座一:使用Socket通信实现网络通信程序(TCP方式)
- JAVA 基于TCP协议编写的Socket聊天室程序
- TCP客户端程序的编写
- 基于TCP协议的点对点通信java程序,带图形界面
- java Socket(一个简单的TCP通信程序)
- 简单的tcp通信程序
- 一.用java编写的入门客户/服务器通信程序
- 一.用java编写的入门客户/服务器通信程序
- 一.用java编写的入门客户/服务器通信程序
- 串口通信程序的编写
- C语言编写基于TCP和UDP协议的Socket通信程序示例
- 使用JAVA编写网络通信程序
- JDO学习笔记 Sun JDO参考实现篇
- 站内搜索脚本例子三(JavaScript)
- Java学习笔记(四)
- 站内搜索脚本例子四(JavaScript)
- jsp连接sybase数据库中文显示问题终极解决办法!
- java编写TCP方式的通信程序
- 站内搜索脚本例子五(JavaScript)
- `MDIP的生命周期
- 站内搜索脚本例子一(JavaScript)
- 设计迷踪:给JAVA设计开发新手的一些建议和意见(一)
- 制作柱状投票统计图的完整程序
- 设计迷踪:给JAVA设计开发新手的一些建议和意见(三)
- 逐个变色的CSS文字效果
- 设计迷踪:给JAVA设计开发新手的一些建议和意见(四)