본문 바로가기 메뉴 바로가기

블로그으으

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

블로그으으

검색하기 폼
  • 분류 전체보기 (40)
    • Kafka (2)
    • 웹개발 (10)
    • ㄴspring boot (4)
    • DB (3)
    • JAVA (3)
    • AWS (3)
    • 도커 (2)
    • Jenkins (2)
    • 알고리즘 (1)
    • 네트워크 (2)
    • elk (2)
    • 리눅스 (0)
    • 제우스 (1)
  • 방명록

JAVA (3)
스레드 동기화와 volatile, synchronized 키워드

우리 팀에서는 사용자의 조작에 따라 카프카의 특정 토픽을 구독하거나 구독 취소하는 기능을 구현하고 있다. 이 과정에서 topicList라는 리스트를 통해 구독할 토픽을 관리하고, 해당 리스트의 사이즈를 체크하여 구독할 대상이 있는 경우에만 로직을 실행하도록 개발했다. 그런데 topicList에 데이터가 하나도 없을 때 무한루프에 빠져 새로운 토픽이 추가되어도 무한루프를 빠져나오지 못하는 현상이 발생했다.문제의 원인아래는 대략적인 코드이다. 코드를 살펴보면, topicList의 사이즈가 0일 때 while문 안에서 continue가 호출되어 무한루프에 빠지는 것을 알 수 있다. 사실 이 코드는 애초에 잘못 짜여진 코드이다. 토픽이 없는 경우에도 무한루프에 빠지가 코드를 짜면 안된다. 하지만 그렇다고 하더라..

JAVA 2024. 11. 11. 21:38
[JAVA] 법정공휴일 처리 - LocalDate 이용

캘린더 관련 작업을 하면서 특정날짜가 공휴일인지 확인해야했다. 그래서 검색하다 이 블로그 를 발견했는데 날짜와 시간 처리를 Date, Calendar 클래스를 이용해서 하고있었다. Date, Calendar클래스의 문제점이 많아 진행중인 프로젝트에서는 LocalDate를 이용하고 있었다.(Date, Calnedar의 문제점) 그래서 위의 블로그를 참고해 LocalDate를 이용하도록 변경하고, 우리 프로젝트에 맞게 커스터마이징 했다. 1. 음력변환 라이브러리 추가 설, 추석과 같은 음력 공휴일을 처리하기 위해 음력변환 라이브러리를 추가해준다. com.ibm.icu icu4j 4.0.1 2. 공휴일 처리 클래스 holidayArray가 특정 년도를 넣어주면 그 해의 공휴일을 리턴해주는데 return typ..

JAVA 2021. 2. 15. 17:10
[JAVA]Mybatis

PART 1 JDBC(Java Database Connectivity) DB에 접근할 수 있도록 JAVA에서 제공하는 API DB연결부터 쿼리 실행 트렌젝션 관리까지 모두 지원하는 라이브러리 PART 2 Mybatis JDBC에 종속된 라이브러리 JDBC를 보다 편하게 사용하기 위해 개발 1# MyBatis 특징SQL문이 코드로부터 완전히 분리 : 기존에는 DAO파일에 모든 SQL문을 작성했다. 하지만 MyBatis에서는 Mapper 파일에 SQL코드를 입력해 놓고 DAO파일에서 필요할 때마다 가져와서 사용할 수 있다.생산성 : 코드가 짧아진다.유지보수성 향상 : Mapper파일에만 SQL코드를 입력하고 나중에 SQL코드를 변경할 때 이곳에서 유지보수만 하면, DAO에서는 아무런 영향을 받지 않는다. 2..

JAVA 2019. 7. 5. 12:02
이전 1 다음
이전 다음
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
  • lnk
  • lbr
TAG
  • AWS
  • cleanup policy
  • s3
  • 도커
  • multiple datasource
  • PostgreSQL
  • 1차캐시
  • 넥서스 파일 보관주기
  • 쓰레드 변수
  • php
  • API Gateway
  • docker
  • 스레드 동기화
  • 다중 데이터소스
  • cursor mcp
  • 보관주기
  • myabatis
  • 카프카
  • 오블완
  • cursor ai
  • volatile
  • 넥서스 보관주기
  • jpa 1차 캐시
  • 기본클래스를 찾거나 로드할 수 없습니다
  • db 두개
  • 캐시
  • cleanup policies
  • CURSOR
  • 네트워크
  • spring boot
more
«   2025/09   »
일 월 화 수 목 금 토
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함

Blog is powered by Tistory / Designed by Tistory

티스토리툴바