重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
1,从request里可以获取用户浏览器类型,
成都创新互联公司一直在为企业提供服务,多年的磨炼,使我们在创意设计,营销型网站建设到技术研发拥有了开发经验。我们擅长倾听企业需求,挖掘用户对产品需求服务价值,为企业制作有用的创意设计体验。核心团队拥有超过10年以上行业经验,涵盖创意,策化,开发等专业领域,公司涉及领域有基础互联网服务郑州服务器托管、成都APP应用开发、手机移动建站、网页设计、网络整合营销。
具体操作见例子:
Enumeration e = request.getHeaderNames();
while (e.hasMoreElements()) {
String name = (String)e.nextElement();
String value = request.getHeader(name);
System.out.println(name + " = " + value);
}
这样可以遍历从客户端传来的所有头信息:
request.getHeaders("User-Agent");
获取User-Agent (客户端的类型,一般用来区分不同的浏览器)。
2,获取操作系统信息
操作系统信息 String osName = System.getProperty("os.name" );
操作系统版本 String osVersion=System.getProperty("os.version");
以下代码需要 JDK 6 及以后版本,如果是 JDK 6 以下版本的话,没有直接获得 MAC 的 API。
import java.net.InetAddress;import java.net.NetworkInterface;import java.net.SocketException;import java.util.Enumeration; public class NetworkInfo { private final static char[] HEX = "0123456789ABCDEF".toCharArray(); public static void main(String[] args) throws SocketException { for(EnumerationNetworkInterface i = NetworkInterface.getNetworkInterfaces(); i.hasMoreElements(); ) { NetworkInterface ni = i.nextElement(); System.out.println("NETWORK CARD NAME: " + ni.getDisplayName()); System.out.println("MAC: " + toMacString(ni.getHardwareAddress())); for(EnumerationInetAddress j = ni.getInetAddresses(); j.hasMoreElements(); ) { System.out.println(" " + j.nextElement()); } } } private static String toMacString(byte[] bys) { if(bys == null) { return null; } char[] chs = new char[bys.length * 3 - 1]; for(int i = 0, k = 0; i bys.length; i++) { if(i 0) { chs[k++] = '-'; } chs[k++] = HEX[(bys[i] 4) 0xf]; chs[k++] = HEX[bys[i] 0xf]; } return new String(chs); }}
需要连接win,使用底层的jar包,参考如下:
到这里(JNA)下载
jna.jar
platform.jar
Window系统获取用户信息代码如下:
import com.sun.jna.platform.win32.Advapi32Util;
import com.sun.jna.platform.win32.Netapi32Util;
public class JnaTest {
/**
* @param args
*/
public static void main(String[] args) {
Netapi32Util.User[] users = Netapi32Util.getUsers();
System.out.println("用户数量: " + users.length);
System.out.println();
for (Netapi32Util.User user : users) {
System.out.println("账户名称:" + user.name);
Advapi32Util.Account account = Advapi32Util
.getAccountByName(user.name);
System.out.println("账户全名:" + account.fqn);
System.out.println("账户SID:" + account.sidString);
System.out.println();
}
}
}
Java 判断操作系统是linux还是windows,主要是使用system这个类,这个类型提供了获取java版本、安装目录、操作系统等等信息,代码如下:1
2
System.out.println("===========操作系统是:"+System.getProperties().getProperty("os.name"));
System.out.println("===========文件的分隔符为file.separator:"+System.getProperties().getProperty("file.separator"));
System类
public static Properties getProperties()
将 getProperty(String) 方法使用的当前系统属性集合作为 Properties 对象返回
键 相关值的描述
java.version Java 运行时环境版本
java.vendor Java 运行时环境供应商
java.vendor.url Java 供应商的 URL
java.home Java 安装目录