Trouble Shooting/Java

테스트 코드를 작성하다 보면 “어제는 성공했는데 오늘은 실패한다?” 수정한 게 하나도 없는데 이런 일이 벌어질 때가 있습니다. 이번 글에서는 제가 실제로 겪은 LocalDateTime.now() 때문에 테스트가 간헐적으로 실패한 경험과 이를 해결한 방법을 정리해 보았습니다.이슈 발생제가 회사에서 맡고있는 소개팅 앱의 기능에는 이성의 카드를 받고 좋아요 또는 호감 메시지 보내기 기능이 있습니다. 이런 기능을 액션을 했다고 표현하는데 액션을 하게 되면 카드의 D-DAY를 갱신해주게 됩니다. D-DAY 갱신 방식으로는 기존 D-DAY가 7인 카드는 액션 시 D-7로 갱신하고, D-DAY가 1~6인 카드는 D-6으로 갱신해줍니다. 갱신 시에는 카드 데이터의 생성시간을 직접 수정D-DAY는 별도의 컬럼으로 관리..
이슈사항 Java에서 Arrays.asList() 로 생성한 List에 값을 추가 하려고하자 UnsupportedOperationException 에러가 발생했다. 해결 Java에서는 new 생성자로 생성하지 않은 List에는 값을 수정/삭제할 수 없다. 그렇기 때문에 위와 같은 상황에서는 new ArrayList() 안에 감싸서 생성한다음 사용하면 된다.
이슈 내용 Mysql의 BigDecimal 값을 Mybatis 쿼리를 통해 Object 형태로 조회해온 뒤, 자바단에서 Integer로 형변환 하려 할 때 아래과 같은 오류가 발생했다. java.math.BigDecimal cannot be cast to java.lang.Integer 원인 자바 Map 클래스의 Get 메소드를 통해서 Object 타입의 값을 가져왔는데, 이 때 이 Object는 참조변수에 해당한다. 그러므로 Object 타입의 변수가 실제로 가르키는 값은 BigDecimal 타입인데, 해당 값을 Integer로 명시적 형변환을 진행하려고 하기 때문에 오류가 발생한 것 이었다. BigDecimal과 Integer는 서로 상속관계에 있지 않은 클래스이므로 명시적 형변환을 진행할 수 없다...
iwannarest
'Trouble Shooting/Java' 카테고리의 글 목록