(Spring) context.getBean() 으로 Bean 가져오는 패턴
class PointChangeController { private final ApplicationContext context; void method() { // common logic 1 PointChangeService pointChangeService = context.getBean( ...
class PointChangeController { private final ApplicationContext context; void method() { // common logic 1 PointChangeService pointChangeService = context.getBean( ...
포인트 읽기 - 포인트 차감 순으로 Mysql DB 작업이 발생하는 상황이었다. @Transactional public foo bar() { // SELECT MemberRestMileageInfo member = getMemberMileageByKey(memberKey); ... // UPDATE memberIn...
H2 세팅 build.gradle 설정 runtimeOnly 'com.h2database:h2' // runtimeOnly 'com.h2database:h2:1.4.193' 반드시 버전을 명시해줄 것. 버전 명시하지 않을 시 최신 버전이 설치되는데, 콘솔에서 connect해보면 자동으로 db 파일을 생성할 수 없어서 에러가...
ParameterizedTypeReference Response 받을 때, Generic 타입으로 매핑하여 받고 싶은 경우가 있다. // err! DefaultResponseWrapper<UserInfoResponse> userInfoResponseWrapper = restTemplate.postForObject( userInfo...
beanvalidation.org/2.0/spec/#builtinconstraints https://www.baeldung.com/javax-validation @Size, @Past, @Min(1) @Pattern 등 애너테이션이 어떤 제약조건을 가지고 있는지 확인하려면 그냥 애너테이션 소스 확인해보면 된다. 참고로 @Ema...
@Data https://projectlombok.org/features/Data @Data = RequiredArgsConstructor + ToString + EqualsAndHashCode + Getter + Setter lombok.noArgsConstructor.extraPrivate=true 이면 private ...
Date ? Calendar? java.time? 뭘 써야 하나? : LocalDateTime http://tcpschool.com/java/java_time_javaTime https://d2.naver.com/helloworld/645609 LocalDateTime -> String LocalDateTime.now().format(Da...
MVVM에서는, View를 가지고 있는 ViewHolder나, ViewHolder에 데이터를 넣어주는 Adapter나 둘 다 (V)로 분류한다. ViewHolder 데이터가 한 1만건 있다고 치면, 뷰를 1만개나 만드는건 화면에 다 보이지도 않고 비효율적이니까 View는 화면에 보일 정도로 조금만 만든 다음에 화면이 이동하면 View에 들어가는 Da...
MVVM에서의 가장 큰 특징은 옵저빙 이다. 리액티브 프로그래밍에서 말하는 옵저버 패턴과 같은 의미. View가 ViewModel이 가진 데이터를 옵저빙 하고 있다가 ViewModel의 데이터가 변경되면 자동으로 View도 갱신되는 방식 자동으로 View에 notify가 간다고 생각하면 된다....
이 그림 보면 바로 이해된다. 단, 그림에는 나와있지 않지만 libuv는 커널에서 NIO 지원하는 작업이라면 굳이 thread 쓰지 않는다. Node.js는 V8 엔진을 사용해 js -> binary로 바꿔주고, 이를 실행하는 “ 런타임 플랫폼 “ 이다. (자바의 JRE 처럼) 참고로 JS 엔진(V8)은 이런 일을 한다 node는 ...