`
lanfei
  • 浏览: 154057 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

seam实现在线用户信息的统计以及在用户IP的获取

阅读更多
seam实现在线用户信息的统计以及在用户IP的获取
public String getIp() {
try {
FacesContext fc = FacesContext.getCurrentInstance();
HttpServletRequest request = (HttpServletRequest) fc
.getExternalContext().getRequest();
return getIpAddr(request);
} catch (Exception e) {
e.printStackTrace();
return "";
}
}

public String getIpAddr(HttpServletRequest request) {
String ip = null;
Enumeration enu = request.getHeaderNames();
while (enu.hasMoreElements()) {
String name = (String) enu.nextElement();
if (name.equalsIgnoreCase("X-Forwarded-For")) {
ip = request.getHeader(name);
} else if (name.equalsIgnoreCase("Proxy-Client-IP")) {
ip = request.getHeader(name);
} else if (name.equalsIgnoreCase("WL-Proxy-Client-IP")) {
ip = request.getHeader(name);
}

if ((ip != null) && (ip.length() != 0))
break;

}
if ((ip == null) || (ip.length() == 0))
ip = request.getRemoteAddr();
return ip;
}
分享到:
评论

相关推荐

    seamcarving主要部分matlab实现

    本文将深入探讨seamcarving的核心原理、MATLAB实现细节以及相关知识点。 ### 1. seamcarving基本原理 seamcarving技术的核心是找到一条“能量”最低的路径(即seam),沿着这条路径进行像素的删除或添加,以达到...

    seam_carving 代码实现 seam

    在实际编程中,Seam Carving 的代码实现涉及以下几个关键步骤: 1. **能量图计算**: 根据选定的能量函数计算每个像素的能量值。 2. **拉链查找**: 使用优先队列或A*搜索算法找到最低能量路径。 3. **像素操作**: ...

    seam一些基本功能的实现方法

    在“seam一些基本功能的实现方法”中,我们将探讨Seam的关键特性以及如何在实践中应用它们。 首先,Seam提供了组件模型,允许开发者将应用拆分为小而独立的部分,每个部分都称为一个Seam组件。这些组件可以很容易地...

    Seam Carving的C++实现代码

    在C++中实现Seam Carving,通常会用到OpenCV库,这是一个强大的计算机视觉库,提供了丰富的图像处理函数。以下是对Seam Carving实现过程的详细说明: 1. **读取图像**:首先,我们需要使用OpenCV的`imread`函数读取...

    seam级联菜单例子

    在这个“seam级联菜单例子”中,我们将深入探讨如何在Seam应用中实现级联选择菜单,这种菜单在用户界面中常见于如国家/地区、省份/城市等层级结构的选择。 级联菜单通常涉及到Ajax技术,它允许部分页面更新而不是...

    Seam security

    Seam Security是针对Java Web应用程序的安全框架,它是JBoss Seam项目的一部分,提供了全面的安全解决方案,包括身份验证、授权和身份管理等功能。Seam Security以易于配置和使用为特点,允许开发者快速设置应用程序...

    seam_seamcarving_

    在"seam_carving"这个主题中,我们主要关注如何实现这一算法。在提供的压缩包文件中,`seam.m`很可能是一个MATLAB代码文件,它包含了Seam Carving的基本操作。MATLAB是一种广泛用于科学计算、图像处理和数据分析的...

    Seam2.0GA 中文开发指南

    由于Seam与JSF紧密集成,因此在JBoss 4.0环境下需要手动安装JSF 1.2 RI(参考实现)来支持Seam应用的运行。 #### 3. 上下文相关的组件模型 **3.1 Seam上下文** Seam提供了多种上下文来管理应用的状态,包括无状态...

    seam carving

    在代码实现上,可以编写梯度计算函数来获取图像的局部变化信息,然后使用动态规划算法找到最优的seam路径。这段给出的代码片段展示了如何计算图像的梯度以及使用动态规划进行路径选择的过程。需要注意的是,代码中...

    jboss seam 2.01GA REF DOC

    ### JBoss Seam 2.01GA REF DOC #### 引言:JBoss Seam概览与功能介绍 JBoss Seam 是一个为简化企业级 Java 应用开发而设计的框架。它结合了 JavaServer Faces (JSF)、Java Persistence API (JPA) 和 Java ...

    SEAM 中文开发指南

    - **工作原理**:此示例利用 SEAM 的页面流功能,根据用户的输入动态跳转不同的页面,实现了游戏逻辑。 ##### 1.6 完整的 Seam 应用程序:宾馆预订范例 - **介绍**:该示例展示了一个完整的宾馆预订系统的实现过程...

    jboss seam 学习资料,seam in action和官方手册

    6. **国际化与本地化**:学习如何在Seam项目中实现多语言支持。 7. **测试与调试**:掌握Seam的测试工具和策略,确保代码质量。 8. **Seam组件**:了解如Conversation、Transactions、邮件服务等Seam内置组件的使用...

    seam_in_action

    根据提供的信息,我们可以推断出这是一本关于 Seam 框架的专业书籍,书名为《Seam in Action》,作者为 Dan Allen 和 Manning 出版社出版。本书主要讲解了 Seam 框架在 Java EE 3 环境中的应用与开发实践。接下来将...

    Matlab实现SeamCarving算法 放大缩小图片(包含GUI)

    4. **GUI界面**:在Matlab中实现的SeamCarving算法可能包含一个图形用户界面(GUI),用户可以通过选择放大或缩小操作,并输入调整的像素数,直观地看到处理前后的效果。GUI设计通常包括按钮、滑动条和图像显示区。 ...

    seam 框架整合hibernate+jsf

    4. **安全性和身份验证**:Seam提供了内置的安全框架,可以轻松集成到JSF应用中,实现用户身份验证和授权。 5. **国际化和本地化**:Seam与JSF结合,使得应用的国际化和本地化变得更加简单,开发者可以通过Seam的...

    Seam - 语境相关的组件

    Seam的核心理念是将不同的技术,如JavaServer Faces (JSF)、Java Persistence API (JPA)、Enterprise JavaBeans (EJB)以及Java Message Service (JMS),无缝融合在一起,创建一个统一的开发环境。 在"Seam - 语境...

    seam参考手册中文版

    ### Seam参考手册中文版知识点概览 #### 一、Seam简介及基本概念 ##### JBoss Seam概述 - **Seam**是JBoss家族中的一员,它是一个建立于Java EE平台之上的开源框架,旨在简化企业级应用的开发过程。 - **版本**: ...

    seam in action 中文 english

    2. **事件驱动**:Seam支持基于事件的编程模型,使得在不同组件之间传递信息变得更加简单。这有助于实现松散耦合,让代码更易于维护和扩展。 3. **JSF集成**:Seam与JavaServer Faces紧密集成,提供了一种优雅的...

    jsf+seam+jpa实例

    Seam的主要优点在于其对组件化开发的支持,以及对业务逻辑和用户界面的紧密集成。在本实例中,Seam将提供上下文管理和依赖注入功能,使代码更加模块化和易于管理。 **三、Java Persistence API (JPA)** JPA是Java...

Global site tag (gtag.js) - Google Analytics