请问java获取请求对象的电脑ip和网络ip的方法是什么

请问java获取请求对象的电脑ip和网络ip的方法是什么,第1张

import javaio;

import javanet;

try {

URL url = new URL(">

不可以,这属于用户隐私信息,再说如果可以的话,那我们的电脑你不觉得很危险吗?随便一个网页都可以看到你的硬件信息,很危险的。我原来遇到过用户想这样搞,最后跟用户谈,不能实现,修改成cookie验证了,像韩家_四少发的代码,只可以在特定环境下使用,还需要考虑网络状态,而且nbtstat -a是windows 下面的命令,根本不可行。

1得到局域网网段,可由自己机器的IP来确定 (也可以手动获取主机IP-CMD-ipconfig /all)

2根据IP类型,一次遍历局域网内IP地址

JAVA类,编译之后直接运行便可以得到局域网内所有IP,具体怎样使用你自己编写相应代码调用便可

代码如下::

package bean;

import javaio;

import javautil;

public class Ip{

static public HashMap ping; //ping 后的结果集

public HashMap getPing(){ //用来得到ping后的结果集

return ping;

}

//当前线程的数量, 防止过多线程摧毁电脑

static int threadCount = 0;

public Ip() {

ping = new HashMap();

}

public void Ping(String ip) throws Exception{

//最多30个线程

while(threadCount>30)

Threadsleep(50);

threadCount +=1;

PingIp p = new PingIp(ip);

pstart();

}

public void PingAll() throws Exception{

//首先得到本机的IP,得到网段

InetAddress host = InetAddressgetLocalHost();

String hostAddress = hostgetHostAddress();

int k=0;

k=hostAddresslastIndexOf("");

String ss = hostAddresssubstring(0,k+1);

for(int i=1;i <=255;i++){ //对所有局域网Ip

String iip=ss+i;

Ping(iip);

}

//等着所有Ping结束

while(threadCount>0)

Threadsleep(50);

}

public static void main(String[] args) throws Exception{

Ip ip= new Ip();

ipPingAll();

javautilSet entries = pingentrySet();

Iterator iter=entriesiterator();

String k;

while(iterhasNext()){

MapEntry entry=(MapEntry)iternext();

String key=(String)entrygetKey();

String value=(String)entrygetValue();

if(valueequals("true"))

Systemoutprintln(key+"-->"+value);

}

}

class PingIp extends Thread{

public String ip; // IP

public PingIp(String ip){

thisip=ip;

}

public void run(){

try{

Process p= RuntimegetRuntime()exec ("ping "+ip+ " -w 300 -n 1");

InputStreamReader ir = new InputStreamReader(pgetInputStream());

LineNumberReader input = new LineNumberReader (ir);

//读取结果行

for (int i=1 ; i <7; i++)

inputreadLine();

String line= inputreadLine();

if (linelength() <17 || linesubstring(8,17)equals("timed out"))

pingput(ip,"false");

else

pingput(ip,"true");

//线程结束

threadCount -= 1;

}catch (IOException e){}

}

}

}

作为一名IT行业从业多年的工程师(目前在研究人工智能),我来说一下我的观点。

Java只是一门编程语言,它常用的开发工具主要有:

Eclipse

Eclipse可以作为Java入门者的开发工具,优点是直接明了的 *** 作,占用内存小,不过在一些情况下很容易出现报错警告

IDEA

IDEA是一个十分好用,界面高大上,快捷键方便,插件超多的集成开发环境,但是它非常吃你电脑的内存,至少4G以上。

电脑配置的话其实如果只学一门Java的话,8G内存,显卡1050Ti,固态512G,CPU I5就行,价格大概在4k左右

但是学了Java后面你可能会往大数据,又或者往机器学习领域学习,如果你想一劳永逸,建议这样的配置:16G内存,显卡1060Ti(可选),硬盘1T,固态256G,CPU I7,价格大概8k左右。推荐:联想拯救者7000p

以上就是关于请问java获取请求对象的电脑ip和网络ip的方法是什么全部的内容,包括:请问java获取请求对象的电脑ip和网络ip的方法是什么、java中怎么获取电脑的mac地址、java 代码如何获取用户的硬件信息,就是判断用户是否用同一个手机或者同一台电脑或者同一个ipad访问了等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9287186.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存