Archives
- 21 Jan Stream 사용시 주의 해야 할 점 (외부에 있는 변수 사용해도 될까?)
- 20 Jan Beforeunload, visibilitychange 사용해서 사용자가 웹페이지를 떠날때 이벤트 잡기
- 13 Jan RDBMS mysql column 언제 Index를 설정하는게 좋을까?
- 10 Jan String, Stringbuilder, Stringbuffer 의 차이 알아보기
- 07 Jan Spring 으로 이미지 브라우저에 캐시 저장하도록 알려주기
- 01 Jan Spring Transactional 의 Propagation option 알아보기!
- 30 Dec CompletableFuture 비동기 작업 처리중 갑자기 동작을 안 하는 경우
- 20 Dec Spring Transactional 사용시 주의해야하는 점!
- 16 Dec Lombok builder 사용해보기
- 06 Dec Spring Transactional 의 Isolation 옵션 (격리수준) 알아보기
- 04 Dec Spring JPA 사용하는 Service에서 Transactional 사용하기 (간단한 코드)
- 03 Dec Java Thread 로 오래 걸리는 Controller 작업 금방 끝내버리기
- 25 Nov Elastic Search 검색 개선 하기
- 20 Nov Elastic search 에서 And 조건의 document에 점수 많이 주기
- 12 Nov spring 에서 한 ip로 부터 들어오는 traffic 제한해보기
- 07 Nov JavaScript Client side 코드 사용자가 절대 디버깅 하지 못하게 하기
- 01 Nov Controller Advice, exceptionHandler 로 Spring에서 에러 발생시 이동하는 페이지 만들어 보기
- 31 Oct if not list: 의 정확한 뜻 파악해보기
- 21 Oct Github Repository 를 commit 기록까지 한꺼번에 옮기기
- 08 Oct spring 에서 random endpoint 만들어서 보안 유지해보기
- 01 Oct Password가 맞는지 아닌지 확인해 보자 (Bcrypt0)
- 23 Sep Geolocation 으로 내 페이지에 접속한 사람의 위치를 대략적으로 가져와보자
- 19 Sep Spring 프로젝트 할 때 구조 잡아보기
- 11 Sep 인덱스 설정으로 개선했던 Table 한번 더 개선하기!
- 06 Sep 클라이언트쪽 에서도 서버쪽 에서도 권한 확인이 필요한 이유!
- 05 Sep Resource Leak 방지법: Try-Finally와 Try-with-Resources 활용하기
- 04 Sep 효율적인 Query Tuning: DB Index 설정 시 알아두면 좋은 팁
- 01 Sep 어떤 툴, 기능 등이 제대로 설치 되어있는지 python 으로 확인하기: help option으로 꼼수
- 29 Aug HTML에서 하이라이트 적용하기: 중복 문제를 방지하는 효율적인 방법
- 22 Aug 전체 유저 공지 개선: Broadcast Alarm을 활용한 성능 향상
- 20 Aug 웹 페이지에서 번역된 콘텐츠와 원문 간의 전환 구현하기
- 19 Aug Kubernetes 인증서 만료 문제 해결하기: 'x509: certificate has expired' 에러
- 16 Aug 코드 가독성을 높이는 방법: Argument로 Map 사용 줄이기
- 14 Aug 휴대폰의 네트워크 요청 추적하기: mitmproxy로 분석하기
- 13 Aug 새롭게 로드된 요소도 클릭 이벤트 처리하기: jQuery 이벤트 위임
- 12 Aug 캡슐화로 코드 간결하게 만들기: 사내 게시판 연동 사례
- 09 Aug Lombok으로 Java 코드 간결하게 만들기: Getter, Setter, Constructor 활용법
- 08 Aug 배포 후 웹 자원 캐시 문제 해결: JS와 CSS 강제 새로고침하는 법
- 07 Aug CSS ::after와 ::before로 요소 추가하기
- 05 Aug Spring Boot에서 최대 Thread 개수 늘리기: Tomcat 설정으로 서버 성능 향상하기
- 31 Jul JWT Token으로 사용자 인증하기: Spring에서 간편하게 적용하는 방법
- 29 Jul Spring Actuator 보안 강화: 포트 번호 숨겨서 안전하게 설정하기
- 26 Jul SSL 인증 오류 해결: Java에서 Verify False로 Request 보내기
- 25 Jul Ajax 사용 시 데이터가 짤린다면?: 새로고침을 의심해보자
- 24 Jul 하나의 Spring 메서드에서 View와 JSON 동시에 처리하기: 꼼수와 팁
- 22 Jul PurgeCSS로 사용하지 않는 CSS 한 방에 제거하기: 웹 성능 최적화 팁
- 19 Jul Submit 속도와 유연성 높이기: AJAX로 폼 제출을 최적화하는 비법
- 15 Jul Java List 정리 꿀팁: removeIf로 불필요한 요소 간단히 제거하기
- 04 Jul 중국어 텍스트 분리: Tokenizing으로 검색 성능 향상시키기
- 27 Jun 클라이언트의 현재 시간 가져오기: 웹사이트 공지사항 동기화하기
- 18 Jun UTC Time 이해하기: 글로벌 애플리케이션에서의 활용
- 10 Jun Ajax 요청으로 인한 Race Condition 문제: 두 요청이 동시에 같은 데이터를 수정할 때 발생하는 오류와 해결법!
- 09 Jun Logback.xml 수정하고 Filebeat로 로그 모니터링 구축하기: ELK와의 연동 방법!
- 29 May Java에서 배열 복사 속도 비교: clone vs index (어떤 방법이 더 빠를까?)
- 27 May Java 자바에서 Shallow Copy와 Deep Copy 완벽 이해하기 (코드로 쉽게 배워보자!)
- 20 May 웹사이트 팝업 공지, 왜 'n일간 보지 않기'일까?
- 13 May Scheduler 분산하기: Spring 애플리케이션의 CPU 사용량 최적화하기
- 09 May Dark Mode 색상 관리 효율화: CSS 변수 활용하기
- 03 May synchronized로 메서드의 동시 접근 제어하기
- 30 Apr Java Stream으로 성능 향상하기: 반복문에서 Stream으로의 전환
- 22 Apr 영어 문자열 Tokenizing 개선하기: 대문자 분리로 검색 정확도 높이기
- 16 Apr ExecutorService로 Spring에서 병렬 처리와 스레드 수 제한하기
- 11 Apr Mutation Observer로 동적으로 로드되는 콘텐츠 번역하기
- 08 Apr DB 쿼리 성능 높이기: 변수 바인딩으로 속도 개선하기 (python, java)
- 01 Apr 버튼 클릭으로 실시간 번역! 웹 페이지에 글로벌 번역 서비스 추가하기
- 19 Mar Grafana와 Prometheus로 Q&A 플랫폼 상태 모니터링 강화하기
- 14 Mar HealthCheck 구축으로 시스템 안정성 확보: 플랫폼의 건강 상태 모니터링하기
- 11 Mar Facade 패턴으로 코드 복잡도 줄이기: 간단한 인터페이스로 복잡한 작업 처리
- 05 Mar Gulp를 활용한 CSS 및 JS 최적화: 용량 줄이기와 로딩 속도 향상
- 26 Feb Elastic Search 에서 한글 초성 검색 지원: 초성, 중성, 종성 분리로 검색 개선하기
- 22 Feb 한글 검색 개선하기: TwitterKoreanProcessor를 이용한 Token화 방법
- 15 Feb ElasticSearch 클러스터 구성하기: 단일 노드부터 2개 노드까지
- 06 Feb Decorator 패턴으로 코드 확장성과 유지보수성 높이기
- 29 Jan 숨겨진 이미지 찾기 이벤트에서 사용자 Cheating 방지하기: SHA-256으로 안전하게!
- 09 Jan 대형 Util 클래스 분리하기: 유지보수성을 높이는 리팩토링
- 05 Jan 상태 관리가 쉬워지는 State 패턴 구현 방법
- 02 Jan MySQL 인덱스 설정으로 쿼리 속도 100배 빠르게 만들기
- 22 Dec 반복자 패턴 소개: 객체 컬렉션을 효율적으로 순회하는 디자인 패턴
- 21 Dec Java에서 Python처럼 다중 리턴 값 처리하기: Pair 활용법
- 18 Dec Spring Boot 성능 개선: Ehcache와 Redis로 페이지 로딩 속도 향상하기
- 08 Dec 서버 최적화: DB에서 데이터를 메모리로 캐싱하여 성능 향상하기
- 04 Dec VisualVM 프로파일러로 Java 메소드 실행시간 측정하기
- 27 Nov MAT으로 Java Heap Dump 분석하기 (Memory Leak 문제 해결기)
- 21 Nov Java에서 홀수 확인 시 주의할 점! (홀수 판별 꿀팁과 주의사항)
- 20 Nov 메멘토 패턴으로 객체 상태 저장과 복원 구현하기
- 15 Nov VisualVM으로 Spring 애플리케이션의 CPU와 메모리 사용량 실시간 모니터링하기
- 06 Nov Python Locust로 플랫폼 부하 테스트: 사용자 트래픽 시뮬레이션
- 31 Oct Spring 에서 Server-Sent Events(SSE)로 브라우저 알림 구현하기
- 24 Oct 사용자 클릭 분석하기: Django와 JavaScript로 클릭 트래커 구축하기
- 21 Oct Mockito로 Mocking하여 테스트 개선하기: DB 의존성 제거하기
- 20 Oct JUnit으로 테스트 케이스 작성하는 법: 기본 어노테이션과 어설션 활용하기
- 19 Oct Spring으로 실시간 채팅 서비스 만들기: WebSocket을 활용한 채팅 구축 가이드
- 17 Oct CompletableFuture로 비동기 작업 처리: 사내 게시판 연동에서 성능 향상하기
- 16 Oct 옵저버 패턴 소개: 변화 감지와 알림 구현하기
- 13 Oct Python Multiprocessing으로 API 호출 속도 향상시키기: 여러 스레드로 한 번에 처리하기
- 19 Sep 복잡한 조건문을 간단하게! If 정리 팁
- 06 Sep HTTPS 작동 방식 알아보기: 대칭키와 비대칭키의 사용법
- 14 Aug Java List에서 안전하게 항목 삭제하기: 인덱스와 레이스 컨디션
- 06 Aug 어댑터 패턴 이해해보기: 호환성 문제를 해결하는 구조적 패턴
- 19 Jul Cookie와 LocalStorage 비교: 저장 용량과 활용 방법
- 11 Jul Guard Clause를 활용한 Clean Code: 중첩된 if 문 없애는 법
- 04 Jul 팩토리 패턴 이해하기: 코드 중복 없이 객체 생성 관리하기
- 04 Jul SameSite 쿠키 정책 이해하기: None, Lax, Strict의 차이와 문제 해결 방법
- 13 Jun 브릿지 패턴으로 확장성과 유연성 높이기: Java 코드로 이해하기
- 12 Jun Spring에서 Scheduler 추가: 주기적인 작업 실행과 멀티 인스턴스 문제 해결 나만의 가이드
- 22 May Spring에서 doFilter 활용하기: Filter와 Interceptor의 차이와 실제 코드 예제
- 12 May Spring에서 AJAX 요청 필터링: X-Requested-With 헤더로 요청 구분하기
- 03 May Collections.emptyList() 이해하기: Java에서 빈 리스트를 반환하는 이유와 장점
- 02 May Java에서 싱글톤 패턴 구현하기: 단 하나의 인스턴스만 생성하는 방법
- 25 Apr Spring Framework의 Interceptor: 공통 작업 처리 및 예제 코드
- 18 Apr Spring Controller에서 JSON 응답 보내기: @ResponseBody와 @RestController 사용법
- 07 Apr 사내 프록시 서버: 왜 필요한지, 어떻게 해결할 수 있는지 알아보기
- 03 Apr Spring MVC의 핵심: 코드로 보는 Controller, Model, View의 역할
- 01 Apr 디자인 패턴의 중요성: 왜 배우고 활용해야 하는지
- 27 Mar Spring 의존성 주입(DI) 소개: Bean 등록과 @Autowired 활용법
- 06 Mar SQL 인젝션 보안 문제: Lucene에서 Elasticsearch로의 전환으로 해결하기