java网络编程如果在一台机器上可以用到一个回文地址做测试,127.0.0.1(localhost).
java网络编程用到socket类,socket 是面向客户/服务器模型而设计的,也就是常说的c/s模式。
1.网络编程需要有一个服务器端,在服务器端创建一个ServerSocket,然后掉用accept方法等待客户端连接。
2.客户端需要创建一个Socket,并请求与服务器连接。
3.服务器接收客户端的连接请求,并创建一个新的Socket与用户进行连接,连接的时候需要注意客户端的端口号与服务器端的端口号要保持一致。
4.端口号0———1023不能够随意的使用,所以挑选端口号的时候要用1024以后的
下面是我写的一个小例子,服务器端给了客户端一个圆的半径为1,然后服务器端计算出来结果,再用流的方式返回给服务器端。
客户端
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
public class javaServer {
public static void main(String[] args) {
try {
ServerSocket ss = new ServerSocket(1408); //创建了一个ServerSocket,端口号为1408;
Socket socket = ss.accept(); //创建了一个Socket的对象等待用户连接
DataOutputStream dos = new DataOutputStream(socket.getOutputStream());
dos.writeUTF("1"); //传送给客户端一个值为1的圆的半径
dos.flush(); //清空此数据输出流
DataInputStream dis = new DataInputStream(socket.getInputStream());
System.out.println("圆的面积是"+dis.readUTF()); //将客户端返回给服务器的结果输出
dos.close(); //关闭输出流
dis.close(); //关闭输入流
ss.close(); //关闭ServerSocket
socket.close(); //关闭Socket
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
客户端
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.*;
import org.omg.CORBA.portable.OutputStream;
public class javaClient {
public static void main(String[] args) {
int temp = 0,result;
try {
Socket s = new Socket("localhost",1408); //建立一个Socket的对象,端口号与服务器端保持一致
DataInputStream dis = new DataInputStream(s.getInputStream());
temp = Integer.parseInt(dis.readUTF());
System.out.println("圆的半径是"+temp);
result = (int) (Math.PI*temp*temp); //计算圆的面积
DataOutputStream dos = new DataOutputStream(s.getOutputStream());
dos.writeUTF(result+""); //让结果变成String型
dis.close();
dos.flush();
dos.close();
s.close();
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
输出的结果,客户端输出的结果
圆的半径是1
服务器端输出的结果
圆的面积是3
分享到:
相关推荐
Java网络编程
《Java网络编程》,附带《Java网络编程实例》和阅读器,欢迎下载
java网络编程pdf java网络编程pdf java网络编程pdf java网络编程pdf java网络编程pdf java网络编程pdf java网络编程pdf java网络编程pdf
java网络编程.pdf
Java网络编程(第3版) 《Java网络编程》第三版会为你介绍Java网络API的最新特性。本书讨论了JDK 1.4和1.5(现在已命名为J2SE 5)中所做的所有修改和增补。本书内容全面,涵盖了从网络基础知识到远程方法调用(RMI)...
Java网络编程(第4版)的电子版书籍,学习java通讯技术的同学建议看一下这本书
Java网络编程期末考试复习题库+答案 java网络编程考试题目,内含有Java网络编程期末复习题(I/O、多线程、网络编程、数据库操作),有答案
《Java网络编程(第4版)》全面介绍了如何使用Java开发网络程序。你将学习如何使用Java的网络类库既快速又轻松地完成常见的网络编程任务,如编写多线程服务器、加密通信、广播到本地网络,以及向服务器端程序提交数据...
Java网络编程
Java网络编程 JAVA web开发实例讲解 宠物分类展现web项目 第01章 项目背景知识(共15页).ppt Java网络编程 JAVA web开发实例讲解 宠物分类展现web项目 第02章 用HTML+CSS实现宠物分类展现静态网页版本(共44页)....
Java网络编程实验报告.pdf
JAVA 网络编程服务器端例程,一个测试socket通信的比较好的例程
Java网络编程精解(孙卫琴)电子教案;Java网络编程精解(孙卫琴)电子教案
Java网络编程实践课程设计报告.pdf
最近获得的《Java网络编程实例》一书的源代码,上次在CSDN看到一个相同的资源,结果一下载打开,机子就中毒了,强烈鄙视那种上传病毒的人!
《Java网络编程实例:Java网络编程实例》一书的光盘资源,包括各章的源代码实例,需要学习的朋友看看
java网络编程实例,详细深入介绍java网络编程技术
Java网络编程 详细介绍