본문 바로가기

728x90
반응형

Development/Java

[JAVA] CLOB과 String(문자열)간의 변환 DB(DataBase)에서 큰 텍스트 데이터를 처리하는 것은 일반적인 작업입니다. CLOB 유형은 광범위한 텍스트 데이터를 DB에 저장할 수 있게 해줍니다. 따라서 DB를 통하여 CLOB 유형을 사용할 때에는 CLOB과 문자열 객체(String)간의 변환이 가끔씩 필요할 때가 있습니다. CLOB을 문자열로 변환표준 JAVA I/O 작업을 활용하여 SQL CLOB 객체의 문자 데이터를 효율적으로 처리할 수 있습니다.Reader는 CLOB에서 데이터를 읽고, 이 데이터는 처리되어 StringWriter에 쓰여져 String 객체로 변환됩니다.@Testpublic void givenCLOB_whenConvertToString_thenCorrect() throws SQLException, IOException .. 더보기
[JAVA] 정렬할 때 NullPointerException 방지 - Comparator.nullsLast() 활용 null 값이 포함된 Collection을 정렬할 때, 제대로 처리하지 않으면 NullPointerException이 발생될 수 있습니다.Java 8에서 이 문제를 해결하기 위한 편리한 메서드 Comparator.nullsLast()가 있습니다. 이 메서드를 사용하면 정렬 작업 중 null 값을 처리 가능합니다.Java에서 정렬할 때 NullPointerException을 방지하기 위해 Comparator.nullsLast()를 어떻게 사용하는지 알아보겠습니다.문제 상황적절한 예외 처리 없이 null 값이 포함된 목록을 정렬해 보는 간단한 예제를 만들어 보겠습니다.List strings = new ArrayList();strings.add("BB");strings.add("AA");strings.add(.. 더보기
[JAVA] Javadoc의 @See, @link, @inheritDoc 태그 살펴보기 Javadoc은 Java 소스 코드에서 HTML 형식의 최신 Java 문서를 생성하는 좋은 방법입니다.Javadoc 주석 중 @see, @link, @inheritDoc 태그에 대해서 알아보겠습니다.@see참조를 가리키는 링크나 텍스트 항목이 필요할 때 @see 태그를 사용합니다.이 태그는 참조에 "참조" 제목을 추가합니다. 문서 주석에는 수많은 @See 태그를 사용할 수 있습니다. 또한 모두 같은 제목으로 그룹화할수도 있습니다. Oracle 문서에서는 사용 방법에 대한 자세한 가이드를 제공합니다. 이 태그는 유효하며 패키지, 개요, 생성자, 클래스, 인터페이스를 포함한 모든 문서 주석에서 사용 가능합니다. @see 태그에는 3가지 변형이 있습니다. @See 태그의 형식@see reference @See.. 더보기
[JAVA] Javadoc란 좋은 API문서란 소프트웨어 프로젝트의 전반적인 성공에 기여하는 많은 요소들 중에 하나입니다.JDK는 소스 코드에 있는 주석에서 API 문서를 생성하는 Javadoc 도구를 제공합니다.Javadoc를 사용하기 필수 조건은 다음과 같습니다.(필수) JDK1.4 (Maven Javadoc 플러그인의 최신 버전에는 JDK7+을 권장함)(필수) PATH 환경 변수에 JDK/bin 폴더가 추가되어야 함(선택) 내장 도구가 있는 IDEJavadoc 주석Javadoc의 주석 구조는 일반적인 다중 줄 주석과 유사하지만 시작 부분에 별(*)이 하나더 추가되야 합니다.// 한줄 주석입니다./* * 일반적인 여러줄 주석(멀티 주석) 입니다. *//** * Javadoc 입니다. */ Javadoc 스타일 주석에는 HTML .. 더보기
[JAVA] 효과적인 Logging 14가지 가이드 실제 운영 상태에서 디버깅, 모니터링 및 사고 대응은 필수적인 요소입니다.로그로 사용하는 라이브러리는 SLF4J, log4j, log4j2, logback 등 다양하게 있습니다.Spring에서는 기본으로 logback을 쓰는것으로 알고 있습니다. 모범적인 사례들을 따르면 SLF4J와 Logback을 활용하여 애플리케이션 관리 및 사고 해결을 위한 전략적으로 사용할 수 있습니다.이러한 가이드라인을 사용할경우 문제 해결 속도가 빨라지고, 시스템 동작에 대한 더 깊은 이해가 이루지며 애플리케이션 안정성과 성능을 위한 견고한 기반이 구축될 것입니다. 이러한 효과적인 로깅의 주는 이점으로는 다음과 같습니다.관측성  향상: 로그는 애플리케이션 동작에 대한 자세한 기록을 제공하므로 시스템 작동 방식을 더 쉽게 이해하.. 더보기
[JAVA] 2차원 배열에서 최대값, 최소값 구하기(for, stream api) 2차원 배열에서 최대값과, 최소값을 구하는 두가지 방법을 소개합니다.기본이 되는 for문과 stream api를 통하여 구해보도록 하겠습니다.중첩된 For문을 사용하여 최대, 최소 값 구하기for문을 사용하게 될 경우 명확하고 직관적입니다.각 행과 열을 반복하여 최대값과 최소값을 비교하여 구할 수 있습니다.다음은 for문을 사용한 최대값과 최소값을 구하는 예제입니다.@Testvoid givenArrayWhenFindMinAndMaxUsingForLoopsThenCorrect() { int[][] array = {{8, 4, 1}, {2, 5, 7}, {3, 6, 9}}; int min = array[0][0]; int max = array[0][0]; for (int[] row : .. 더보기
[Spring Boot] Spring Boot Test에서 @Autowried와 @InjectMocks 사용 요즘 Unit Test에 대한 관심이 많아 졌으나 개인적으로 실제 대충 사용하여 잘 모르는 부분입니다.특히 모듈로 분리하였을 경우 Test가 힘든 점이 있어 Test의 관련된 내용을 조금 정리하고자 합니다.그 중 Spring Boot의 @Autowired와 Mockito의 @InjectMocks을 Spring Boot Tests에 의존성을 주입하여 사용하는 방법을 간단하게 테스트 진행할 것입니다.테스트 주석의 이해Mockito의 가장 일반적으로 사용되는 @Mock주석은테스트를 위한 종속성의 모의 인스턴스를 생성합니다. 이는 종종 @Mock으로 표시된 모의를 테스트 중인 대상 객체에 주입하는 @InjectMocks와 함께 사용되곤 합니다.Spring Boot의 주석 @MockBean은 모의된 Spring .. 더보기
[JAVA] 소수(Decimal)을 분수(Fraction)로 표현하기 Java에서 소수(Decimal)을 분수(Fraction)로 표현하는 방법에 대해서 알아보자.프로그래밍에서는 대부분 분수 표현을 사용하지 않고 소수표현을 사용합니다.표현 방식은 소수의 경우 0.6와 같이 사용하고 분수의 경우 3/5처럼 주로 표현합니다.생각외로 분수로 표현하는 방식이 까다로움이 있어 참고 사이트를 발췌하여 정리합니다. 지금부터 소수를 분수로 변경하는 몇가지 방법을 사용해 보도록 하겠습니다.10의 거듭제곱을 활용하는 방법소수를 분수로 변환하는 간단한 방법 중 하나는 소수에 10의 거듭제곱을 곱한 다음 결과 분자와 분모를 분수로 사용하는 것입니다. 즉, 소수를 정수로 변환하기 위해 소수점이하 자리수를 곱하여 분모에 곱한 수를 위치하는 것입니다.public static String conver.. 더보기

728x90
반응형