易截截图软件、单文件、免安装、纯绿色、仅160KB

Java/JSP获得客户端网卡MAC地址的三种方法解析

从网上查找资料java/jsp获得客户端(IE)网卡MAC地址的方法大概有三种。
1、通过命令方式,在客户端执行Ipconfig 等等
2、通过ActiveX的方法
3、通过向137的端口发送查询指令的方法
简介:
第一种方法,在真正用到时候不知道为什么获得mac地址的指令阻塞了,不往下继续执行。而且速度是这三种方法中最慢的一种。
代码如下:
String sip="";
String smac="";
sip = request.getHeader("x-forwarded-for");
if(sip == null ||sip.length() == 0 || "unknown".equalsIgnoreCase(sip))
{
sip = request.getHeader("proxy-Client-IP");
}
if (sip == null || sip.length() == 0 || "unknown".equalsIgnoreCase(sip))
{
    sip = request.getHeader("WL-Proxy-Client-IP");
}  
if (sip == null ||sip.length() == 0 || "unknown".equalsIgnoreCase(sip))
{
    sip = request.getRemoteAddr();
}
    if(!"127.0.0.1".equals(sip)) //本机过滤掉
   {
       Process process = Runtime.getRuntime().exec("nbtstat -a " + sip);
       InputStreamReader ir = new InputStreamReader(process.getInputStream());
    LineNumberReader input = new LineNumberReader(ir);
    String line;
   while ((line = input.readLine()) != null)
      if (line.indexOf("MAC Address") > 0)
    {
          smac = line.substring(line.indexOf("-") - 2);
    }
第二种方法是用ActiveX来获得,速度比第一种方法快但是必须降低安全设置否则脚本不被执行
IE设置如下
1.打开IE浏览器
2.工具->Internet选项->安全
3.自定义级别(C)...
4.设置中对未标记为可安全执行脚本的ActiveX控件初始化并执行脚本
   选中启动(不安全)->每次不用点击"是"按钮,推荐,当然你的机器不能上互联网否则会有安全问题。
   选中提示->每次都得点击"是"按钮。
5.点击"确定"->"确定"按钮
6.重新启动IE浏览器设置生效
代码
<SCRIPT language=JScript event="OnCompleted(hResult,pErrorObject, pAsyncContext)"


相关文档:

0元月薪 北京求职 Java开发

  在北京呆了一个月多了,为了生存,笔记本电脑也贱卖了,不知道工作这么难找。
 
  一个正经的面试也没有。 
  我从07年毕业已经浪费2年时间了,我愿意用半年的0薪酬来换取我入行开发;
  希望北京有公司提供让我实现自我价值的平台。
  如果您对我的能力有疑问,沟通可以了解 ......

java实现的霍纳规则的多项式计算

霍纳规则多项式计算如果使用朴素的多项式求值,时间复杂度为O(n*n),而是用了霍纳规则可以使用递归或者迭代来实现,时间复杂度是O(n),下面是源代码:
/*
* 实现霍纳规则的多项式计算时间复杂度为O(N)
*/
public class HuonaRule {
public static void main(String args[])
{
double data[]=new double[]{1.0,2, ......

Java连接数据库的方法

Java连接数据库的方法
注:转于http://www.newasp.net/tech/java/15826.html
JAVA连接数据库主要有两种方式:
一是用JDBC-ODBC桥来连接
二是用相关厂商提供的相应驱动程序来连接
用JDBC-ODBC桥来连接
JDBC-ODBC桥接器是用JdbcOdbc.Class和一个用于访问ODBC驱动程序的本地库实现的。对于WINDOWS平台,该本地库是一个动 ......

Java中的对象池模式

Java中的对象池模式
Java对象的生命周期分析:
Java对象的生命周期大致包括三个阶段:
对象的创建,对象的使用, 对象的清除。 因此,对象的生命周期长度可用如下的表达式表示: T = T1 + T2 + T3.其中T1表示对象的创建时间,T2表示对象的使用时间,而T3则表示对象的清除时间。由此,我们可以看出,只有T2是真正有效的时 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号