파란하늘의 지식창고
article thumbnail
fiddler 사용하기
Study/ETC 2023. 10. 14. 10:13

fiddler 소개 fiddler는 웹 요청을 캡처하여 요청에 대해 파악하고 디버깅을 할 수 있는 debugging proxy tool이다. https://www.telerik.com/fiddler 웹 브라우저에서 개발자 도구를 사용해도 요청을 확인할 수 있고 디버깅이 가능하지만 페이지가 전환되는 경우 이전 페이지에서의 요청은 확인하기 어렵다. 이런 경우 fiddler를 사용하면 요청을 확인하기 편하다. fiddler의 경우 현재 유료 버전을 제공하면서 Fiddler Everywhere, Fiddler Jam 같은 도구들을 제공하고 있는데 무료로 사용할 수 있는 Fiddler Classic을 다운로드하여 사용하면 된다. https://www.telerik.com/download/fiddler 웹 요청 외..

JDK 18 ~ JDK 21 사이 추가된 Feature
Study/Java 2023. 10. 5. 01:18

JDK 버전별 New Features JDK 21은 기존 3년 주기 LTS (Long-term support) 정책을 2년 주기로 변경한 이후 나온 첫 LTS 버전이다. 지난 LTS 버전인 JDK 17 이후 18, 19, 20, 21을 거쳐 어떠한 것들이 변경되었는지 정리해 보았다. (이후 추가될 기능과 관련된 Incubator, Preview feature는 제외) 만약 각 JDK별 변경 사항을 확인하고 싶은 경우 이전 글을 참고하면 된다. 2022.03.24 - [Study/Java] - JDK 18 New Features 2022.09.21 - [Study/Java] - JDK 19 New Features 2023.05.07 - [Study/Java] - JDK 20 New Features 2023..

JDK 21 New Features
Study/Java 2023. 10. 4. 18:38

JDK의 버전별 변경 사항은 이곳을 참고하세요. Spec Java SE 21 Platform JSR 396에 정의된 바와 같이 JSR 396 구현이 목표 실제 Spec은 Final Release Specification 문서를 참고해야 함 Final Release Specification Feature Summary 전체 JEP Feature 목록은 OpenJDK의 JDK21 문서로 확인할 수 있다. JEP Component Feature JEP 430 specification / language String Templates (Preview) JEP 431 core-libs / java.util:collections Sequenced Collections JEP 439 hotspot / gc Gener..

Lua data를 json으로 변환하기
Study/JavaScript 2023. 9. 27. 02:23

lua로 만들어진 데이터를 익숙한 json 데이터로 변환해서 사용해보고 싶었다. 그러려다 보니 lua data를 가져와 json으로 변환하는 과정을 lua 스크립트로 작성해야 했다. 그 내용을 기록해 본다. lua 소개 https://www.lua.org/ lua는 가벼운 명령형/절차적 언어로 확장 언어로 쓰일 수 있는 스크립팅 언어를 주목적으로 설계되었다. 포르투칼어로 "달"을 의미하는 단어라고 한다. C/C++과 같이 쓰기 좋아서 앵그리버드, 월드 오브 워크래프트, 로블록스, 네버윈터 나이츠, 문명 V 등등 다양한 게임에서 UI나 config 설정을 관리하는 용도로 많이 쓰인다고 한다. lua 설치하기 https://www.lua.org/download.html window에서 사용하려고 하였는데 다..

vaadin 사용해 보기
Study/Java 2023. 9. 19. 05:06

Vaadin 소개 https://vaadin.com/ vaadin은 ui component 구성을 제공해 주는 java기반 웹프레임워크이다. Swing이나 AWT를 작성하는 것처럼 java 코드를 작성하면 요청에 대해 대응되는 web ui를 제공해 준다. ui관련 html, javascript, css 작업을 따로 하지 않아도 되고 Java 대신 TypeScript를 사용할 수도 있다. 기본 기능은 open-source로 제공되며 생산성 향상을 위한 vaadin UI 관련 테스트 도구나 Advanced UI component는 유료로 제공된다. Vue, Svelte 같은 Front-end Framework를 흥미를 가지고 공부해 보았지만 너무나 변화하는 속도가 빠르다 보니 다른 방법이 없을까 싶어 찾아보..

[troubleshooting] Spring Boot 테스트 코드 실행 시 java.lang.NoClassDefFoundError: io/micrometer/context/ThreadLocalAccessor 에러
Study/Java 2023. 8. 18. 05:35

Spring Boot 3.1.1에서 테스트 코드 실행 시 다음과 같은 에러가 발생했다. Caused by: java.lang.IllegalStateException: MicrometerObservationRegistryTestExecutionListener requires micrometer-observation 1.10.8 or higher at org.springframework.test.context.observation.MicrometerObservationRegistryTestExecutionListener.(MicrometerObservationRegistryTestExecutionListener.java:80) ... 59 common frames omitted Caused by: java...

article thumbnail
annotation 을 가진 class 검색에 reflection util 대신 Spring TypeFilter 사용으로 대체하기
Study/Java 2023. 7. 31. 01:04

Reflection 소개 reflection 은 java의 classpath metadata를 scan 하고 캐싱하는 라이브러리이다. https://github.com/ronmamo/reflections 다음과 같은 것들을 scan 할 수 있다. type의 subtype annotation으로 주석이 달린 type annotatoin, parameters, return type이 있는 method classpath 경로에서 찾을 수 있는 resource ... 사용 방법은 간단하다. dependency를 추가하고 # Maven org.reflections reflections 0.10.2 # Gradle implementation 'org.reflections:reflections:0.10.2' 다음과 ..

Spring Boot Condition Evaluation Report 확인하기
Study/Java 2023. 7. 16. 16:15

Condition Evaluation Report 소개 spring-boot-autoconfigure 를 사용하면 여러 조건에 따라 제공되는 AutoConfiguration 설정들이 활성화 또는 비활성화된다. 예를 들어 DataSource를 사용할 때 DataSource 관련 properties나 bean 설정을 하고 DataSource 관련 jar를 참조하는 경우 DataSourceAutoConfiguration에서 활성화 조건들에 대해 체크한 후 활성화되어 사용자가 일일이 설정하지 않아도 기본적인 설정들을 제공해 준다. Spring Boot는 어떤 AutoConfiguration이 활성화되고 어떤 AutoConfiguration이 비활성화되었는지 확인할 수 있도록 Condition Evaluation..