首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

java怎么指定出端口

2011-11-29 
java如何指定出端口?Java codepublic void activeSend(SocketAddress addr, byte[] data) throws Exceptio

java如何指定出端口?

Java code
    public void activeSend(SocketAddress addr, byte[] data) throws Exception {        DatagramPacket pack = new DatagramPacket(data, data.length, addr);        activeDatagramSocket.send(pack);        System.out.println("use active send");    }


如果这样发送的话 最终会从本地的一个 默认端口(操作系统帮你指定一个出端口) 出去到达对方IP

但我现在要指定端口,必须从3030出去.
也就是如果要写一个p2p打洞程序的必须操作: 指定确切的可行方向上的 '洞'

java如何指定出端口?

[解决办法]
SocketAddress是一个抽象类。
public class InetSocketAddress extends SocketAddress
InetSocketAddress 继承了SocketAddress。
InetSocketAddress(InetAddress addr, int port) 构造函数就可以指定端口。
[解决办法]
好厉害, lz写好程序后给我看看, 我也在学习呢
[解决办法]
UDP?
获得这个activeDatagramSocket的时候用下面的构造方法:
DatagramSocket(int port) 
创建数据报套接字并将其绑定到本地主机上的指定端口。
[解决办法]
用这个连服务器:
Socket(String host, int port, InetAddress localAddr, int localPort) 

[解决办法]
探讨

引用:

SocketAddress是一个抽象类。
public class InetSocketAddress extends SocketAddress
InetSocketAddress 继承了SocketAddress。
InetSocketAddress(InetAddress addr, int port) 构造函数就可以指定端口。


……

[解决办法]
探讨

楼上几位...

出端口 和 入端口的概念先搞明白成吗?

计算机 的port 分为出端口和入端口.

你建立 一个 socket server 侦听 8080端口. 随时准备接收其他人的消息. 这个时候 你这个8080叫做入端口.

而别人的IE去访问 你的8080端口是需要从自己的计算机的 xxxx 端口走出去从而到达你的 8080端口

如下:

192.168.……

[解决办法]
冷静!别动气,气大伤肝啊!大家都仔细看看对方的回复!
[解决办法]
搬凳子看看
[解决办法]
探讨

引用:
你认为如果你不指定端口,[C]lient -> [S]erver,难道只有S方才会有端口吗?C方难道不会产生随机端口吗???

巨汗......我都已经明确表示了 :我需要的不是随机端口了...... 而是指定端口, 我都明确表达了拒绝随机.... 你居然还能发出这样的回复来!!!!!!!!!!!!!!!!!!!!!

我再把问题给你发一次:……

[解决办法]
用Socket套接字制定端口
ServerSocket
[解决办法]
DatagramPacket pack = new DatagramPacket(data, data.length, addr);
activeDatagramSocket.send(pack);
System.out.println("use active send");

DatagramPacket是无法直接绑定本地IP和端口的。
DatagramPacket的数据是通过DatagramSocket.send出去的。
要绑定本地的端口和IP只需要调用。
activeDatagramSocket.bind(SocketAddress addr);
这里的SocketAddress就是我1楼的回复。

顺便在发一个JAVADOC给你。
JDK6 JavaDoc:http://download.csdn.net/detail/fainfy/3689670
JDK7 JavaDoc: http://download.csdn.net/detail/fainfy/3605021

顺便我的回复是按照楼主的代码来回复的,我认为没有问题,只是你没有明白而已。
如果提问者是一个有心人,我会直接贴上可用的代码。
[解决办法]
探讨

巨汗......我都已经明确表示了 :我需要的不是随机端口了...... 而是指定端口, 我都明确表达了拒绝随机.... 你居然还能发出这样的回复来!!!!!!!!!!!!!!!!!!!!!
----------------------

你觉得这样说话叫做[装逼]?

那么,请你滚吧

------解决方案--------------------


探讨

巨汗......我都已经明确表示了 :我需要的不是随机端口了...... 而是指定端口, 我都明确表达了拒绝随机.... 你居然还能发出这样的回复来!!!!!!!!!!!!!!!!!!!!!
----------------------

你觉得这样说话叫做[装逼]?

那么,请你滚吧

[解决办法]
探讨

引用:
唉,楼主也要冷静啊,先放下言语之争,仔细看看或者研究一下别人回复的代码吧。
说实话,不论正确与否,尊重回复你问题的人都是个美德,就算是你对,也应该礼让三分的,何况楼主有些先不冷静了。也许。。。楼主肝火正旺,该消消气的


你看上面几个回复能看出来 最先发起 不尊重他人回复的人 是他而不是我.

[解决办法]
问过怒 闻誉乐 损友来 益友却
闻誉恐 闻过欣 直谅士 渐相亲
过能改 归于无 倘掩饰 增一辜

这是《弟子规》里“信”篇
意思是:
  听到别人说自己的过错就生气,听到别人称赞恭维自己就高兴。那么,有损德行的朋友就回来与你接近,对你有益的朋友就会和你远离。
  听到别人赞美自己就感到惶恐不安,听到别人指出自己的过错就欢喜接受。经常这样做,哪些正直诚实的人,就会逐渐来亲近你。
  有了过错,要能用于面对,并彻底改正过来。这样,别人就还是把他当好人看。如果不肯承认,还要极力掩饰,那就错上加错了。

热点排行