网络编程 
首页 > 网络编程 > 浏览文章

JSP和JSTL获取服务器参数示例

(编辑:jimmy 日期: 2024/12/31 浏览:3 次 )
复制代码 代码如下:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>JSP和JSTL获取服务器参数</title>
</head>
<body>
JSP方式<br/>
<%

String SERVER_NAME = request.getServerName();

String SERVER_SOFTWARE = getServletContext().getServerInfo();

String SERVER_PROTOCOL = request.getProtocol();

Integer SERVER_PORT = request.getServerPort();

String REQUEST_METHOD = request.getMethod();

String PATH_INFO = request.getPathInfo();

String PATH_TRANSLATED = request.getPathTranslated();

String SCRIPT_NAME = request.getServletPath();

String DOCUMENT_ROOT = request.getRealPath("/");

String QUERY_STRING = request.getQueryString();

String REMOTE_HOST = request.getRemoteHost();

String REMOTE_ADDR = request.getRemoteAddr();

String AUTH_TYPE = request.getAuthType();

String REMOTE_USER = request.getRemoteUser();

String CONTENT_TYPE = request.getContentType();

Integer CONTENT_LENGTH = request.getContentLength();

String HTTP_ACCEPT = request.getHeader("Accept");

String HTTP_USER_AGENT = request.getHeader("User-Agent");

String HTTP_REFERER = request.getHeader("Referer");

HashMap infoMap = new HashMap();

infoMap.put("SERVER_NAME", SERVER_NAME);

infoMap.put("SERVER_SOFTWARE", SERVER_SOFTWARE);

infoMap.put("SERVER_PROTOCOL", SERVER_PROTOCOL);

infoMap.put("SERVER_PORT", SERVER_PORT);
infoMap.put("REQUEST_METHOD", REQUEST_METHOD);

infoMap.put("PATH_INFO", PATH_INFO);

infoMap.put("PATH_TRANSLATED", PATH_TRANSLATED);

infoMap.put("SCRIPT_NAME", SCRIPT_NAME);

infoMap.put("DOCUMENT_ROOT", DOCUMENT_ROOT);

infoMap.put("QUERY_STRING", QUERY_STRING);

infoMap.put("REMOTE_HOST", REMOTE_HOST);

infoMap.put("REMOTE_ADDR", REMOTE_ADDR);

infoMap.put("AUTH_TYPE", AUTH_TYPE);

infoMap.put("REMOTE_USER", REMOTE_USER);

infoMap.put("CONTENT_TYPE", CONTENT_TYPE);

infoMap.put("CONTENT_LENGTH", CONTENT_LENGTH);

infoMap.put("HTTP_ACCEPT", HTTP_ACCEPT);

infoMap.put("HTTP_USER_AGENT", HTTP_USER_AGENT);

infoMap.put("HTTP_REFERER", HTTP_REFERER);

Iterator it = infoMap.keySet().iterator();

%>

<%
while (it.hasNext()) {
Object o = it.next();
%>
  <%=o%>
  <%=infoMap.get(o)%>
  <% out.println("<br>"); }%>
<br/>

JSTL方式<br/>
${pageContext.request} |取得请求对象<br>
${pageContext.session} |取得session对象<br>
${pageContext.request.queryString} |取得请求的参数字符串<br>
${pageContext.request.requestURL} |取得请求的URL,但不包括请求之参数字符串<br>
${pageContext.request.contextPath} |服务的web application的名称<br>
${pageContext.request.method} |取得HTTP的方法(GET、POST)<br>
${pageContext.request.protocol} |取得使用的协议(HTTP/1.1、HTTP/1.0)<br>
${pageContext.request.remoteUser} |取得用户名称<br>
${pageContext.session.new} |判断session是否为新的,所谓新的session,表示刚由server产生而client尚未使用<br>
${pageContext.session.id} |取得session的ID<br>

${header["User-Agent"]}|用户浏览器的版本<br/>
${header["Host"]}|IP<br/>
${pageContext.request.remoteAddr } |取得用户的IP地址<br>
${pageContext.servletContext.serverInfo}|取得主机端的服务信息<br>
${pageContext.request.serverPort}|端口信息<br>
${pageContext.request.serverName}|服务器名称<br>
${pageContext.request.remoteHost}|客户机名称<br>
</body>
</html>
上一篇:jsp中使用jstl导入html乱码问题解决方法
下一篇:JSP中js传递和解析URL参数以及中文转码和解码问题
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?