전체 글 874

파일 조작의 새로운 길, `java.nio.file.Files` vs `java.io.File`

Java에서 파일 조작에 필요한 API로 오랜 기간동안 사용되어온 java.io.File과 Java 7에서 도입된 java.nio.file.Files는 둘 다 파일 시스템 조작을 위한 도구이지만, java.nio.file.Files가 왜 더 선호되는지에 대해 자세하게 알아보겠습니다. java.io.File의 한계와 문제점 1. Blocking I/O의 한계 java.io.File은 기본적으로 Blocking I/O만을 지원합니다. 이는 파일 작업이 끝날 때까지 스레드가 블록되어 다른 작업을 수행할 수 없다는 의미입니다. 대규모 애플리케이션에서는 효율적인 리소스 활용이 어려울 수 있습니다. 2. 디렉터리 및 파일 조작의 제한 java.io.File은 디렉터리를 다루는 데에 제약이 있습니다. 디렉터리를 조작..

back end/java 2023.11.09

Gson을 사용한 Java 8 LocalDateTime의 직렬화 및 역직렬화

1. 현상 JSON 데이터에는 "2014-03-10T18:46:40.000Z"와 같은 날짜 및 시간 속성이 있으며, 이를 Java 8의 LocalDateTime으로 역직렬화하려고 시도했을 때 다음과 같은 오류가 발생합니다: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING. 2. 원인 이 문제는 Gson이 JSON 문자열을 파싱하고 LocalDateTime 필드에 매핑하려고 시도할 때 발생합니다. Gson은 기본적으로 JSON 문자열을 LocalDateTime으로 변환하지 못하므로 LocalDateTime 필드가 문자열로 처리됩니다. 3. 해결방법 LocalDateTime과 JSON 날짜 문자열 간의 매핑을 처리하기 위해 Gson..

back end/java 2023.11.05

자바 클래스 파일 버전 확인하는 방법

Java 클래스 파일은 Java 컴파일러에 의해 생성될 때 특정 버전 형식을 가집니다. 이 버전 정보는 클래스 파일의 호환성 및 실행 환경과 관련이 있으며, 때로는 클래스 파일을 분석하거나 문제 해결을 위해 필요한 정보일 수 있습니다. 다음은 Java 클래스 파일의 버전을 확인하는 방법입니다. 1. 클래스 파일 버전 확인 방법 javap 명령어는 Java 디컴파일러입니다. 다음과 같이 명령어를 사용하여 클래스 파일의 버전을 확인할 수 있습니다. javap -verbose MyClass.class MyClass.class는 확인하려는 클래스 파일 이름으로 대체해야 합니다. 위 명령어를 실행하면 클래스 파일의 세부 정보 중에 "major version"과 "minor version" 항목이 나타납니다. 이를..

back end/java 2023.11.05

Spring Boot JPA에서 SQL 로그 출력하기

Spring Boot와 JPA를 사용하여 데이터베이스와 상호 작용할 때 SQL 쿼리를 로그로 출력하는 것은 애플리케이션 디버깅 및 성능 튜닝에 매우 유용합니다. Spring Boot는 이를 가능하게 하는 다양한 설정 옵션을 제공합니다. 이 블로그에서는 Spring Boot 프로젝트에서 SQL 로그를 활성화하고 원하는 형식으로 출력하는 방법을 자세히 설명하겠습니다. 1. application.properties 또는 application.yml 설정 Spring Boot 애플리케이션에서 SQL 로그를 출력하려면 application.properties 또는 application.yml 파일에 다음과 같은 설정을 추가해야 합니다: application.properties # SQL 로그 출력 설정 sprin..

back end/java 2023.11.05

apache poi - IOException: 지정된 경로를 찾을 수 없습니다

문제 발생 apache poi를 사용한 엑셀 다운로드 시, 다음과 같은 에러 발생하여 내용 기록 원인 분석 엑셀 다운로드 시, createTempFile() 함수에서 임시 경로를 만드는데, 코드는 다음과 같습니다. 이 함수 내용 중 경로에 해당하는 부분은 아래와 같습니다. new File(System.getProperty("java.io.tmpdir"), "poifiles"); java.io.tmpdir의 경로는 환경에 따라 다르기 때문에 다음과 같이 코드를 작성하여 확인이 필요합니다. public static void main(String[] args) { String tempDir = System.getProperty("java.io.tmpdir"); System.out.println(tempDir)..

back end/java 2023.10.04

Office 라이선스에 문제가 있습니다. 해결 방법

정품 인증을 했는데 아래 이미지와 같이 경고 창이 뜨는 경우가 있습니다. 1. 먼저, [계정 - Office 업데이트 - 업데이트 사용 안함]으로 변경합니다. 2. 아래 명령어를 순서대로 입력하여 오피스의 버전을 변경합니다. cd "\Program Files\Common Files\microsoft shared\ClickToRun" OfficeC2rclient.exe /update user updatetoversion=16.0.13801.20266 이제 자유롭게 오피스를 사용할 수 있습니다.

정보/생활정보 2023.09.17

오피스 2019 정품 인증 방법(크랙설치 안하는 방법)

오피스 정품인증을 위해 크랙 프로그램을 설치하려고 하면 v3등 백신 프로그램이 크랙 프로그램을 악성코드로 인식합니다. 무시하고 크랙을 실행하자니 불안합니다. 여기서는 크랙 설치 없이 CMD 명령어만으로 정품인증하는 방법을 설명합니다. 1. 키보드의 '윈도우키'를 누른 후, 'CMD' 또는 '명령 프롬프트'를 입력합니다. 2. '관리자 권한으로 실행'을 클릭합니다. 3. 아래 명령어를 순서대로 입력합니다. cd /d %ProgramFiles%\Microsoft Office\Office16 for /f %x in ('dir /b ..\root\Licenses16\ProPlus2019VL*.xrm-ms') do cscript ospp.vbs /inslic:"..\root\Licenses16\%x" cscrip..

정보/생활정보 2023.09.17

오피스 2019 다운로드 및 설치 하는 방법(microsoft office 2019)

컴퓨터를 새로 사거나 포맷을 하면 ms office를 다시 설치해야 하는데, 이것이 정말 귀찮은 일입니다. 아래 링크를 눌러 프로그램을 다운로드한 후, 실행만 하면 원클릭으로 ms office 2019가 설치됩니다. (그냥 실행해도 설치되지만, 관리자 권한으로 실행 하는 것을 추천드립니다.) ms office 2019 설치 프로그램 다운로드(클릭) 설치가 완료된 후 office를 실행하면 제품키를 입력하라고 하는데, [이 글]에서 정품인증 하는 방법을 확인해 주세요

정보/생활정보 2023.09.17

[JPA] deleteAll을 했는데 delete가 N개 발생하는 이유에 대하여

deleteAll을 했는데 delete가 N개 발생 JUNIT Test 진행 시, 깔끔하게 테스트하기 위해 deleteAll을 했는데 다음과 같이 deleteById가 N개가 발생하는 문제가 발생했습니다. 결과는 모두 삭제되어 결과는 동일했지만 모두 삭제되는데 엄청나게 많은 시간이 걸렸습니다. @BeforeEach public void setup() { this.mvc = MockMvcBuilders.webAppContextSetup(ctx) .addFilters(new CharacterEncodingFilter("UTF-8", true)) // 필터 추가 .alwaysDo(print()) .build(); // 데이터 초기화. 절대 Transactional을 해제하면 안됨. userGroupMember..

back end/java 2023.09.11

디아블로4 지옥물결에 관한 모든 것

디아블로 4의 엔드 콘텐츠 중 하나는 지옥물결이며 상당히 보상이 좋기 때문에 필수로 진행해야 하는 콘텐츠입니다. 특히 후반 마법 부여에 꼭 필요한 '잊힌 영혼', 능력치 변경에 사용되는 '마귀 장미'를 얻는 방법이 이 콘텐츠 밖에 없기 때문에 꾸준히 해야 합니다. 지옥물결 해금 디아블로4 지옥 물결 이벤트는 악몽 또는 고행난이도에서 진행할 수 있습니다. 지옥물결 시작 시간 및 종료 시간 지옥물결은 3일 주기로 반복하며, 이전 등장 시간을 이용하여 주기를 알 수 있습니다. 아래 소개해 드릴 사이트를 통해 다음 시작 시간을 쉽게 알 수 있습니다. 주기 시작 시간 종료 시간 Day 1 01 : 00 02 : 00 03 : 15 04 : 15 05 : 30 06 : 30 07 : 45 08 : 45 10 : 0..

게임 2023.07.19
728x90
loading