转自:http://sunxboy.iteye.com/blog/284976
public static String getCompleteURL(HttpServletRequest request) {
return new StringBuilder(getCurrentHttpURL(request))
.append(request.getServletPath()).append("?")
.append(request.getQueryString()).toString();
}
/**
* 取得当前http地址
* @param request
* @return
* Date: 2008-12-1 下午02:59:03
*/
public static String getCurrentHttpURL(HttpServletRequest request){
StringBuilder urlBuilder = new StringBuilder();
urlBuilder.append(request.getScheme()).append("://");
urlBuilder.append(request.getServerName());
urlBuilder.append(request.getHeader("host")).append(":");
urlBuilder.append(request.getServerPort());
urlBuilder.append(request.getContextPath()).append("/");
String httpAddr = urlBuilder.toString();
urlBuilder = null;
return httpAddr;
}
取得IP地址
public static String getIpAddr(HttpServletRequest request) {
String ip = request.getHeader("x-forwarded-for");
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip))
ip = request.getHeader("Proxy-Client-IP");
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip))
ip = request.getHeader("WL-Proxy-Client-IP");
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip))
ip = request.getRemoteAddr();
return ip;
}
分享到:
相关推荐
- 在HTTP请求配置窗口中,设置请求方法、服务器地址、路径等参数,并在“变量引用”处填入`${user_id}`来引用之前定义的变量。 **4. 修改线程组配置** 因为我们需要让每个用户都执行3次请求,因此需要将线程组中的...
2. request:服务器端取得客户端的信息,包括头信息、Cookie、请求参数等,最大用处在MVC设计模式上。 3. response:服务器端回应客户端信息,包括Cookie、重定向等。 4. session:表示每一个用户,用于登录验证上。...
如果没有,就会向配置的DNS服务器发起查询请求。一般情况下,DNS查询分为两种类型:正向查询(从域名到IP)和反向查询(从IP到域名)。经过DNS服务器的递归或迭代查询,最终得到目标IP并返回给本地计算机,完成域名...
1. **用户界面(UI)**:这包括地址栏、前进/后退按钮、刷新按钮、书签等功能。在VC++中,我们可以使用MFC(Microsoft Foundation Classes)库来创建这些控件。MFC提供了一套面向对象的C++类,用于简化Windows API的...
* 运行应用程序,并在浏览器地址栏中输入 /Movies,以访问 Movies 控制器。 *由于应用程序依赖于默认路由,所以浏览器请求 http://localhost:xxxxx/Movies 将被路由到 Movies 控制器的 Index 操作方法。 四、创建...
被诉人的信息完整性和准确性直接影响到仲裁程序的正常进行。 申诉内容是表格的核心部分,申诉人需要在此详细阐述争议的事实、理由和请求。这通常包括劳动合同的履行情况、工资支付、工时制度、社会保险、福利待遇、...
在线库存 ... stock.py作者:Aidan Good 该项目专注于创建在线库存系统。 取得CSV档案,然后将项目分类为已建立的...可以通过运行simple_web_server.py并在任何Web浏览器地址栏中键入localhost:8080 /来测试该程序。
2. **jsp:forward**:将请求转发到另一个页面,客户端浏览器地址栏不会显示变化。 3. **jsp:params**:用于向包含或转发的页面传递参数。 4. **jsp:useBean**:实例化Java Bean并将其绑定到JSP页面作用域。 5. **jsp...
13. 输入网址:在浏览器的地址栏输入网址以访问网站。 14. 删除文件:按住Shift+Delete键可以彻底删除文件,不进入回收站。 15. 变量默认值:未赋值的数值型变量默认值通常为0。 16. Visual Basic程序:VB程序...
最后,联系我们页面提供公司的地址、电话、邮箱等联系信息,方便客户直接与企业取得联系。 这个模板的设计充分考虑了织造机械公司的特点,通过蓝色调传达专业和可靠的形象,同时各个页面的布局合理,符合用户的浏览...
jsp编程的一些小技巧总结,绝对实用。包括JSP编程中常用的js技术。 1.JSP编程中常用的js技术 ...119.实现不在地址栏显示当前URL? 120.用javabean方式读取文本文件制作统计图? 121.上传图片并生成缩略图?
5. **联系我们(contact.asp)**:包括联系表单、地址、电话和电子邮件,方便客户与公司取得联系。 6. **后台管理系统**:管理员可以登录管理网站内容,如添加、修改或删除新闻、产品信息。 7. **样式表(CSS)**...
顺序如下: ...95、取得数据库中各栏名称 96、使用JavaBean、设置和获取Bean的属性 97、设置Bean的一个属性与输入参数关联 98、实现基于数据库的站内搜索 99、DOM读取XML文档 100、SAX读取XML文档
顺序如下: ...95、取得数据库中各栏名称 96、使用JavaBean、设置和获取Bean的属性 97、设置Bean的一个属性与输入参数关联 98、实现基于数据库的站内搜索 99、DOM读取XML文档 100、SAX读取XML文档
4. **地理编码与反地理编码**:将经纬度坐标转换为地址信息,或者将地址信息转换为经纬度坐标。 5. **地理围栏**:允许开发者设定虚拟地理边界,当设备进入或离开特定区域时触发相关事件。 二、高德地图定位SDK...
- 通过“登录卖家后台—左上方导航栏里的订单—历史记录”查看。 - 在历史记录页面可以看到订单的状态和相关付款信息,如Total Cost代表订单的总金额。 #### 三、其他重要知识点 ##### 1. 知识库内容 - Wish平台的...