导航:首页 > 网络安全 > java如何传输网络

java如何传输网络

发布时间:2022-10-31 20:16:43

A. java 网络编程传输对象问题 求大神指导 谢谢

传数据一般建议用json,像你这种之间吧对象传过去的话不用再客户端建user,你服务端需要用ObjectOutputStream对象去把你有数据的user序列话成流传输过去,客户端直接用ObjectInputStream读取这个流,对象就是Object,但是这个object就是你user的数据了,如果非要弄成user需要用反射把里面的数据set到你客户端的user中,这个没法直接转过去,不是一种class,所以只能反射再set

B. java如何实现基于TCP协议的socket传输

服务端监听:ServerSocket
server=new
ServerSocket(port);//port:绑定的端口号
Socket
client=server.accept();//监听端口,一旦取得连接则获得客户端的socket连接对象client
客户端:
Socket
s=new
Socket(ip,port);//要连接的服务器的ip以及端口号
如果正常连接上之后,socket的对象可以获得InputStream和OutputStreame,然后就可以进行通信了
完成通信之后,执行socket对象的close()方法关闭连接,完成一次完整的socket连接

C. java 如何实现 http协议传输

Java 6 提供了一个轻量级的纯 Java Http 服务器的实现。下面是一个简单的例子:

public static void main(String[] args) throws Exception{
HttpServerProvider httpServerProvider = HttpServerProvider.provider();
InetSocketAddress addr = new InetSocketAddress(7778);
HttpServer httpServer = httpServerProvider.createHttpServer(addr, 1);
httpServer.createContext("/myapp/", new MyHttpHandler());
httpServer.setExecutor(null);
httpServer.start();
System.out.println("started");
}

static class MyHttpHandler implements HttpHandler{
public void handle(HttpExchange httpExchange) throws IOException {
String response = "Hello world!";
httpExchange.sendResponseHeaders(200, response.length());
OutputStream out = httpExchange.getResponseBody();
out.write(response.getBytes());
out.close();
}
}

然后,在浏览器中访问 http://localhost:7778/myapp/

D. JAVA里怎么利用HTTP连接来进行数据传输

导入httpclient然后直接调用就可以了。或者resttemplet

E. 如何用java实现一个简单网络通信过程

你说的我明白。如果真正使用alohal协议的时候,所有的机器都可以检测网络电平变化的是吧?但是使用Java编写模拟程序的话,我们并不能可能检测电平的变换,只能通过一定的手段来模拟这个过程。如果你将一个包裹群发,这样所有的机器都可以接受这个包,这样就可以做到所有机器模拟检测电平变化的这个要求。我认为这个是最有说服力的模拟方法了。

线程需要使用Thread类型,重写里面的run函数,调用start()启动线程,具体可以搜索一把Thread,例子遍地都是。

UDP协议使用Socket类型,初始化的时候参数里面绑定(或者初始化好以后直接调用bind绑定端口,一般输出不用绑定,监听的时候需要绑定)。调用里面的getOutputStream得到输入流。调用getInputStream得到输入流。

OutputStream:输出流,用于向网络中输出数据。调用其中的write函数进行输出,函数的参数就是输出的byte数组。

InputStream: 输入流,用于接受网络里面的数据。调用其中的read可以得到输入的包。

String:你要输出的字符串,调用里面的getBytes可以得到String的byte数组。

其它的应该用不到什么了吧。

**********************************
1.发送字符串的话用byte[]就可以啊。用Socket类里面的getOutputStream可以获得一个发送数据的OutputStream类对象。这个类对象有一个函数write(byte[] b) 可以向网络写byte[]。一个字符串可以通过String类中的getBytes() 转化成byte[]。这样总该明白了吧

2.说一下我的思路:开一个端口A发送UDP包(广播给端口B),用于模拟发送,用一个线程(线程1)来跑。开端口B接受局域网内的包,用另外一个线程(线程2)来跑。在发送UDP包的时候,将变量mark置1,发送完置0。线程2如果接受到一个不是从本机发送的包,而且此时mark是1(说明本机和另外一个机器同时在发包),发生了冲突,表示线程1这次发送的包失败。

F. 如何用java实现网络通信

你说的我明白。如果真正使用alohal协议的时候,所有的机器都可以检测网络电平变化的是吧?但是使用Java编写模拟程序的话,我们并不能可能检测电平的变换,只能通过一定的手段来模拟这个过程。如果你将一个包裹群发,这样所有的机器都可以接受这个包,这样就可以做到所有机器模拟检测电平变化的这个要求。我认为这个是最有说服力的模拟方法了。

线程需要使用Thread类型,重写里面的run函数,调用start()启动线程,具体可以搜索一把Thread,例子遍地都是。

UDP协议使用Socket类型,初始化的时候参数里面绑定(或者初始化好以后直接调用bind绑定端口,一般输出不用绑定,监听的时候需要绑定)。调用里面的getOutputStream得到输入流。调用getInputStream得到输入流。

OutputStream:输出流,用于向网络中输出数据。调用其中的write函数进行输出,函数的参数就是输出的byte数组。

InputStream: 输入流,用于接受网络里面的数据。调用其中的read可以得到输入的包。

String:你要输出的字符串,调用里面的getBytes可以得到String的byte数组。

其它的应该用不到什么了吧。

**********************************
1.发送字符串的话用byte[]就可以啊。用Socket类里面的getOutputStream可以获得一个发送数据的OutputStream类对象。这个类对象有一个函数write(byte[] b) 可以向网络写byte[]。一个字符串可以通过String类中的getBytes() 转化成byte[]。这样总该明白了吧

2.说一下我的思路:开一个端口A发送UDP包(广播给端口B),用于模拟发送,用一个线程(线程1)来跑。开端口B接受局域网内的包,用另外一个线程(线程2)来跑。在发送UDP包的时候,将变量mark置1,发送完置0。线程2如果接受到一个不是从本机发送的包,而且此时mark是1(说明本机和另外一个机器同时在发包),发生了冲突,表示线程1这次发送的包失败。

阅读全文

与java如何传输网络相关的资料

热点内容
如何避免网络交友诈骗 浏览:572
电信网络费怎么取消 浏览:843
oppo手机没移动网络怎么办 浏览:116
路由器已连接就是无法访问网络 浏览:408
网络访问在哪里看 浏览:35
提示无法加入无线网络 浏览:178
小米3盒子增强版无线网络 浏览:133
台式电脑用网线好还是无线网络好 浏览:126
网络大屏哪个好 浏览:799
怎样查看移动网络速度 浏览:622
网络显示光信号咋回事 浏览:295
iphone怎么设置网络消耗 浏览:644
合肥付费网络推广哪里有 浏览:212
网络怎么设置才最好 浏览:742
wifi网络设置是有线无线 浏览:623
网络游戏温度多少度 浏览:450
教室的希沃白板怎么连接网络 浏览:571
三星i450网络设置 浏览:492
电脑无法连接家用网络 浏览:95
昆广电电脑怎么连接网络 浏览:166

友情链接