"오늘의 문제를, 내일의 기록으로 남깁니다."

막연한 이론보다, 구체적인 코드가 필요할 때. 직접 겪고 해결한 문제들을 기록합니다. 실무에서 부딪히는 진짜 이슈와, 내가 이해한 방식 그대로 정리한 가이드입니다.

반응형

전체 글 96

자바 MapReduce로 대용량 데이터 추출하기: 날짜·도시 필터 + 사용자 합계 실전 예제

자바 MapReduce로 데이터 추출하기: 실무형 예제(Mapper/Reducer/Driver, 빌드·실행까지)운영 로그나 대용량 CSV에서 조건에 맞는 데이터만 추출하고, 간단 집계까지 하고 싶을 때 Hadoop MapReduce는 여전히 강력합니다.이 글은 레거시 Hadoop 클러스터에서도 그대로 돌아가는 자바 MapReduce 추출 파이프라인을Mapper → Reducer → Driver → 패키징 → 실행 순서로 보여드립니다.목표 시나리오예시 원천은 콤마 CSV 로그(UTF-8)입니다. 스키마:dt,city,userId,action,value (예: 2025-11-30,Seoul,u123,CLICK,42)우리는 날짜 범위와 도시로 필터하여, 조건에 맞는 행만 추출하고(Export),추가로 user..

웹개발/Java 2025.12.03

실무에서 자주 쓰는 PL/SQL 문법과 예제: BULK/FA, RETURNING, 자율 트랜잭션, 패키지/트리거 한 번에 정리

실무에서 바로 쓰는 PL/SQL 문법 정리: 예제 중심 베스트 프랙티스운영 현장에서 PL/SQL은 배치 작업, 데이터 정제, 감사 로그, 에러 복구 등에서 강력합니다. 이 글은 “지금 당장 써먹을 수 있는” 문법과 패턴만 추려 예제 중심으로 정리했습니다. 각 코드 블록은 SQL*Plus 혹은 SQL Developer에서 그대로 실행해 볼 수 있게 구성했습니다.0) 준비: 출력 설정SET SERVEROUTPUT ON SIZE UNLIMITED;1) 익명 블록(Anonymous Block) + 예외 처리DECLARE v_cnt NUMBER;BEGIN SELECT COUNT(*) INTO v_cnt FROM employees WHERE department_id = 10; DBMS_OUTPUT.put_li..

웹개발/DataBase 2025.12.03

실무에서 바로 쓰는 Oracle 힌트 사용법: INDEX/LEADING/USE_NL/PARALLEL 핵심 조합

실무에서 바로 쓰는 Oracle DB 힌트 사용법 (성능 튜닝 핵심 예제)운영 중 쿼리가 느리다고 통째로 갈아엎을 순 없습니다. 지표(통계)나 스키마를 건드리기 어려운 상황이라면, 일시적으로 힌트(Hint)를 써서 옵티마이저의 실행 계획을 원하는 방향으로 유도하는 방법이 현실적입니다. 아래는 레거시·신규 모두에서 자주 쓰는 힌트와 실무 패턴을 정리한 글입니다. “원인 파악 → 최소 변경 → 효과 검증” 순서로 보세요.1) 힌트 기본 문법/*+ HINT_NAME [파라미터...] */SELECT /*+ GATHER_PLAN_STATISTICS */ ...힌트는 SELECT/INSERT/UPDATE/DELETE 키워드 바로 뒤 주석에 위치해야 합니다(공백, 개행 주의).2) 실행 계획과 실측치 확인 루틴--..

웹개발/DataBase 2025.12.02

레거시 Spring/JSP 프로젝트에서 XSS 필터 적용하는 법 (web.xml & Jsoup 실전 가이드)

레거시 Spring/JSP 프로젝트에서 XSS 필터 적용하는 법 (web.xml 기반, 실무 예제 포함)운영 중인 레거시(Spring MVC + JSP) 사이트에서 게시판이나 검색창에 입력 페이지 리다이렉트 후 화면/저장 데이터에 스크립트가 그대로 실행되지 않고 태그가 제거/이스케이프되는지 확인 JSP 출력이 <script>alert(1)</script> 형태로 보이면 성공7) 운영 적용 체크리스트 XSS 필터가 모든 일반 요청에 적용되는가(업로드/특정 API는 예외 검토) JSP 출력은 , fn:escapeXml()를 일관 적용했는가 CSP 등 보조 보안 헤더로 인라인 스크립트, 외부 스크립트 출처를 제한했는가 정제 정책(Safelist.basic/none)을 화면 성..

톰캣 버전정보 노출 차단 가이드

톰캣(Tomcat) 버전정보 노출 차단: 서버 헤더/에러페이지에서 버전 숨기기운영 중 페이지에서 400/404/500 같은 에러가 뜰 때, 화면 하단에 Apache Tomcat/9.0.xx 같은 버전 문자열이 노출되거나,curl -I로 응답 헤더를 보면 Server: Apache-Coyote/1.1처럼 서버 식별 정보가 그대로 보이는 경우가 있습니다.보안 관점에서 불필요한 버전 노출은 취약점 스캐너에 좋은 표적이 되므로 바로 차단하는 게 맞습니다.아래는 실서버에서 즉시 적용 가능한 단계별 가이드입니다.1) 현재 노출 여부 점검# 응답 헤더 점검curl -I http://your-domain.com# 에러페이지 점검(존재하지 않는 경로)curl -I http://your-domain.com/__not_fo..

반응형