主頁 > 知識(shí)庫 > 使用JSP讀取客戶端信息

使用JSP讀取客戶端信息

熱門標(biāo)簽:山東智能云外呼管理系統(tǒng) 珠海銷售外呼系統(tǒng)運(yùn)營商 電銷外呼系統(tǒng) 排行榜 地圖標(biāo)注制作道路 四川電信外呼系統(tǒng)靠譜嗎 長春回?fù)芡夂粝到y(tǒng)廠家 地圖標(biāo)注創(chuàng)業(yè)項(xiàng)目入駐 外呼系統(tǒng)啥意思 廣州三五防封電銷卡
使用JSP讀取客戶端信息

  請(qǐng)閱讀以下代碼。如果你的使用要求不同,可對(duì)這些代碼加以很方便的修改。這些代碼可以使你獲得:
公司company, 用戶name,版本version,main version,minor version
操作系統(tǒng)(未完成!),語言language,locale等。

建立一個(gè)新的JSP文件:




請(qǐng)將下列class文件加入classpath (你要建立同樣的目錄結(jié)構(gòu)-- de.hunsicker.http.util,當(dāng)然也可以自己調(diào)節(jié)包的名稱。!):




package de.hunsicker.http.util;

import java.util.*;

import javax.servlet.*;
import javax.servlet.http.*;

public class Browser extends HttpServlet
{
protected HttpServletRequest request;
protected HttpSession session;

protected String userAgent;
protected String company; // Firmenname des Herstellers
protected String name; // Bezeichnung des Browsers
protected String version; // Version
protected String mainVersion; // Hauptversion
protected String minorVersion; // Unterversion
protected String os; // Betriebssystem
protected String language = \&;de\&;; // Sprachcode Standard
protected Locale locale; // Locale-Objekt mit den aktuellen
// Spracheinstellungen

private Hashtable supportedLanguages; // Untersttzte Sprachen

public Browser(HttpServletRequest request, HttpSession session)
{
this.initialize();
this.request = request;
this.session = session;

this.setUserAgent(this.request.getHeader(\&;User-Agent\&;));
this.setCompany();
this.setName();
this.setVersion();
this.setMainVersion();
this.setMinorVersion();
this.setOs();
this.setLanguage();
this.setLocale();
}

public void initialize()
{
this.supportedLanguages = new Hashtable(2);

this.supportedLanguages.put(\&;en\&;, \&;\&;);
this.supportedLanguages.put(\&;de\&;, \&;\&;);
}

public void setUserAgent(String httpUserAgent)
{
this.userAgent = httpUserAgent.toLowerCase();
}

private void setCompany()
{
if (this.userAgent.indexOf(\&;msie\&;) > -1)
{
this.company = \&;Microsoft\&;;
}
else if (this.userAgent.indexOf(\&;opera\&;) > -1)
{
this.company = \&;Opera Software\&;;
}
else if (this.userAgent.indexOf(\&;mozilla\&;) > -1)
{
this.company = \&;Netscape Communications\&;;
}
else
{
this.company = \&;unknown\&;;
}
}

/**
* Liefert den Firmennamen des Herstellers des verwendeten Browsers.
*/
public String getCompany()
{
return this.company;
}

private void setName()
{
if (this.company == \&;Microsoft\&;)
{
this.name = \&;Microsoft Internet Explorer\&;;
}
else if (this.company == \&;Netscape Communications\&;)
{
this.name = \&;Netscape Navigator\&;;
}
else if (this.company == \&;Operasoftware\&;)
{
this.name = \&;Operasoftware Opera\&;;
}
else
{
this.name = \&;unknown\&;;
}
}

/**
* Liefert den Namen des verwendeten Browsers.
*/
public String getName()
{
return this.name;
}

private void setVersion()
{
int tmpPos;
String tmpString;

if (this.company == \&;Microsoft\&;)
{
String str = this.userAgent.substring(this.userAgent.indexOf(\&;msie\&;) + 5);
this.version = str.substring(0, str.indexOf(\&;;\&;));
}
else
{
tmpString = (this.userAgent.substring(tmpPos = (this.userAgent.indexOf(\&;/\&;)) + 1, tmpPos + this.userAgent.indexOf(\&; \&;))).trim();
this.version = tmpString.substring(0, tmpString.indexOf(\&; \&;));
}
}

/**
* Liefert die Versionsnummer des verwendeten Browsers.
*/
public String getVersion()
{
return this.version;
}

private void setMainVersion()
{
this.mainVersion = this.version.substring(0, this.version.indexOf(\&;.\&;));
}

/**
* Liefert die Hauptversionsnummer des verwendeten Browsers.
*/
public String getMainVersion()
{
return this.mainVersion;
}

private void setMinorVersion()
{
this.minorVersion = this.version.substring(this.version.indexOf(\&;.\&;) + 1).trim();
}

/**
* Liefert die Unterversionsnummer des verwendeten Browsers.
*/
public String getMinorVersion()
{
return this.minorVersion;
}

private void setOs()
{
if (this.userAgent.indexOf(\&;win\&;) > -1)
{
if (this.userAgent.indexOf(\&;windows 95\&;) > -1 || this.userAgent.indexOf(\&;win95\&;) > -1)
{
this.os = \&;Windows 95\&;;
}
if (this.userAgent.indexOf(\&;windows 98\&;) > -1 || this.userAgent.indexOf(\&;win98\&;) > -1)
{
this.os = \&;Windows 98\&;;
}
if (this.userAgent.indexOf(\&;windows nt\&;) > -1 || this.userAgent.indexOf(\&;winnt\&;) > -1)
{
this.os = \&;Windows NT\&;;
}
if (this.userAgent.indexOf(\&;win16\&;) > -1 || this.userAgent.indexOf(\&;windows 3.\&;) > -1)
{
this.os = \&;Windows 3.x\&;;
}
}
}

/**
* Liefert den Namen des Betriebssystems.
*/
public String getOs()
{
return this.os;
}

private void setLanguage()
{
String prefLanguage = this.request.getHeader(\&;Accept-Language\&;);

if (prefLanguage != null)
{
String language = null;
StringTokenizer st = new StringTokenizer(prefLanguage, \&;,\&;);

int elements = st.countTokens();

for (int idx = 0; idx elements; idx++)
{
if (this.supportedLanguages.containsKey((language = st.nextToken())))
{
this.language = this.parseLocale(language);
}
}
}
}

/*
* Hilfsfunktion fr setLanguage().
*/
private String parseLocale(String language)
{
StringTokenizer st = new StringTokenizer(language, \&;-\&;);

if (st.countTokens() == 2)
{
return st.nextToken();
}
else
{
return language;
}
}

/**
* Liefert das L?nderkürzel der vom Benutzer
* bevorzugten Sprache.
*/
public String getLanguage()
{
return this.language;
}

private void setLocale()
{
this.locale = new Locale(this.language, \&;\&;);
}

/**
* Liefert ein Locale-Objekt mit der Sprach-Prferenz des verwendeten Browsers
*/
public Locale getLocale()
{
return this.locale;
}
}



您可能感興趣的文章:
  • JSP如何獲取客戶端真實(shí)IP地址
  • JSP自定義標(biāo)簽獲取用戶IP地址的方法
  • JSP 獲取真實(shí)IP地址的代碼
  • jsp實(shí)現(xiàn)從服務(wù)器下載xls文件到客戶端的方法
  • JSP入門教程之客戶端驗(yàn)證、常用輸出方式及JSTL基本用法
  • JSP中實(shí)現(xiàn)判斷客戶端手機(jī)類型并跳轉(zhuǎn)到app下載頁面
  • jsp 獲取客戶端的瀏覽器和操作系統(tǒng)信息
  • jsp獲取客戶端IP地址的方法

標(biāo)簽:吳忠 潮州 肇慶 廣元 北海 玉樹 紹興 保定

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《使用JSP讀取客戶端信息》,本文關(guān)鍵詞  使用,JSP,讀取,客戶端,信息,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《使用JSP讀取客戶端信息》相關(guān)的同類信息!
  • 本頁收集關(guān)于使用JSP讀取客戶端信息的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章