服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服务器之家 - 编程语言 - JAVA教程 - java 解析user-agent 信息

java 解析user-agent 信息

2020-05-24 11:46java教程网 JAVA教程

这篇文章主要介绍了java 解析http user-agent的信息的相关资料,需要的朋友可以参考下

解析http user-agent信息,使用uasparser-0.6.1.jar和jregex-1.2_01.jar两个包

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
import cz.mallat.uasparser.OnlineUpdater;
import cz.mallat.uasparser.UASparser;
import cz.mallat.uasparser.UserAgentInfo;
 
 
import java.io.IOException;
 
/**
 * Created by Edward on 2016/7/1.
 */
public class UserAgentUtil {
 
  static UASparser uasParser = null;
 
  // 初始化uasParser对象
  static {
    try {
      uasParser = new UASparser(OnlineUpdater.getVendoredInputStream());
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
 
  public static void main(String[] args)
  {
    String str = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.130 Safari/537.36";
    System.out.println(str);
    try {
      UserAgentInfo userAgentInfo = UserAgentUtil.uasParser.parse(str);
      System.out.println("操作系统名称:"+userAgentInfo.getOsFamily());//
      System.out.println("操作系统:"+userAgentInfo.getOsName());//
      System.out.println("浏览器名称:"+userAgentInfo.getUaFamily());//
      System.out.println("浏览器版本:"+userAgentInfo.getBrowserVersionInfo());//
      System.out.println("设备类型:"+userAgentInfo.getDeviceType());
      System.out.println("浏览器:"+userAgentInfo.getUaName());
      System.out.println("类型:"+userAgentInfo.getType());
 
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
}

运行结果:

java 解析user-agent 信息

User-Agent信息通过浏览器自带工具可查看:

如下使用的是chrome浏览器

java 解析user-agent 信息

程序中static块,在初始化的时候被执行,初始化情况如下:

1.当创建某个类的新实例时;
2.当调用某个类的静态方法时;
3.当使用某个类或接口的静态字段时;
4.当调用Java API中的某些反射方法时,比如类Class中的方法,或者java.lang.reflect中的类的方法时;
5.当初始化某个子类时;
6.当虚拟机启动某个被标明为启动类的类(main方法);

以上就是本文的全部内容了,希望大家能够喜欢

延伸 · 阅读

精彩推荐