成都网站建设设计

将想法与焦点和您一起共享

mac简单java代码,mac怎么java编程

求获取客户端mac地址java代码,急需急需,麻烦了

通过ip获取指定ip地址的mac地址,ip可以通过请求request获取,

创新互联专注为客户提供全方位的互联网综合服务,包含不限于网站建设、做网站、水磨沟网络推广、微信小程序、水磨沟网络营销、水磨沟企业策划、水磨沟品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联为所有大学生创业者提供水磨沟建站搭建服务,24小时服务热线:18980820575,官方网址:www.cdcxhl.com

request.getRemoteAddr();

(当然获取ip也不是在任何情况下都有效的)

通过了Apache,Squid等反向代理软件就不能获取到客户端的真实IP地址。

您也许需要通过其他的方式获取,(见附)

//获取mac如下 (nbtstat -A IPAddress是对给定的IP地址解析其主机名。如果不能正常解析它的主机

//名的话,有可能是防火墙屏蔽了。也可能是在DNS中将NetBios 解析选项屏蔽了。)

public String getMACAddress(String ip){

String str = "";

String macAddress = "";

try {

Process p = Runtime.getRuntime().exec("nbtstat -A " + ip);

InputStreamReader ir = new InputStreamReader(p.getInputStream());

LineNumberReader input = new LineNumberReader(ir);

for (int i = 1; i 100; i++) {

str = input.readLine();

if (str != null) {

if (str.indexOf("MAC Address") 1) {

macAddress = str.substring(str.indexOf("MAC Address") + 14, str.length());

break;

}

if (str.indexOf("MAC Address") 1) {

macAddress = str.substring(str.indexOf("MAC 地址") + 14, str.length());

break;

}

//以上有个判断,不同系统cmd命令执行的返回结果展示方式不一样,我测试的win7是MAC 地址

//所以又第二个if判断 你可先在你机器上cmd测试下nbtstat -A 命令 当然得有一个你可以ping通的

//网络ip地址,然后根据你得到的结果中mac地址显示方式来确定这个循环取值

}

}

} catch (IOException e) {

e.printStackTrace(System.out);

}

return macAddress;

}

附:

通过代理了的客户端ip地址获取方式

于是可得出获得客户端真实IP地址的方法一:

public String getRemortIP(HttpServletRequest request) {

if (request.getHeader("x-forwarded-for") == null) {

return request.getRemoteAddr();

}

return request.getHeader("x-forwarded-for");

}

获得客户端真实IP地址的方法二:

public String getIpAddr(HttpServletRequest request) {

String ip = request.getHeader("x-forwarded-for");

if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {

ip = request.getHeader("Proxy-Client-IP");

}

if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {

ip = request.getHeader("WL-Proxy-Client-IP");

}

if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {

ip = request.getRemoteAddr();

}

return ip;

}

可是,如果通过了多级反向代理的话,X-Forwarded-For的值并不止一个,而是一串IP值,究竟哪个才是真正的用户端的真实IP呢?

答案是取X-Forwarded-For中第一个非unknown的有效IP字符串。如:

X-Forwarded-For:192.168.1.110, 192.168.1.120, 192.168.1.130, 192.168.1.100

用户真实IP为: 192.168.1.110

怎么用mac编java

下载mac版本的jdk,mac版本的开发工具即可。(环境变量不用配置。)

编写java所需要的工具都有相应的mac版本的。搜索相应的版本即可。

例如:

macbook如何编写java程序

Java on Mac没有任何特殊的东西,而且Mac OS X自身已经集成JDK,打开终端,输入java -version可以看到版本,编辑好你的java文件,然后javac就可以了,和windows版一样。

常见的Netbean或Eclipse等IDE都有Mac版,如果不熟悉Java语言或是刚刚接触,那就不属于Mac讨论范围了。总之,终端是个好东西,每每都能制造惊喜。

怎么在Mac10.9下写java代码

如果只是写代码的话用文本编辑器就行,因为.java文件本质上就是txt文件

但要是要编译的话就需要编译器了,首先去oracle官网下个jdk和匹配版本的jre,然后再下个编译器就行了。推荐jetbrains的IntelliJ IDEA,很方便


文章名称:mac简单java代码,mac怎么java编程
分享URL:http://chengdu.cdxwcx.cn/article/dsggppo.html