Spring MVC - クライアントのIPアドレスを取得する方法

Springフレームワークでは、任意のSpring管理Beanで @ Autowired``を HttpServletRequest`に直接変換し、後でリクエストヘッダからクライアントのIPアドレスを取得できます

WebUtils.java

package com.mkyong.web;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import javax.servlet.http.HttpServletRequest;

@Component
public class WebUtils {

    private HttpServletRequest request;

    @Autowired
    public void setRequest(HttpServletRequest request) {
        this.request = request;
    }

    private static String getClientIp() {

        String remoteAddr = "";

        if (request != null) {
            remoteAddr = request.getHeader("X-FORWARDED-FOR");
            if (remoteAddr == null || "".equals(remoteAddr)) {
                remoteAddr = request.getRemoteAddr();
            }
        }

        return remoteAddr;
    }

}

参考文献

  1. link://java/how-to-get-client-ip-address-in-java/[クライアントIPを取得する方法

Javaでのアドレス]

次の投稿:Javaでファイルを最後に変更した日付を取得する方法