Java tutorial
/** * Copyright (c) 2011, Eryptogram.java TAIHEIOT and/or its affiliates. All rights reserved. * * Licensed under the TAIHEIOT License, Version 1.0 (the "License"); * you may not use this file except in compliance with the License. * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.qing.common.util; import javax.servlet.http.HttpServletRequest; import org.apache.commons.lang3.StringUtils; /** * Title:IP?<br> * Description: IP?<br> * CreateTime: 2012-08-06 16:39<br> * Copyright: Copyright (c) 2012 taiheiot.com<br> * * @author taiheiot * @since 1.0 */ public class IPUtils { /** * ?IP?s * * @param request * @return IP? */ public static String getRemoteIp(HttpServletRequest request) { String ipString = request.getHeader("x-forwarded-for"); if (StringUtils.isEmpty(ipString) || "unknown".equalsIgnoreCase(ipString)) { ipString = request.getHeader("Proxy-Client-IP"); } if (StringUtils.isEmpty(ipString) || "unknown".equalsIgnoreCase(ipString)) { ipString = request.getHeader("WL-Proxy-Client-IP"); } if (StringUtils.isEmpty(ipString) || "unknown".equalsIgnoreCase(ipString)) { ipString = request.getRemoteAddr(); } // ??unknownip final String[] arr = ipString.split(","); for (final String str : arr) { if (!"unknown".equalsIgnoreCase(str)) { ipString = str; break; } } return ipString; } }