`

html用java获取系统信息

阅读更多
import java.applet.Applet;
import java.net.InetAddress;
import java.net.NetworkInterface;

public class getipapp extends Applet {
	private static final long serialVersionUID = -6110707947762970236L;

	public String myip() {
		try {
			byte[] mac = NetworkInterface.getByInetAddress(InetAddress.getLocalHost()).getHardwareAddress();
			StringBuffer sb = new StringBuffer();
			for (int i = 0; i < mac.length; i++) {
				if (i != 0) {
					sb.append("-");
				}
				String s = Integer.toHexString(mac[i] & 0xFF);
				sb.append(s.length() == 1 ? 0 + s : s);
			}
			return sb.toString().toUpperCase();
		} catch (Exception e) {
			return "没有";
		}

	}

	public getipapp() {
	}

	public void start() {
	}
}

import java.io.BufferedReader;
import java.io.File;
import java.io.FileWriter;
import java.io.InputStreamReader;
import java.net.InetAddress;
import java.net.NetworkInterface;

public class HardWareUtils {

	/**
	 * 获取主板序列号
	 * 
	 * @return
	 */
	public static String getMotherboardSN() {
		String result = "";
		try {
			File file = File.createTempFile("realhowto", ".vbs");
			file.deleteOnExit();
			FileWriter fw = new java.io.FileWriter(file);
			String vbs = "Set objWMIService = GetObject(\"winmgmts:\\\\.\\root\\cimv2\")\n"
					+ "Set colItems = objWMIService.ExecQuery _ \n"
					+ "   (\"Select * from Win32_BaseBoard\") \n"
					+ "For Each objItem in colItems \n"
					+ "    Wscript.Echo objItem.SerialNumber \n"
					+ "    exit for  ' do the first cpu only! \n" + "Next \n";

			fw.write(vbs);
			fw.close();
			Process p = Runtime.getRuntime().exec(
					"cscript //NoLogo " + file.getPath());
			BufferedReader input = new BufferedReader(new InputStreamReader(p
					.getInputStream()));
			String line;
			while ((line = input.readLine()) != null) {
				result += line;
			}
			input.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
		return result.trim();
	}

	/**
	 * 获取硬盘序列号
	 * 
	 * @param drive
	 *            盘符
	 * @return
	 */
	public static String getHardDiskSN(String drive) {
		String result = "";
		try {
			File file = File.createTempFile("realhowto", ".vbs");
			file.deleteOnExit();
			FileWriter fw = new java.io.FileWriter(file);

			String vbs = "Set objFSO = CreateObject(\"Scripting.FileSystemObject\")\n"
					+ "Set colDrives = objFSO.Drives\n"
					+ "Set objDrive = colDrives.item(\""
					+ drive
					+ "\")\n"
					+ "Wscript.Echo objDrive.SerialNumber"; // see note
			fw.write(vbs);
			fw.close();
			Process p = Runtime.getRuntime().exec(
					"cscript //NoLogo " + file.getPath());
			BufferedReader input = new BufferedReader(new InputStreamReader(p
					.getInputStream()));
			String line;
			while ((line = input.readLine()) != null) {
				result += line;
			}
			input.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
		return result.trim();
	}

	/**
	 * 获取CPU序列号
	 * 
	 * @return
	 */
	public static String getCPUSerial() {
		String result = "";
		try {
			File file = File.createTempFile("tmp", ".vbs");
			file.deleteOnExit();
			FileWriter fw = new java.io.FileWriter(file);
			String vbs = "Set objWMIService = GetObject(\"winmgmts:\\\\.\\root\\cimv2\")\n"
					+ "Set colItems = objWMIService.ExecQuery _ \n"
					+ "   (\"Select * from Win32_Processor\") \n"
					+ "For Each objItem in colItems \n"
					+ "    Wscript.Echo objItem.ProcessorId \n"
					+ "    exit for  ' do the first cpu only! \n" + "Next \n";
			fw.write(vbs);
			fw.close();
			Process p = Runtime.getRuntime().exec(
					"cscript //NoLogo " + file.getPath());
			BufferedReader input = new BufferedReader(new InputStreamReader(p
					.getInputStream()));
			String line;
			while ((line = input.readLine()) != null) {
				result += line;
			}
			input.close();
			file.delete();
		} catch (Exception e) {
			e.fillInStackTrace();
		}
		if (result.trim().length() < 1 || result == null) {
			result = "无CPU_ID被读取";
		}
		return result.trim();
	}

	/**
	 * 获取MAC地址
	 */
	public static String getMac() {
		try {
			byte[] mac = NetworkInterface.getByInetAddress(InetAddress.getLocalHost()).getHardwareAddress();
			StringBuffer sb = new StringBuffer();
			for (int i = 0; i < mac.length; i++) {
				if (i != 0) {
					sb.append("-");
				}
				String s = Integer.toHexString(mac[i] & 0xFF);
				sb.append(s.length() == 1 ? 0 + s : s);
			}
			return sb.toString().toUpperCase();
		} catch (Exception e) {
			return "";
		}

	}

	public static void main(String[] args) {
		System.out.println("CPU  SN:" + HardWareUtils.getCPUSerial());
		System.out.println("主板  SN:" + HardWareUtils.getMotherboardSN());
		System.out.println("C盘   SN:" + HardWareUtils.getHardDiskSN("c"));
		System.out.println("MAC  SN:" + HardWareUtils.getMac());
	}

}
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <title> New Document </title>
  <meta name="Generator" content="EditPlus">
  <meta name="Author" content="">
  <meta name="Keywords" content="">
  <meta name="Description" content="">
  <SCRIPT LANGUAGE=javascript>
function getmyip()
{
  window.document.form1.iptxt.value=window.document.getipapp.myip(); 
}
</SCRIPT>

 </head>
 <body>
 <applet code="getipapp.class" name="getipapp"></applet>
<input type="hidden" name="iptxt">
<button onclick="alert(window.document.getipapp.myip());">点击获取值</button>
<button onclick="alert(window.document.getipapp.getMotherboardSN());">获取主板序列号</button>
<button onclick="alert(window.document.getipapp.getHardDiskSN());">获取硬盘序列号</button>
<button onclick="alert(window.document.getipapp.getCPUSerial());">获取CPU序列号</button>
 </body>
</html>

 

分享到:
评论

相关推荐

    java获取天气预报

    在Java编程中,获取实时天气预报是一项常见的任务,可以用于各种应用程序,如智能家居系统、出行助手等。本篇将深入探讨两种实现方式:通过HTTP客户端请求API接口获取XML数据以及利用HTMLUnit解析网页源码抓取天气...

    学生信息管理系统 java 课程设计

    《Java 学生信息管理系统详解》 在信息技术领域,学生信息管理系统是一种常见且重要的应用,它主要用于管理和处理教育机构中的学生数据。在这个课程设计中,我们利用Java编程语言实现了一个功能完备的学生信息管理...

    java获取外网ip

    ### Java 获取外网 IP 的实现方法 在现代网络应用中,获取本机的外网 IP 地址是一项常见的需求。例如,在服务器管理、网络安全、分布式系统等场景中,经常需要知道自己的公共 IP 地址。Java 作为一种广泛使用的编程...

    Java 学生信息管理系统 源码

    本系统展示了如何使用Java和JSP技术实现一个简单的学生信息管理系统,包括用户界面设计、数据接收处理以及数据库操作等方面。这种类型的系统在实际应用中非常常见,对于学习Java Web开发来说具有很高的参考价值。

    java爬取携程酒店评价信息

    本项目专注于使用Java编写爬虫来获取携程酒店的用户评价信息,这涉及到网络请求、HTML解析和数据存储等多个环节。首先,我们需要理解爬虫的基本工作原理:发送HTTP请求到目标网站,接收返回的HTML或JSON等格式的网页...

    java代码生成html文件

    在实际开发中,我们可能会遇到这样的场景:从数据库获取数据,然后用这些数据自动生成HTML报告。 描述 "java生成静态html代码 一个简单的实例 自己去扩展" 提到这是一个基础的实现,用于生成静态HTML页面。这意味着...

    java excel转html

    - **32位和64位支持**:这通常是指运行Java应用的JVM是32位还是64位,大多数现代Java环境支持两者,所以库本身一般不会受到系统位数的影响,但确保使用的Java版本与操作系统兼容。 在项目`OfficeToHtml`中,很可能...

    java查询系统3

    - **通用性**:Java Applet可以从加载它的HTML文件中获取数据库表名、字段名和字段数量,使得更换查询表时只需修改HTML,不需改动Applet代码。 - **通信机制**:Applet与服务器通过Java套接字进行通信,Applet将...

    java获取Max地址

    总结,"java获取Max地址"涉及到Java内存管理、数组和集合的操作,以及可能的第三方库的使用。理解这些基础知识对于进行高效的Java编程至关重要。在实际应用中,根据具体场景选择合适的方法,既能保证代码的正确性,...

    Java迷你青春购物系统

    【Java迷你青春购物系统】是一个基于Java编程语言开发的电子商务应用程序,它包含了完整的前后端功能,为用户提供了一个轻量级的在线购物体验。系统的核心特点在于其自带的数据库,这表明开发者已经预先配置好了数据...

    基础的Java工单系统源码.zip

    6. **API接口**:为了与其他系统集成,可能提供了RESTful API,使得其他应用能提交工单或获取工单信息。 7. **错误处理和日志记录**:良好的错误处理和日志记录对于排查问题和维护系统稳定至关重要,Java提供了一...

    http.rar_HTTP网页_JAVA 获取http_html_java 获取网页_指定提取网页

    在这个"获取http_html_java"的实现中,很可能就是用Jsoup来解析HTML,找到图片链接。 接下来,我们要讨论如何从HTML中提取图片链接。HTML中的图片通常由`&lt;img&gt;`标签表示,其`src`属性包含图片的URL。使用Jsoup,...

    java管理系统源码

    以上各系统在实现过程中,可能会用到Spring Framework、Spring Boot、Hibernate、MyBatis等Java开发常用工具,同时,前端展示可能采用HTML、CSS、JavaScript,配合Bootstrap、Vue.js、React等框架。通过学习和分析...

    java-点餐系统

    Java点餐系统是一种基于Java技术实现的餐饮管理系统,主要用于帮助餐厅高效管理订单、菜单和顾客信息。这个系统可能包括前端用户界面,供顾客选择菜品、下单,以及后端的订单处理、库存管理等功能。让我们深入探讨...

    Java 机票查询系统

    为了运行这个系统,你需要在本地环境中配置Tomcat 6.0,这是一个广泛使用的Java Servlet容器,它负责解析和执行JSP文件,将动态内容转化为静态HTML页面发送给客户端。同时,还需要安装JDK 6,这是Java Development ...

    JAVA计算机管理系统

    【JAVA计算机管理系统】是一个以Java编程语言为基础的综合性管理平台,它旨在提供高效、稳定且易用的系统...同时,阅读提供的文档,如声明.html和codechina.txt,将有助于你遵循正确的使用步骤和获取更全面的项目信息。

    java课程查询系统

    Java课程查询系统是一种基于Java编程语言开发的教育信息化软件,主要功能是帮助学生、教师以及教育机构方便地查询和管理课程信息。这个系统对于正在学习Java编程的人来说具有很高的实用价值,因为它不仅展示了Java在...

    Java+Web项目企业事务管理系统源码 (1)Java源码

    6. **MyBatis框架**:MyBatis是一个持久层框架,它简化了数据库操作,通过XML或注解方式配置和映射原生信息,将接口和Java的POJOs(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。 7. **Hibernate ...

    试题管理系统 (JAVA)

    2. **数据库操作**:系统需要与数据库进行交互,存储和检索试题、答案、分类等信息。通常会使用SQL语言配合JDBC(Java Database Connectivity)接口来实现,如MySQL或Oracle数据库可能被选用。 3. **数据实体...

Global site tag (gtag.js) - Google Analytics