최신 글
-
AWS] Rekognition Streaming
aws rekognition create-stream-processor \ --name "video-stream-processor" \ --input '{"KinesisVideoStream":{"Arn":"arn:aws:kinesisvideo:ap-northeast-2:815665441543:stream/highbuff_video_analysis/1720156626729"}}' \ --stream-processor-output '{"KinesisDataStream":{"Arn":"arn:aws:kinesis:ap-northeast-2:815665441543:stream/video-data-stream"}}' \ --role-arn "arn:aws:iam::815665441543:role/rekognit..
-
파이썬] 키움증권 Open API OPT10079 주식차트조회
내용 키움증권 Open API를 이욯해서 틱 차트를 조회하는 로직을 알아보고 있었다 구글 검색 시 나오는 코드를 복붙 후 이용해서 종목 테스트를 진행하는 중에 뭔가 이상함을 발견했다 테스트 환경 윈도우 11 vscode & python 3 & anaconda 32bit 종목명 : 대한화섬 = "003830" 테스트 결과 파이썬 로직 : 25개 데이터 키움증권 Open API : 27개 데이터 2개의 데이터가 누락이 되서 나오고 있었다 처음에는 다량의 종목을 한번에 조회하고 있어서 데이터가 누락되는지 몰랐는데 거래량이 적은 종목으로 테스트를 해보니 확연히 알 수 있었다. 원인은 복붙한 코드 중 for문에서 체결시간을 가져와서 index로 사용하고 있는데 이 부분이 문제가 되는 것 같았다. 아래 코드는 정상..
-
JPA] QClass import 안되는 문제
환경 Mac M1 pro // OS Ventura 13.6 Intellij version Springboot 3.2 java 21 문제 클론 코딩 중 JPA Q class 생성 후 Import가 되지 않는 문제가 생겼습니다. 해결 시도 구글 검색 시 많은 방법이 나오는데 대부분 Intellij Project Structure 👉 Project Settings 👉 Modules 👉 Build 하위 generated 폴더를 Soures를 눌러서 잡는 방법이 많습니다. 하지만 저 같은 경우는 전혀 Import가 되지 않았습니다. 해결 과정 1) 디렉토리를 보면 알겠지만 QTodo라고 Q Class가 생성된게 보이긴 합니다만... 임포트가 되지 않습니다...?? 2) build.gradle 설정 def quer..
-
스프링 시큐리티] 구글 로그인 적용하면서 생긴 문제점 해결 과정
문제 1) access token을 발급 받아야하는데 계속 null값으로 나오는 문제를 발견 2) 설정한 로그인 페이지가 아닌 OAuth2 google 로그인 기본 페이지가 나오는 문제 발견 3) 1,2 문제를 해결 후 구글 로그인 성공 시 설정한 리다이렉션 경로대로 나오지 않는 문제 발견 해결과정 이상하다...? 토큰을 만들 때 제대로되고 있는데...? 뭐지...? 원인을 못 찾고 있었습니다... 다른 위치에서 소스를 수정해보고 디버그를 해보고했지만!! private String makeToken(Date expiry, User user) { // Date now = new Date(); // SecretKey key = Jwts.SIG.HS256.key().build(); // SecretKey ke..
-
스프링] Cache miss for REQUEST dispatch to '/' (previous null). Performing MatchableHandlerMapping lookup. This is logged once only at WARN level, and every time at TRACE.
스프링 3.2.0 으로 프로젝트를 진행하는 중에 아래와 같은 메시지 트레킹이 계속 되고 있어서 궁금해서 찾아봤다. 에러 메시지 Cache miss for REQUEST dispatch to '/login' (previous null). Performing MatchableHandlerMapping lookup. This is logged once only at WARN level, and every time at TRACE. 원인 스프링 3.2.0 고질병 해결 스프링 3.2.1 이상으로 업그레이드 하면 사라짐 github 이슈 트레킹 Spring Boot 3.2.0 Cache miss for REQUEST dispatch to '/actuator/health/readiness' · Issue #38587..
-
스프링시큐리티] 순환 참조 에러
스프링시큐리티를 적용하는 중에 아래와 같은 에러가 발생했다. 에러 메시지 *************************** APPLICATION FAILED TO START *************************** Description: The dependencies of some of the beans in the application context form a cycle: ┌─────┐ | webSecurityConfig defined in file [/Users/june/Repository/june/out/production/classes/toyblog/june/springbootdev/config/WebSecurityConfig.class] ↑ ↓ | userService defined ..
-
스프링시큐리티] http deprecated 리팩토링
OAuth2를 적용하는 중에 인텔리제이에서 deprecated 됐다는 경고가 떠서 급하게 코드를 수정해보았습니다 동작은 동일한 코드지만 문법에서 차이가 있지만 크게 변화된건 없으니 쉽게 변경할 수 있었습니다! 코드 변경 전 public SecurityFilterChain filterChain(HttpSecurity http) throws Exception { http.csrf().disable() .httpBasic().disable() .formLogin().disable() .logout().disable(); http.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS); http.addFilterBefore(token..
-
JAVA] DTO를 record로 이용해 만들어 봤다 feat. 사용후기
지금까지 간단한 토이프로젝트를 하면서 record를 사용해봤습니다. 간단한 후기를 남겨보겠습니다. 레코드를 활용한 DTO 디렉토리 에러 상황 record를 사용하는 컨트롤러 @GetMapping("/article") public String newArticle(@RequestParam(name="id", required = false) Long id, Model model) { if(id == null) { model.addAttribute("article", new ArticleViewResponse()); // ! 에러 발생 } else { Article findById = blogService.findById(id); model.addAttribute("article", new ArticleView..
-
스프링부트] 초기화 전 data.sql 실행되서 발생되는 에러
환경 Mac M1 pro // OS Ventura 13.6 Springboot 3.2 java 17 에러 Error creating bean with name 'dataSourceScriptDatabaseInitializer' defined in class path resource [org/springframework/boot/autoconfigure/sql/init/DataSourceInitializationConfiguration.class]: Failed to execute SQL script statement #1 of file 원인 및 해결 스프링부트가 첫 실행 시 디렉터리안에 data.sql이 먼저 실행되서 그렇다 application.yml 파일 수정 전 spring: datasource:..
-
자바] record를 써보자 feat. DTO
서론 최근(?) 자바 & 스프링의 업데이트로 인해서 기본적인 환경이 변화되고 있습니다. 스프링부트3.0가 되면서 자바의 기본버전도 17부터로 변경됐고 자바 17에서는 기존에 람다와 var와 같은 각종 추가된 새로운 기능도 추가됐습니다. 클론 코딩 및 토이 프로젝트를 진행하다 기본적인 DTO 생성 시 Class 에서 record로 변경을 해봤는데 기본적인 이해를 해보고 적용해본 후기를 적어보고자 합니다. 레코드의 문법 설명은 건너뛰겠습니다. 문법 참고 사이트 더보기 Java 14 Record Keyword | Baeldung Java 14 Record Keyword | Baeldung Explore the fundamentals of records, including their purpose, genera..