[SpringBoot] 프로젝트가 여러개일때, 공통 호출 로직에 대한 프로젝트 분리 및 JAR파일로 의존성 추가 하는 방법 3가지
Spring Boot + Gradle 환경에서공통 코드를 별도 프로젝트로 분리 → JAR 생성 → 다른 5개 프로젝트에서 의존성으로 추가하는 가장 일반적이고 안정적인 방법 정리 공통 코드...
[JAVA, SPRINGBOOT] 대량 1만건 데이터 insert 처리시 for문을 순회해서 처리하는게 맞을까? 속도 이슈 해결방법
java springboot 에서 select한 데이터가 1만건이야.. 이걸 for문 돌리면서 insert하는데, 너무 느려.. 병렬로 처리하거나.. 개선 방법이 있을까? 개선 방법 1. Batch Insert (배치 처리) 예시...
[STS] Spring JwtTokenProvider(Claims) 토큰 오염 문제 해결하기 (ThreadLocal 사용)
프로젝트 오픈 전 부하(성능)테스트를 진행하는데, 아주 큰 문제가 발생하였다. 여러 계정을 동시에 api를 호출하여 결과를 확인하는데, 데이터가 이상하다고 한다. 가령, 1번에서 100번까지 툴을 이용해서 UserList를...
[java] LinkedHashMap에 대한 데이터 set, get 예제 총정리 맵 유틸 등
✅ LinkedHashMap<String, Object> 예제 주요 포인트 안전한 꺼내기: null 체크 + 타입 체크 ✅ null 체크만 필요한 경우 ✅ 안전한 get 메서드 유틸리티 (예시) 실무에서는...
[Android] 휴대폰 하단 시스템 네비게이션 바(뒤로가기, 홈, 최근 앱 버튼이 있는 바)를 숨기는 방법
앱 하단의 시스템 네비게이션 바를 숨기고 전체 화면(몰입 모드, Immersive Mode)으로 만들려면, 액티비티의 Window 객체를 통해 시스템 UI 관련 플래그를 설정해야 한다. 앱의 Activity (예:...
[JAVA] 파일명과 확장자를 아주 쉽게 분리하는 방법: lastIndexOf쓰지말자.
org.apache.commons.io.FilenameUtils 의 getExtension() 메서드를 사용하여 확장자만 가져올 수 있다. 파일이름 가져오는 예제코드 lastIndexOf를 쓰는방법 파일명만 가져오기 getBaseName() 메서드를 이용하여 확장자를 제외한 파일 이름만 가져올 수...
[JAVA] 파일 생성 예제 코드 : FileWriter 및 BufferedWriter 샘플
다음은 파일 생성 및 txt추가하는 예제코드로, ArrayList에 텍스트를 추가한 후 파일 생성하는 메소를 호출하는 예제이다. 파일생성 메소드 예제 디렉토리 생성 및 파일 생성함수인 mkdir()은 아래...
[JAVA] 디렉토리 생성시 파일경로(directory)와 파일명 분리방법 : lastIndexOf 쓰지말자
파일경로에서 파일명과 디렉토리를 간단하게 분리해서 폴더 생성 및 파일을 생성할 수 있다. 폴더와 파일명 분리 예제 코드 getParentFile() 메소드를 통해 실제 파일 명 전까지의 절대경로를...
[Java Spring] 독립적인 트랜잭션(@Transactional) 처리방법
TransactionManager를 사용한 트랜잭션 수동 처리는 지양하고 @Transactional 어노테이션 사용을 지향한다. 가령, 스프링배치 Job의 기본 트랜잭션과 별도로 트랜잭션을 생성하여 처리하고 싶다면 @Transactional(propagation = Propagation.REQUIRES_NEW)을 사용한다. 내부함수...
[Java Spring] 오류발생시 트랜잭션(@Transactional) 롤백이 안될 때 코드 확인 방법
AOP에서 다뤄지는 큰 이슈 하나 AOP기반으로 동작하는 트랜잭션 어노테이션은 내부함수 호출에서 트랜잭션 보장이 안된다. 그럼 어떻게 해야할까? 정답은 Proxy로 자기자신 객체를 생성하여 사용한다. 다음 예제를...

