IntelliJ 에서 JUnit @DisplayName에 작성한 한글 깨짐 해결 방법
Intro 책 실습을 따라하면서 IntelliJ를 사용해봤습니다. 그런데 JUnit 에서 테스트 이름을 설정하는 @DisplayName annotation에 한글을 사용하니 깨져서 나왔습니다. Encoding 설정 바꾸기, 한글 언어팩 설치, 구성 파일에서 VM 옵션 설정 등 여러가지 방법들을 모두 시도해봤는데 안돼서 당황했습니다. 쓸모없는 ...
Intro 책 실습을 따라하면서 IntelliJ를 사용해봤습니다. 그런데 JUnit 에서 테스트 이름을 설정하는 @DisplayName annotation에 한글을 사용하니 깨져서 나왔습니다. Encoding 설정 바꾸기, 한글 언어팩 설치, 구성 파일에서 VM 옵션 설정 등 여러가지 방법들을 모두 시도해봤는데 안돼서 당황했습니다. 쓸모없는 ...
Intro VS Code로 Java 프로젝트를 생성하면서 사용했던 방법을 공유합니다. Maven 프로젝트 템플릿 툴인 Archetype을 사용하였으며, Windows 와 WSL(Ubuntu) 환경에서 진행하였습니다. WSL에 open JDK 11과 17, 그리고 maven 3.6.3 버전이 설치된 상태입니다. 1. Extension Pack for...
Intro 이전에 콘솔(Console) 프로그램을 만들면서 머릿속에 있는 애매한 요구사항 때문에 괴로웠던 기억이 있어서, 요구사항을 잘 정리해볼 겸 이리저리 찾아봤습니다. 아주 간단하게 샘플과 함께 요구사항 명세서를 설명해주신 분의 글(링크)이 있어서 이렇게 작성하면 되겠구나 했습니다. 그런데 이번에는 잘 만들어보려하니, 사용자가 처음 만나야하는 ...
Intro 어제 Console 에서 플래시카드 어플리케이션 만든 후기(링크)를 썼습니다. 또 잘못했던 것을 개선하면서 야심차게 나아가고 싶었는데, 오늘은 새로운 지식이 잘 안들어와서 후기 내용 중에 View 클래스를 문자열 보관함으로 만들어 버렸던 것에 대해 조금 더 고민을 해봤습니다. MVC 패턴을 공부하지 않은게 문제가 아니다 구현을 하면서 M...
Intro 앞서 진행했던 설계들을 바탕으로 Java를 이용해 플래시카드(Flashcards) 어플리케이션을 만들어봤습니다. 설계는 멍멍이한테 준 느낌이지만… ‘그래도 안하는 것보다는 더 나은 과정을 경험하지 않았나’하고 자평하고 있습니다. 이후 과정은 코드 복붙 반복에 만들자마자 소프트웨어의 생명이 끝납니다. 그래서 생각했던 기능을 다 구현하지...
Intro SQLite3 데이터베이스 만들 때 CREATE TABLE 구문에서 외래 키 제약을 설정했으니 당연히 제약이 동작할 거라고 생각했는데, 상위 테이블 데이터 삭제하는 테스트를 만들다가 안되는걸 발견했습니다. SQLite3 외래키 제약 기본 설정 문서(링크)를 보니 SQLite3의 기본적인 외래키 제약 설정은 Off 입니다. For...
Intro DAO(Data Access Object)에 CRUD 수행하는 코드를 만들면서 테스트 코드를 삽입, 조회, 수정, 삭제 순으로 순서를 지정해서 수행하기 위해 간편하게 chat GPT에 물어봤더니, 테스트 메서드(Method)에 @Order(숫자) 와 같이 Annotation 붙여주면 된다고 해서 그대로 했다가 오류를 못잡아서 쓸데 없이 시...
Intro 제목에 대한 답을 먼저 말씀드리자면, System 클래스의 in을 변경한 적이 없을 경우 키보드 입력 받을 일이 없거나 프로그램 종료할 때 입니다. 이전 글에서 잡설을 하면서 close() 에 대해 이해가 안돼서 툴툴 거렸는데, 궁금해서 Bing chat, chat GPT 와의 협업(?)으로 찾아봤습니다. Bard는 헛소리 해서 아쉽게도 ...
Intro 이전 글에서 물리 데이터 모델링을 하고, 조금씩이나마 구현하고 있습니다. (설계한게 무슨 소용이었나 싶을 정도로 뜯어 고쳐야 할 것이 많이 보입니다.) Java를 이용해서 CLI(Command Line Interface)로 만들다보니, 사용자 입력을 받기 위해 간편하게 Scanner 클래스(Class)를 사용하였습니다. 그런데 예외처리...
Intro AWS CodeWhisperer는 AWS에 가입하지 않고도 이메일 등록만하면 개인은 무료로 Github copilot 같은 코드 자동생성기를 쓸 수 있다고 해서 Java로 sqlite 연결하는 클래스와 테스트를 만들면서 사용해봤습니다. 다른 것들을 써본적이 없어서 다른 코드 자동생성기와는 비교는 할 수 없었습니다. 자동 코드 생성기를 처음...