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编程中,获取实时天气预报是一项常见的任务,可以用于各种应用程序,如智能家居系统、出行助手等。本篇将深入探讨两种实现方式:通过HTTP客户端请求API接口获取XML数据以及利用HTMLUnit解析网页源码抓取天气...
《Java 学生信息管理系统详解》 在信息技术领域,学生信息管理系统是一种常见且重要的应用,它主要用于管理和处理教育机构中的学生数据。在这个课程设计中,我们利用Java编程语言实现了一个功能完备的学生信息管理...
### Java 获取外网 IP 的实现方法 在现代网络应用中,获取本机的外网 IP 地址是一项常见的需求。例如,在服务器管理、网络安全、分布式系统等场景中,经常需要知道自己的公共 IP 地址。Java 作为一种广泛使用的编程...
本系统展示了如何使用Java和JSP技术实现一个简单的学生信息管理系统,包括用户界面设计、数据接收处理以及数据库操作等方面。这种类型的系统在实际应用中非常常见,对于学习Java Web开发来说具有很高的参考价值。
本项目专注于使用Java编写爬虫来获取携程酒店的用户评价信息,这涉及到网络请求、HTML解析和数据存储等多个环节。首先,我们需要理解爬虫的基本工作原理:发送HTTP请求到目标网站,接收返回的HTML或JSON等格式的网页...
在实际开发中,我们可能会遇到这样的场景:从数据库获取数据,然后用这些数据自动生成HTML报告。 描述 "java生成静态html代码 一个简单的实例 自己去扩展" 提到这是一个基础的实现,用于生成静态HTML页面。这意味着...
- **32位和64位支持**:这通常是指运行Java应用的JVM是32位还是64位,大多数现代Java环境支持两者,所以库本身一般不会受到系统位数的影响,但确保使用的Java版本与操作系统兼容。 在项目`OfficeToHtml`中,很可能...
- **通用性**:Java Applet可以从加载它的HTML文件中获取数据库表名、字段名和字段数量,使得更换查询表时只需修改HTML,不需改动Applet代码。 - **通信机制**:Applet与服务器通过Java套接字进行通信,Applet将...
总结,"java获取Max地址"涉及到Java内存管理、数组和集合的操作,以及可能的第三方库的使用。理解这些基础知识对于进行高效的Java编程至关重要。在实际应用中,根据具体场景选择合适的方法,既能保证代码的正确性,...
【Java迷你青春购物系统】是一个基于Java编程语言开发的电子商务应用程序,它包含了完整的前后端功能,为用户提供了一个轻量级的在线购物体验。系统的核心特点在于其自带的数据库,这表明开发者已经预先配置好了数据...
6. **API接口**:为了与其他系统集成,可能提供了RESTful API,使得其他应用能提交工单或获取工单信息。 7. **错误处理和日志记录**:良好的错误处理和日志记录对于排查问题和维护系统稳定至关重要,Java提供了一...
在这个"获取http_html_java"的实现中,很可能就是用Jsoup来解析HTML,找到图片链接。 接下来,我们要讨论如何从HTML中提取图片链接。HTML中的图片通常由`<img>`标签表示,其`src`属性包含图片的URL。使用Jsoup,...
以上各系统在实现过程中,可能会用到Spring Framework、Spring Boot、Hibernate、MyBatis等Java开发常用工具,同时,前端展示可能采用HTML、CSS、JavaScript,配合Bootstrap、Vue.js、React等框架。通过学习和分析...
Java点餐系统是一种基于Java技术实现的餐饮管理系统,主要用于帮助餐厅高效管理订单、菜单和顾客信息。这个系统可能包括前端用户界面,供顾客选择菜品、下单,以及后端的订单处理、库存管理等功能。让我们深入探讨...
为了运行这个系统,你需要在本地环境中配置Tomcat 6.0,这是一个广泛使用的Java Servlet容器,它负责解析和执行JSP文件,将动态内容转化为静态HTML页面发送给客户端。同时,还需要安装JDK 6,这是Java Development ...
【JAVA计算机管理系统】是一个以Java编程语言为基础的综合性管理平台,它旨在提供高效、稳定且易用的系统...同时,阅读提供的文档,如声明.html和codechina.txt,将有助于你遵循正确的使用步骤和获取更全面的项目信息。
Java课程查询系统是一种基于Java编程语言开发的教育信息化软件,主要功能是帮助学生、教师以及教育机构方便地查询和管理课程信息。这个系统对于正在学习Java编程的人来说具有很高的实用价值,因为它不仅展示了Java在...
6. **MyBatis框架**:MyBatis是一个持久层框架,它简化了数据库操作,通过XML或注解方式配置和映射原生信息,将接口和Java的POJOs(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。 7. **Hibernate ...
2. **数据库操作**:系统需要与数据库进行交互,存储和检索试题、答案、分类等信息。通常会使用SQL语言配合JDBC(Java Database Connectivity)接口来实现,如MySQL或Oracle数据库可能被选用。 3. **数据实体...