inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

172만명의 커뮤니티!! 함께 토론해봐요.

외부 API 호출 적재 방법

미해결

죽음의 Spring Batch: 새벽 3시의 처절한 공포는 이제 끝이다.

외부 API를 호출해서 DB에 적재하는 배치를 구성을 하려고한다. 이때까지 문서 내용을 바탕으로는 Chunk가 아닌 Tasklet으로 해도 문제가 없다고 판단이든다. 하지만 공공 데이터 API를 1번 호출 할 때 10건씩만 데이터를 조회해야한다는 단점이있다. 평소에 하루에 1번 호출하겠지만 지난 3달의 데이터를 일단 적재를 해야한다. 이런 상황에서도 RepeatStatus.CONTINUABLE 이 아닌 while문으로 계속 호출하고 끝나면 RepeatStatus.FINISHED 로 반환해도 되는 지 궁금하다. 또한 외부API를 호출 할 때 PageNo도 명시를해줘야하는데 pageNo을 1씩 증가시키다가 특정 pageNo일때 오류가나면 해당 pageNo일때 부터 동작하도록 하려면 Jenkins의 매개변수 값을 설정해서 다시 batch를 돌리려고한다. 하지만 아래처럼 PAGE_NO을 정수로하고싶었는데 String으로 해야한다는 점이있어, 리스너에서 해당 매개변수를 Integer 또는 Long 타입으로 변경을 해야하는 과정을 추가해야 할 지 아니면 더 수월한 방법이 있는 지 궁금하다. 💀 [시스템 인텔리전스] 일반적으로 Tasklet에서 DB 트랜잭션 관리가 필요한 않은 경우가 많지는 않다. 모든 Tasklet이 데이터베이스 작업을 포함하는 것은 아니기 때문이다. 예를 들어, 파일을 정리하거나, 외부 API를 호출하거나, 단순한 알림을 보내는 작업이라면 DB트랜잭션을 고려할 필요가 없다. 그러므로 반복이 필요할 경우 작업의 성격을 잘 판단해서 while문으로 처리할지, RepeatStatus로 처리할지 현명하게 선택하라. 모든 반복을 RepeatStatus로 처리하는 것이 능사는 아니다.

  • java
  • spring
  • spring-boot
  • spring-batch
  • backend
ehddbs452100 댓글 3 좋아요 1 조회수 231

완벽한 프론트엔드

해결됨

[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스

안녕하세요. 저는 현재 고농축 프론트엔드와 백엔드 강의를 모두 수강 중 인데요, 최근에 ‘완벽한 프론트엔드’ 강의가 새로 생긴 걸 알게 됐습니다. 이미 고농축 강의를 수강 중인데도, 완벽한 프론트엔드 강의도 수강하는 게 도움이 될까요? 그리고 ‘고농축 프론트엔드’와 ‘완벽한 프론트엔드’의 가장 큰 차이점 이 궁금합니다. 혹시 고농축 강의를 수강한 사람 입장에서 완벽한 프론트에서 꼭 들어야 하는 파트가 있다면 추천도 부탁드립니다! 그리고 혹시 ‘완벽한 프론트엔드’ 강의에 대해 쿠폰을 받을 수 있는지도 문의드립니다.

  • react
  • node.js
  • seo
  • graphql
  • next.js
imhj11777 댓글 2 좋아요 0 조회수 160

프로메테우스에서 쿼리 카운터 검색이 안됨

해결됨

6주 완성! 백엔드 이력서 차별화 전략 4가지 - 똑같은 이력서 속에서 돋보이는 법

강의를 보고 제 프로젝트에도 적용할려고 그대로 따라 쳤음미다... 로컬에서는 이렇게 프로메테우스에서 검색이 됩니다. 그대로 ec2서버에서도 적용할려고 했는데 이렇게 검색이 되지 않습니다... 설정 차이라고는 로컬에서의 prometheus.yml ec2에서의 prometheus.yml(빨간줄은 무시) 프로메테우스랑 ec2서버랑 연결은 잘되는 거 같아요. executor_thread 같은 쓰레드들은 잘 가져옵니다. 하지만 제가 원하는 쿼리 집계 함수들은 로컬에서는 잘되고 ec2서버에서는 가져올 수가 없는데 뭐가 문제일까요...?

  • java
  • spring
  • mysql
  • redis
  • 이력서
kongminoo 댓글 2 좋아요 0 조회수 139

mise도 사용하시나요?

해결됨

토비의 클린 스프링 - 도메인 모델 패턴과 헥사고날 아키텍처 Part 1

안녕하세요, 토비님. 5강 개발 환경 구성(2)에서 sdk man을 소개해주셨는데요, 저는 처음 보는 서비스라 찾아보니 최근에는 편의성 등을 이유로 mise를 많이들 사용하는 것 같더라구요. 강의에서는 mise 대신 sdk man을 사용하신 이유가 궁금합니다, 아무래도 java만 다루는 강의다보니 sdk man을 선택하신 걸까요? 토비님께서도 실무나 개인적으로는 mise를 사용하시는지 혹은 다른 서비스를 사용하시는지도 궁금합니다.

  • java
  • spring
  • spring-boot
  • jpa
  • 리팩토링
  • ddd
대흉근 댓글 2 좋아요 3 조회수 207

`Objects.requireNonNull()`을 계속 사용하시는 이유가 궁금합니다.

미해결

토비의 클린 스프링 - 도메인 모델 패턴과 헥사고날 아키텍처 Part 1

15강에서 스프링의 @NonNull 지원 과 SpotBugs 를 통해서 null 안정성을 확보하신 내용을 봤습니다. 그런데 계속해서 Objects.requireNonNull() 을 사용하시는 것을 보고 의문이 들었습니다. 이미 Member 객체의 null 안정성은 확보된 것이 아닌가요? 굳이 Objects.requireNonNull() 을 계속 남기시는 이유를 생각해봤는데, 애노테이션+도구의 조합과 함께 코드적으로 null 안정성을 확보하고 싶으신 것으로 이해했습니다. (해당 도구가 사라져도 코드 수준의 안정성은 남아있기 때문에, 코드를 수정할 필요는 없어지니까요!) null 검증에 대해서만큼은 코드가 장황해지는 비용보다 추후의 변경에 대한 비용이 더 크다고 생각하시는 것 같은데, 제 이해가 맞을까요?

  • java
  • spring
  • spring-boot
  • jpa
  • 리팩토링
  • ddd
Dompoo 댓글 1 좋아요 3 조회수 318

질문입니다.

미해결

타입스크립트로 배우는 리액트(React.js) : 기초부터 최신 기술까지 완벽하게

강의에서 현업관련해서 interface 보다 type을 별도의 파일을 더 선호 한다고 하셨는데, interface보다 type이 선호되는 이유를 알고 싶습니다.

  • react
  • react-router
  • redux-toolkit
  • zustand
  • react.js
heuieun choi 댓글 2 좋아요 0 조회수 84

MemberRepositoryTest 중 Member table이 생성이 안됨

미해결

토비의 클린 스프링 - 도메인 모델 패턴과 헥사고날 아키텍처 Part 1

토비님 지금 강의 '엔티티 식별자와 JPA 엔티티' 섹션을 수강하던 중 MemberRepositoryTest에서 맴버 생성 테스트를 진행하는데 저는 Member 테이블이 생성이 안되어서 오류가 터지네요! [Table "MEMBER" not found (this database is empty) 토비님께서는 별 다른 설정 안하시고 해도 성공적으로 돌아갔는데 이유를 알 수 있을까요??

  • java
  • spring
  • spring-boot
  • jpa
  • 리팩토링
  • ddd
댓글 3 좋아요 0 조회수 159

9.1 이미지 최적화(13:36)에서 webp로 바뀌지 않습니다.

해결됨

한 입 크기로 잘라먹는 Next.js

https://github.com/kimyoda/Next.js15_-.git 해당 깃 주소입니다!! 13분전까지 모든 세팅과 설정을 바꿨는데도, 계속 위와 같이 작동합니다. book/[id]/page.ts import Image from "next/image"; <div className={style.cover_img_container} style={{ backgroundImage: `url('${coverImgUrl}')` }} > <Image src={coverImgUrl} width={80} height={105} alt={`도서 ${title}의 표지 이미지`} /> next.config.ts까지 강의와 똑같으나 위 화면처럼 계속 jpeg로 나오는데 도저히.. 이유를 못찾아서 문의드립니다!! import type { NextConfig } from "next"; const nextConfig: NextConfig = { /* config options here */ logging: { fetches: { fullUrl: true, }, }, images: { domains: ["shopping-phinf.pstatic.net"], }, }; export default nextConfig;

  • react
  • typescript
  • next.js
ssi02014 댓글 3 좋아요 0 조회수 173

세타조인은 실무에서

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

내부조인과 외부조인이 아닌, join절을 사용하지않고 where절을 사용하는 세타조인도 실무에서 사용하나요? 성능적으로 안좋을거같은데, 혹시 어느 경우에 사용하는것일까요?

  • java
  • jpa
오리쉐리 댓글 1 좋아요 0 조회수 104

문제상황에 대해서 이해가 안간다.

미해결

죽음의 Spring Batch: 새벽 3시의 처절한 공포는 이제 끝이다.

이전 청크의 ItemProcessor에서 엔티티를 수정한게 왜 문제인지 이해가 안간다. ItemProcessor에서 데이터를 수정하고 ItemWriter에서 DB에 flush를 할것 같은데 왜 다음 chunk에서 ItemReader에서 doReadPage()로 데이터를 읽는 시점에 의도치 않게 DB에 변경사항이 발생하는가?? 이미 앞선 데이터는 DB에 모두 반영되지 않았는가?? 이전 청크라는 상황이 이해 안된다. 이것이 왜 위험한가? 만약 이전 청크의 ItemProcessor에서 엔티티를 수정했다면? doReadPage()에서 데이터를 읽으려는 시점에 의도치 않게 DB에 변경사항이 반영될 수 있다. 이는 ItemReader의 책임 범위를 완전히 벗어난 동작이다. ItemReader는 데이터를 읽기만 해야 하는데, 실제로는 데이터 변경까지 일으킬 수 있는 것이다. 더 큰 문제는 이런 동작을 코드를 자세히 들여다보지 않으면 전혀 예상할 수 없다는 점이다.

  • java
  • spring
  • spring-boot
  • spring-batch
  • backend
ehddbs452100 댓글 3 좋아요 1 조회수 133

자바 버전이 31 까지 업데이트 된다면 새로운 자바 강의를 추가 하실 건가요?

해결됨

김영한의 실전 자바 - 고급 3편, 람다, 스트림, 함수형 프로그래밍

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요. 영한님 궁금증이 생겨서 질문을 드립니다. 만약의 경우이지만, 자바 버전이 31까지 업데이트가 된다면 새로운 기능(어떤 것들이 나올지 모르지만.)에 대해서 강의를 낼 생각이 있는지 궁금합니다. 답변 부탁 드립니다.

  • java
  • 함수형-프로그래밍
  • lambda
  • optional
생각하는자 댓글 1 좋아요 0 조회수 147

40:20초에 질문있습니다.

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

nodes[0] = Node(3)->v3,c[Node(5),Node(8)]로 갑자기 되는게 이해가 안됩니다... 질문은 동영상 강의에 들어가서 오른쪽에 커뮤니티 버튼을 통해 해주세요. 그래야 어떤 강좌에서 질문하셨는지 알 수 있습니다. 영상에서 몇 분 몇 초 대를 알려주셔야 제가 한 번에 질문 내용 확인이 가능합니다. 이미 다른 누군가가 질문을 한 이력 이 있을 수 있습니다. 질문 게시판을 한 번 확인 부탁드립니다. 학교의 과제나 타 강사의 코드 등 외부 수업 자료에 대해서는 답변하지 않습니다. 제가 다루는 커리큘럼 외의 이론이나, 너무 디테일한 컴퓨터 이론에 대해서는 답변 드리지 않습니다. 시험에 안 나오는 경우가 많고, 나와 봤자 1문제 나오는데 외워야 할 부분이 많은 것 등 (예시: 서브넷 마스크 계산) 질문을 올릴 때 이 글은 모두 지우고 내용을 입력해주세요.

  • python
  • java
  • c
  • 정보처리기사
이은비 댓글 2 좋아요 0 조회수 100

vscode 확장 vscode-stlyedcomponent 적용 안되는 오류

미해결

한 입 크기로 잘라먹는 Next.js

안녕하세요. 지금 Next.js강의중 글로벌 레이아웃강의를 듣고있는데 css를 자동완성해주는 styledcomponent가 적용이 안되서 문의드립니다. 구글링을 통해 vscode-styled component의 버전을 낮춰보기도하고 typescripts에 버전을 낮추니 next.js가 적용이 안되어서 다시 돌려놓긴했는데 여전히 적용이 안돼서 뭐가 문제인지 몰라서 질문드립니다. 혹시몰라 제가 설치한 모든 확장프로그램들을 보내드립니다.

  • react
  • typescript
  • next.js
hiiiiiiiii2696 댓글 2 좋아요 0 조회수 100

gitHub 레파지토리 보면

미해결

React 완벽 마스터: 기초 개념부터 린캔버스 프로젝트까지

왜 39강까지지만 push하구 그 이후 회차들은 push안했나요? 강의 수강회차별로 소스 싱크맞추어서 학습하면 도움이 많이 될텐데 강의별로 확인해셔서 소스 동기화 요청드립니다. 80강이면 80강 까자끝난 소스가 올라오면 되겠죠 ? 79강에서 80강 갔는데 ui가 바뀌어서 어떻게 환경을 잡아야할지 당황스럽습니다.

  • react
  • React-Context
  • react-router
  • tailwindcss
  • react-query
yoo 댓글 3 좋아요 -4 조회수 130

80강 수강중인데

미해결

React 완벽 마스터: 기초 개념부터 린캔버스 프로젝트까지

80강 3분 08초에서 > 3분 09초로 넘어갈때 메모UI로 어떻게 바뀐건가요? 강의교안에 수정해야 될게 있으면 추가해주세요 / 이런사소한것도 신경안쓰고 강의를 올리십니까 ? 리액을 익히는게 목적인데 환경 잡느라 시간 다 날립니다. 추가영상 촬영해서 올려주시고 교안도 수정해주세요

  • react
  • React-Context
  • react-router
  • tailwindcss
  • react-query
yoo 댓글 3 좋아요 -3 조회수 102

dirzzle-kit push error

미해결

Next.js 15로 완성하는 실전 YouTube 클론 개발

bunx drizzle-kit push 명령어 실행 시 이런 오류가 발생합니다. 어떻게 해결해야할까요?

  • react
  • postgresql
  • 클론코딩
  • next.js
  • tailwindcss
  • drizzle
임규리 댓글 2 좋아요 0 조회수 136

79 타이틀수정 강의중

미해결

React 완벽 마스터: 기초 개념부터 린캔버스 프로젝트까지

78 삭제 강의 이후 79 타이틀 수정 으로 넘어 갈떄 home.jsx UI가 바뀌는데 그거에 대해 설명이 없네요 . 강의교안에 home.jsx 파일 올려주시고 / 영상에도 home.jsx 변경 하는거 추가해서 촬영 부탁드립니다.

  • react
  • React-Context
  • react-router
  • tailwindcss
  • react-query
yoo 댓글 1 좋아요 0 조회수 53

임계값과 스레드수를 줄일 경우 교착상태가 발생할수 있는건가요?

해결됨

김영한의 실전 자바 - 고급 3편, 람다, 스트림, 함수형 프로그래밍

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 스레드를 조인하면 다른 스레드의 작업이 처리될때까지 기다려야한다고 배웠는데, 지금 예시에서는 스레드 수가 여유로워서 괜찮지만 만약 제목대로 임계값을 더 작게 하고, 스레드 수도 줄인다면 처리할 스레드의 수가 부족해져 데드락이 발생할 수도 있는 상황인지 궁금합니다

  • java
  • 함수형-프로그래밍
  • lambda
  • optional
안녕 댓글 2 좋아요 0 조회수 116

"Create-투두 추가하기" 강의에서 onKeyDown에 관련된 질문

해결됨

한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지

"Create-투두 추가하기" 강의 11분쯤에 나오는 엔터로도 버튼 실행하기에 관해 질문이 있습니다. onKeyDown 함수를 추가하기전엔 input박스에서 한버튼을 꾹 누르고있으면 연속해서 값이 입력 되었었는데, 강의와 같이 onKeyDown 함수를 추가하고 나면 한가지 키를 꾹 누르고 있어도 하나만 입력 됩니다. (ex. E버튼을 꾹 누르는 경우, "EEEEEEEEEEEEE" 이렇게 입력 되었었는데, onKeyDown을 추가하면 "E" 이렇게 하나만 입력됩니다.) 엔터로 버튼을 실행하면서 한가지 키를 꾹 눌러서 연속적으로 값도 입력할 수 있는 방법이 있는지 궁금합니다. 감사합니다.

  • javascript
  • react
  • node.js
댓글 2 좋아요 0 조회수 107

인기 태그

인프런 TOP Writers

주간 인기글