기본 콘텐츠로 건너뛰기

Java Servlet Request Parameter 완전 정복 — GET/POST 모든 파라미터 확인 & 디버깅 예제 (Request Parameter 전체보기)

Java Servlet Request Parameter 완전 정복 — GET/POST 모든 파라미터 확인 & 디버깅 예제

Java Servlet Request Parameter 완전 정복

웹 애플리케이션에서 클라이언트로부터 전달되는 Request Parameter를 확인하는 것은 필수입니다. 이 글에서는 Java ServletJSP에서 GET/POST 요청 파라미터를 전체 출력하고 디버깅하는 방법을 다양한 예제와 함께 소개합니다.

1. 기본 예제: getParameterNames() 사용


Enumeration<String> params = request.getParameterNames();
System.out.println("----------------------------");
while (params.hasMoreElements()){
    String name = params.nextElement();
    System.out.println(name + " : " + request.getParameter(name));
}
System.out.println("----------------------------");
    

위 코드는 요청에 포함된 모든 파라미터 이름과 값을 출력하는 기본 방법입니다.

2. HTML Form과 연동 예제


<form action="CheckParamsServlet" method="post">
    이름: <input type="text" name="username"><br>
    이메일: <input type="email" name="email"><br>
    나이: <input type="number" name="age"><br>
    성별: 
    <select name="gender">
        <option value="male">남성</option>
        <option value="female">여성</option>
    </select><br>
    <input type="submit" value="전송">
</form>
    

3. Servlet에서 GET/POST 파라미터 전체 출력


protected void doPost(HttpServletRequest request, HttpServletResponse response) 
        throws ServletException, IOException {
    Enumeration<String> params = request.getParameterNames();
    response.setContentType("text/html;charset=UTF-8");
    PrintWriter out = response.getWriter();
    
    out.println("<h2>Request Parameter 목록</h2>");
    out.println("<table><tr><th>Parameter Name</th><th>Value</th></tr>");
    
    while(params.hasMoreElements()) {
        String name = params.nextElement();
        String value = request.getParameter(name);
        out.println("<tr><td>" + name + "</td><td>" + value + "</td></tr>");
    }
    out.println("</table>");
}
    

4. 동적 GET/POST 파라미터 처리 예제

모든 GET 파라미터를 동적으로 확인하려면:


protected void doGet(HttpServletRequest request, HttpServletResponse response) 
        throws ServletException, IOException {
    Enumeration<String> params = request.getParameterNames();
    while(params.hasMoreElements()) {
        String paramName = params.nextElement();
        String[] values = request.getParameterValues(paramName);
        System.out.println(paramName + " : " + Arrays.toString(values));
    }
}
    

위 코드는 여러 값이 전송된 파라미터까지 배열 형태로 처리합니다.

5. 디버깅용 출력 예제


Enumeration<String> params = request.getParameterNames();
System.out.println("===== DEBUG START =====");
while (params.hasMoreElements()) {
    String name = params.nextElement();
    System.out.println(name + " : " + request.getParameter(name));
}
System.out.println("===== DEBUG END =====");
    

콘솔 출력을 통해 실시간 디버깅이 가능합니다.

6. 테이블로 보기 예제

Servlet에서 파라미터를 HTML 테이블로 출력하면 가독성이 높아집니다.


out.println("<table><tr><th>파라미터</th><th>값</th></tr>");
for(String name : request.getParameterMap().keySet()) {
    String value = request.getParameter(name);
    out.println("<tr><td>" + name + "</td><td>" + value + "</td></tr>");
}
out.println("</table>");
    

결론

이번 글에서는 Servlet에서 Request Parameter 전체 확인 방법과 다양한 실전 예제를 소개했습니다. getParameterNames()getParameterMap()를 활용하면 GET/POST 요청 모두를 효과적으로 디버깅하고 처리할 수 있습니다. 웹 개발 실무에서 필수적인 스킬입니다.

댓글

이 블로그의 인기 게시물

PostgreSQL 달력(일별,월별)

SQL 팁: GENERATE_SERIES로 일별, 월별 날짜 목록 만들기 SQL 팁: GENERATE_SERIES 로 일별, 월별 날짜 목록 만들기 데이터베이스에서 통계 리포트를 작성하거나 비어있는 날짜 데이터를 채워야 할 때, 특정 기간의 날짜 목록이 필요할 수 있습니다. PostgreSQL과 같은 데이터베이스에서는 GENERATE_SERIES 함수를 사용하여 이 작업을 매우 간단하게 처리할 수 있습니다. 1. 🗓️ 일별 날짜 목록 생성하기 2020년 1월 1일부터 12월 31일까지의 모든 날짜를 '1 day' 간격으로 생성하는 쿼리입니다. WITH date_series AS ( SELECT DATE(GENERATE_SERIES( TO_DATE('2020-01-01', 'YYYY-MM-DD'), TO_DATE('2020-12-31', 'YYYY-MM-DD'), '1 day' )) AS DATE ) SELECT DATE FROM date_series 이 쿼리는 WITH 절(CTE)을 사용하여 date_series 라는 임시 테이블을 만들고, GENERATE_SERIES 함수로 날짜를 채웁니다. 결과 (일별 출력) 2. 📅 월별 날짜 목록 생성하기 동일한 원리로, 간격을 '1 MONTH' 로 변경하면 월별 목록을 생성할 수 있습니다. TO...

CSS로 레이어 팝업 화면 가운데 정렬하는 방법 (top·left·transform 완전 정리)

레이어 팝업 센터 정렬, 이 코드만 알면 끝 (CSS 예제 포함) 이벤트 배너나 공지사항을 띄울 때 레이어 팝업(center 정렬) 을 깔끔하게 잡는 게 생각보다 어렵습니다. 화면 크기가 변해도 가운데에 고정되고, 모바일에서도 자연스럽게 보이게 하려면 position , top , left , transform 을 정확하게 이해해야 합니다. 이 글에서는 아래 내용을 예제로 정리합니다. 레이어 팝업(center 정렬)의 기본 개념 자주 사용하는 position: absolute / fixed 정렬 방식 질문에서 주신 스타일 top: 3.25%; left: 50%; transform: translateX(-50%) 의 의미 실무에서 바로 쓰는 반응형 레이어 팝업 HTML/CSS 예제 1. 레이어 팝업(center 정렬)이란? 레이어 팝업(레이어 팝업창) 은 새 창을 띄우는 것이 아니라, 현재 페이지 위에 div 레이어를 띄워서 공지사항, 광고, 이벤트 등을 보여주는 방식을 말합니다. 검색엔진(SEO) 입장에서도 같은 페이지 안에 HTML이 존재 하기 때문에 팝업 안의 텍스트도 정상적으로 인덱싱될 수 있습니다. 즉, “레이어 팝업 센터 정렬”, “레이어 팝업 만드는 방법”과 같이 관련 키워드를 적절히 넣어주면 검색 노출에 도움이 됩니다. 2. 질문에서 주신 레이어 팝업 스타일 분석 질문에서 주신 스타일은 다음과 같습니다. <div class="layer-popup" style="width:1210px; z-index:9001; position:absolute; top:3.25%; left:50%; transform:translateX(-50%);"> 레이어 팝업 내용 <...