Java Stack 113
- GraalVM으로 native image compile 하기 (with Spring Boot)
- JVM 관련
- RepositoryPagingItemReader 구현과 case 정리
- (Spring) @Scheduled를 수행하는 가장 효율적인 방법 (virtual thread, coroutine, thread pool)
- (Kotlin Coroutine) GlobalScope 단점과 대안
- (Kotlin Coroutine) Dispatchers
- Spring data jdbc에서 ID 미리 채번하는 경우 (save / insert / update)
- (Spring Batch) scope bean의 이해
- (Spring Boot 3) Mono 캐싱하기 (with caffeine)
- afterStep 에서 Exception을 던져도 다음 Step이 이어서 실행된다.
- (Kotlin) as와 타입 캐스팅. 런타임 에러. 타입 파라미터 소거(erasure)
- (Spring Data JDBC) JdbcOperations으로 확장하기
- 전문 해석기 배치 - File Line to Domain Model 변환
- 전문 해석기 배치 LineMapper - TelegramFieldSetMapper
- 전문 해석기 배치 LineMapper - BeanWrapperFieldSetMapper와 RecordFieldSetMapper의 차이
- 전문 해석기 배치 LineMapper - PatternMatchingCompositeLineMapper
- (Spring Batch) cli 실행 - JobLauncherApplicationRunner
- Spring Boot 3 에서 변경된 부분 (Batch)
- spring-webmvc 4.3.x와 5.x.x의 차이 - HttpMessageNotWritableException
- spring-webmvc 에서 SpringBoot로 단계별로 전환하기
- 지연 평가 Sequence의 원리
- Spring Batch Multi-threaded Step 사용 시 chunk 구성에 대한 오해
- (Spring Batch) 병렬 처리 방법 모음
- (Spring Batch) FileItemWriter
- (Spring) EventListener
- (Java) 양방향 참조 Enum 초기화 순서에 따른 문제 (순환 참조)
- (Kotlin Coroutine) Exception Handling
- (MyBatis) 객체 안의 객체 매핑하기 (ResultMap과 DTO)
- (MyBatis) Cache
- Intellij Multi Module Project 구성하기 (with Gradle)
- 테스트 클래스를 일정 수 이상 묶어서 실행하면, 어느 정도 실행하다가 갑자기 JDBC Connection을 무한히 대기하는 현상
- (Java) Jackson 프로퍼티명 snake\_case <-> camelCase 변환
- (Spring) DB 관련 - Mybatis CustomTypeHandler
- (Java) HmacUtils, Mac이 thread-safe하지 않다?
- (Spring) WebClient 예제
- (Spring) WebClient 생성/설정/로깅
- (Spring Batch) JobParameter 관리
- (Kotlin) java의 static final 변수에 대응되는 것은?
- spring-webmvc 5.2.4 이하(springboot 2.2.5 이하) 버전에서 발생하는 응답지연 현상
- (Java) Collection 초기화
- (Java8) CompletableFuture
- Java Servlet 이란
- (Java) Enum to Json / Enum to Object
- RestTemplate은 어떻게 response Object를 DataType 로 변환하는가
- (Kotlin) Serialization- Gson, Jackson
- (Spring) resources 경로 문제
- Netty
- (Java) RedisClient
- (tomcat) 톰캣, jvm 실행 인자
- (Spring) DB 관련 - Mybatis
- (Spring) profile로 alpha, beta, real 빌드 구분하기
- (Effective Java) 12장 직렬화
- (Effective Java) 11장 동시성 + collection 유틸 메서드
- (Effective Java) 10장 예외
- (Effective Java) 9장 일반적인 프로그래밍 원칙 (TIP - String 비교, 문자열 포매팅)
- (Java) ThreadLocal
- (Effective Java) 8장 메서드 ( null 체크, Optional )
- Reactive Programming
- (Effective Java) 7장 람다와 스트림
- (Effective Java) 6장 enum 타입과 애너테이션 (Annotation)
- (Effective Java) 5장 제네릭
- (Effective Java) 3장 모든 객체의 공통 메서드
- (Effective Java) 2장 객체 생성과 파괴
- (Spring) Controller에서 사용하는 애너테이션
- MyBatis의 @Mapper
- Spring AOP / @annotation resolve
- Hystrix with Spring ( Circuit Breaker ) 를 사용할 때 주의해야 할 점.
- (Spring) context.getBean() 으로 Bean 가져오는 패턴
- (Spring) DB 관련 - H2 설정
- RestTemplate 사용 시 ResponseType으로 generic 타입 받기 (ParameterizedTypeReference)
- (Spring) annotation - bean constraints, validation
- (Spring) annotation - lombok, builder
- (Java) LocalDateTime - 날짜 시간 처리 관련
- RecyclerView의 Adapter와 ViewHolder
- MVVM과 Android DataBinding
- (Android) Gradle 단에서 상수 넣어주기 (외부에서 상수 넣어주기)
- (Java) Enum
- Spring boot security 로그인 처리
- (Spring JDBC) JdbcOperations
- (Java) Jackson ObjectMapper Serialization
- Spring Framework의 IoC 컨테이너 / 빈(Bean) / DI 방식 정리
- Chrome Custom Tabs
- Android Widget 제작 참고 자료 및 주의 사항
- 액티비티 - Activity life cycle, 백스택, singleTop
- AlertDialog, Snackbar, Toast / String resource
- Android Context 정리
- adb로 디버깅
- onClick in XML vs. onClickListener
- Android Permission 정리
- View와 layout Inflate. + ViewHolder // kotlinx
- 안드로이드 플랫폼의 구조 / ART
- 애플리케이션 기본 항목. 앱의 기본 동작 원리
- (Kotlin) 제네릭 - 변성(variance), 타입 프로젝션(type projection)
- (Kotlin) 제네릭 - 타입 파라미터 소거(erasure), inline 실체화(reified)
- (Kotlin) 컬렉션과 배열
- (Kotlin) 타입 시스템 (Any, Unit, Nothing)
- (Kotlin) Nullability 관련 연산자
- (Kotlin) 수신 객체 지정 람다 - with / apply / let / run / takeif / also
- (Kotlin) 함수형 인터페이스(SAM)에 람다 사용하기
- (Kotlin) stream API / 시퀀스(Sequence)
- (Kotlin) 람다(lambda), 변수 포획과 클로저, 멤버 참조
- (Kotlin) 싱글턴 object(static) - 객체 선언, 동반 객체, 객체 식 / 익명, 무명
- (Kotlin) delegate 키워드 - by
- (Kotlin/Java) data class
- (Kotlin) 프로퍼티, 커스텀 접근자, 지연 초기화
- (Kotlin) Class, 생성자
- (Kotlin) enum / when / sealed
- (Kotlin/Java) Inner Class / Nested Class
- (Regex) Kotlin
- (Kotlin) 확장 함수 / 확장 프로퍼티, 최상위 함수 / 최상위 프로퍼티
- 외장 메모리 쓰기 금지
- (Java) Stream API 노트
- (Java) lambda 기본 개념