热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

jsp获取客户端的浏览器和操作系统信息

j2ee面试常遇见的问题,收集了一下,可以参考
string agent = request.getheader("user-agent");
stringtokenizer st = new stringtokenizer(agent,";");
st.nexttoken();
//得到用户的浏览器名
string userbrowser = st.nexttoken();
//得到用户的操作系统名
string useros = st.nexttoken();
取得本机的信息也可以这样:
操作系统信息
system.getproperty("os.name"); //win2003竟然是win xp?
system.getproperty("os.version");
system.getproperty("os.arch");
瀏覽器:
request.getheader("user-agent")
再送个红包
request.getheader(“user-agent”)返回客户端浏览器的版本号、类型
getheader(string name):获得http协议定义的传送文件头信息,
request. getmethod():获得客户端向服务器端传送数据的方法有get、post、put等类型
request. getrequesturi():获得发出请求字符串的客户端地址
request. getservletpath():获得客户端所请求的脚本文件的文件路径
request. getservername():获得服务器的名字
request.getserverport():获得服务器的端口号
request.getremoteaddr():获得客户端的ip地址
request.getremotehost():获得客户端电脑的名字,若失败,则返回客户端电脑的ip地址
request.getprotocol():
request.getheadernames():返回所有request header的名字,结果集是一个enumeration(枚举)类的实例
request.getheaders(string name):返回指定名字的request header的所有值,结果集是一个enumeration(枚举)类的实例
推荐阅读
  • 本文全面解析了 gRPC 的基础知识与高级应用,从 helloworld.proto 文件入手,详细阐述了如何定义服务接口。例如,`Greeter` 服务中的 `SayHello` 方法,该方法在客户端和服务器端的消息交互中起到了关键作用。通过实例代码,读者可以深入了解 gRPC 的工作原理及其在实际项目中的应用。 ... [详细]
  • 为了评估精心优化的模型与策略在实际环境中的表现,Google对其实验框架进行了全面升级,旨在实现更高效、更精准和更快速的在线测试。新的框架支持更多的实验场景,提供更好的数据洞察,并显著缩短了实验周期,从而加速产品迭代和优化过程。 ... [详细]
  • 穿越火线游戏时频繁出现“CF out of memory”错误,我的电脑配置正常,为何还会遇到此问题?求专业人士解答。
    穿越火线游戏时频繁出现“CF out of memory”错误,我的电脑配置正常,为何还会遇到此问题?求专业人士解答。 ... [详细]
  • 如何在Mac上构建高效的本地服务器环境
    在Mac上构建高效的本地服务器环境,首先需要了解基本步骤:1. 配置目录基础;2. 启动Apache服务;3. 添加自定义文档至本地服务器;4. 查看自定义效果。此外,还可以通过手机或其他电脑访问本机服务器,以确保跨设备的兼容性和调试效果。Mac系统自带的Apache服务为本地开发提供了便捷的工具,本文将详细介绍每个步骤的具体操作方法。 ... [详细]
  • Windows 10系统对Intel服务器的影响:来自微软官网的下载选项分析 ... [详细]
  • Linux入门教程第七课:基础命令与操作详解
    在本课程中,我们将深入探讨 Linux 系统中的基础命令与操作,重点讲解网络配置的相关知识。首先,我们会介绍 IP 地址的概念及其在网络协议中的作用,特别是 IPv4(Internet Protocol Version 4)的具体应用和配置方法。通过实际操作和示例,帮助初学者更好地理解和掌握这些基本技能。 ... [详细]
  • 2016-2017学年《网络安全实战》第三次作业
    2016-2017学年《网络安全实战》第三次作业总结了教材中关于网络信息收集技术的内容。本章主要探讨了网络踩点、网络扫描和网络查点三个关键步骤。其中,网络踩点旨在通过公开渠道收集目标信息,为后续的安全测试奠定基础,而不涉及实际的入侵行为。 ... [详细]
  • TypeScript 实战分享:Google 工程师深度解析 TypeScript 开发经验与心得
    TypeScript 实战分享:Google 工程师深度解析 TypeScript 开发经验与心得 ... [详细]
  • 利用CSV Data Set Config实现JMeter参数化测试的详细指南
    本文详细介绍了如何使用JMeter中的CSV Data Set Config元素来实现参数化测试。通过该配置元件,用户可以轻松地从外部CSV文件中读取数据,从而提高测试的灵活性和可扩展性。文章不仅提供了具体的配置步骤,还结合实际案例,展示了如何在不同的测试场景中应用这一功能,帮助读者更好地理解和掌握JMeter参数化测试的技巧。 ... [详细]
  • 【Linux】CentOS 7 远程连接指南:高效安全的远程管理方法
    在 CentOS 7 中实现高效且安全的远程管理,本文详细介绍了如何检查和安装配置 OpenSSH。首先,通过 `yum list installed` 命令检查系统是否已安装 OpenSSH,若未安装,则使用 `yum install openssh-server` 进行安装。随后,配置 SSH 服务以确保其安全性和稳定性,包括修改默认端口、禁用 root 登录等关键步骤。此外,还提供了常见问题的解决方案,帮助用户顺利进行远程连接。 ... [详细]
  • 在过去,我曾使用过自建MySQL服务器中的MyISAM和InnoDB存储引擎(也曾尝试过Memory引擎)。今年初,我开始转向阿里云的关系型数据库服务,并深入研究了其高效的压缩存储引擎TokuDB。TokuDB在数据压缩和处理大规模数据集方面表现出色,显著提升了存储效率和查询性能。通过实际应用,我发现TokuDB不仅能够有效减少存储成本,还能显著提高数据处理速度,特别适用于高并发和大数据量的场景。 ... [详细]
  • 在CentOS 7上部署WebRTC网关Janus
    在CentOS 7上部署WebRTC网关Janus ... [详细]
  • 在数据库设计中,谨慎使用外键至关重要。本文探讨了九个关键原因,包括数据完整性的维护、性能优化、系统复杂性的管理、数据迁移的灵活性以及对外部系统的依赖性控制。通过深入分析这些因素,可以帮助开发人员和架构师做出更明智的设计决策,确保数据库系统的高效与稳定。 ... [详细]
  • 通过使用Wireshark对POP3和SMTP协议进行详细的抓包与分析,本实验旨在帮助读者初步掌握Wireshark的使用技巧,熟悉其抓包流程,并通过实际案例深入理解这两种电子邮件协议的工作机制。此外,实验还将探讨如何利用Wireshark识别和解析协议数据包中的关键信息,为网络故障排除和安全审计提供有力支持。 ... [详细]
  • Sanic 是一个类似于 Flask 的 Python 3.5 Web 服务器,以其出色的写入速度而著称。与 Flask 不同,Sanic 支持异步请求处理,这使得它在处理高并发请求时表现更加出色。通过利用 Python 的异步特性,Sanic 能够显著提高应用程序的性能和响应能力,适用于构建高性能的异步 Web 应用。 ... [详细]
author-avatar
傲慢的寒风呼啸_539
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有