inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

이미지 변환

미해결

Next.js with Spring Boot

안녕하세요 이미지 가져올때 주소창에 http://localhost:8080/29c13610-d02f-41b2-b12d-b1a65ebbec7a_img3.webp 이렇게 하면 잘뜨는데 images폴더안에도 파일명 webp로 잘들어와있고요 근데 db에서 받아오면 fileName에 test1.webp로 29c13610-d02f-41b2-b12d-b1a65ebbec7a_img3.webp 이렇게 변환이 안됐는데 뭐가 문제인가요?

  • javascript
  • react
  • spring-boot
  • jpa
  • next.js
오일중 댓글 2 좋아요 0 조회수 101

투두 리스트 ui 작업 중에 material-tailwind가 리액트와 호환 문제가 있는지 리액트 19에서 18로 낮춰도 인풋과 아이콘 버튼 컴포넌트가 제대로 표시되지 않아요 ㅜㅜ

미해결

[풀스택 완성] Supabase로 웹사이트 3개 클론하기 (Next.js 14)

✅ 모든 질문들은 슬랙 채널에서 답변드리고 있습니다. 💡 ”로펀의 인프런 상담소” 슬랙 채널 가입하기 💡 평일중에는 퇴근 이후(저녁 7시)에 답변을 받아보실 수 있고, 주말중에는 상시 답변드리고 있습니다. 투두 리스트 ui 작업 중에 material-tailwind가 리액트와 호환 문제가 있는지 리액트 19에서 18로 낮춰도 인풋과 아이콘 버튼 컴포넌트가 제대로 표시되지 않아요 ㅜㅜ

  • firebase
  • next.js
  • tailwindcss
  • react-query
  • supabase
이재웅 댓글 1 좋아요 0 조회수 104

성능 개선에 대한 부분을 작성할 때 궁금한 점이 있습니다.

미해결

포트폴리오 어나더레벨 | 합격하는 이력서 작성법

안녕하세요 큰돌님! 항상 유튜브 잘 보고 있습니다. 저는 백엔드 개발자로 취업을 준비하고 있고, 현재 이력서와 포트폴리오를 만들기 위해 강의도 듣고 제 경험을 정리하고 있습니다. 본 강의와 큰돌님의 유튜브에서 항상 성능 개선을 수치적으로 표현 하라고 말씀하시는 것을 많이 들었습니다. 여기서 성능 개선에 있어서 제가 프로젝트를 할 때, 제 지식의 부족함으로 인해 성능이 안좋았던걸 개선한거에 대해서는 어떻게 적으면 좋을지 궁금합니다. 실제로, 웹에서 SSH 접속을 위한 프로젝트를 하면서 초기 SSH 접속을 할 때, sleep(500), 쉘에서 실행할 명령어를 송수신 하는 while문에서 sleep(10)을 설정 했었습니다. Java의 InputStream으로 입력값을 받도록 하였는데 개발 당시에는 안정적인 송수신을 위해서 sleep을 추가했는데, 리팩토링을 하는 과정에서 InputStream이 Blocking I/O의 특성으로 인해 불필요하다는 것을 알게 되었습니다. 이런 부분도 성능 개선 작업으로 적어도 되는지 궁금하고, 특히 면접에서 제 부족함?을 직접적으로 표현하지 않고 어떻게 말해야할지도 궁금합니다. 질문이 최대한 간략하게 적으려고 하다보니 두서없네요 ㅠㅠ. 감사합니다!

  • HTML/CSS
  • javascript
  • python
  • java
  • 포트폴리오
akdlzhf2008 댓글 1 좋아요 0 조회수 119

병렬 중첩

미해결

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

형 병렬 중첩 시키는 예제 코드있잖아. Worker Step Multithreading Implementation @Bean public Step managerStep(Step workerStep) { return new StepBuilder("managerStep", jobRepository) .partitioner("workerStep", dailyTimeRangePartitioner) .step(workerStep) .taskExecutor(partitionTaskExecutor()) .gridSize(4) .build(); } @Bean public Step workerStep(SynchronizedItemReader<TestLog> redisLogReader, ItemProcessor<TestLog, TestLog> logProcessor, MongoItemWriter<TestLog> mongoLogWriter) { return new StepBuilder("workerStep", jobRepository) .<TestLog, TestLog>chunk(500, transactionManager) .reader(redisLogReader) .processor(logProcessor) .writer(mongoLogWriter) .taskExecutor(workerTaskExecutor()) .build(); } @Bean @StepScope public SynchronizedItemReader<TestLog> redisLogReader(@Value("#{stepExecutionContext['startDateTime']}") LocalDateTime startDateTime) { log.info("{} read {}", Thread.currentThread().getName(), startDateTime.format(DateTimeFormatter.ofPattern("yyyyMMddHH"))); RedisItemReader<String, TestLog> itemReader = new RedisItemReaderBuilder<String, TestLog>() .redisTemplate(redisTemplate()) .scanOptions(ScanOptions.scanOptions() .match("logs:" + startDateTime.format(DateTimeFormatter.ofPattern("yyyyMMddHH")) + ":*") .count(10000) .build()) .build(); return new SynchronizedItemReader<>(itemReader); } @Bean public TaskExecutor workerTaskExecutor() { ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor(); executor.setCorePoolSize(5); executor.setMaxPoolSize(5); executor.setWaitForTasksToCompleteOnShutdown(true); executor.setAwaitTerminationSeconds(10); executor.setThreadNamePrefix("Worker-Thread-"); executor.setAllowCoreThreadTimeOut(true); executor.setKeepAliveSeconds(30); return executor; } 이렇게 했는데 2025-12-17T13:34:07.885+09:00 ERROR 1568 --- [ main] o.s.batch.core.step.AbstractStep : Encountered an error executing step workerStep in job testLogJob java.lang.NullPointerException: Cannot invoke "org.springframework.data.redis.core.Cursor.hasNext()" because "this.cursor" is null at org.springframework.batch.item.redis.RedisItemReader.read(RedisItemReader.java:62) ~[spring-batch-infrastructure-5.2.4.jar:5.2.4] 이런 오류가 나. 그리고 ItemReader쪽에 log.info("{} read {}", Thread.currentThread().getName(), startDateTime.format(DateTimeFormatter.ofPattern("yyyyMMddHH"))); 로그를 찍었는데 Worker-Thread-5 read 2025121712 Worker-Thread-1 read 2025121706 Worker-Thread-2 read 2025121700 Worker-Thread-3 read 2025121718 이런식으로 찍히고 있어. 하나의 파티션을 여러 스레드가 읽어야 하는데 workerTaskExecutor가 서로 다른 파티션을 읽고 있어. 내가 뭐 놓친게 있는걸까?

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

article_like_count api test

해결됨

스프링부트로 직접 만들면서 배우는 대규모 시스템 설계 - 게시판

동시성 이슈가 안터질 수도 있나요?

  • java
  • mysql
  • spring-boot
  • kafka
  • redis
댓글 2 좋아요 0 조회수 102

Pro 요금제 토큰(사용량) 차감 룰 ??

미해결

클로드 코드 완벽 마스터: AI 개발 워크플로우 기초부터 실전까지

제가 /usage를 쳐보니 Settings: Status Config Usage (tab to cycle) Current session ▌ 1% used Resets 3:59pm (Asia/Seoul) Current week (all models) █ 2% used Resets Dec 23, 4:59pm (Asia/Seoul) Extra usage Extra usage not enabled • /extra-usage to enable 이렇게 나오더라구요. Current Session은 5시간 단위 Current week는 1주 단위 인 듯 한데요. 세션 기준과 위크 기준을 꽉꽉채워 계속 쓸 수 있는 건지, 총액이 정해져 있는 건지 모르겠어요. pro와 max 차이는 각 세션과 위크마다 사용량이 다른건지.. 사용량에 대한 정확한 이해가 없으니 질문도 뭉툭합니다. 그리고 실습에도 소극적이게 되네요.

  • react
  • next.js
  • cursor
  • tailwindcss
  • claude
딱 좋아 댓글 2 좋아요 0 조회수 262

수업을 잘 듣고 있습니다.

미해결

토비의 스프링 6 - 이해와 원리

혹시 지금 강의하시는 내용 중애 notion의 내용을 받아 볼 수는 없을까 해서요.

  • java
  • spring
임정훈 댓글 2 좋아요 0 조회수 129

슈퍼 클로드 코드 강의도 예정되어 있나요?

미해결

클로드 코드 완벽 마스터: AI 개발 워크플로우 기초부터 실전까지

클로드 코드 관련해서 ‘슈퍼 클로드 코드’라는 것도 있는 것 같은데, 이와 관련된 강의를 만드실 계획은 없으신가요?

  • react
  • next.js
  • cursor
  • tailwindcss
  • claude
멍텅구리 댓글 1 좋아요 0 조회수 218

이벤트 페이로드 객체의 생성 방식이 팩토리 메서드 패턴이 아닌 빌더 패턴인 이유가 궁금합니다!.

해결됨

스프링부트로 직접 만들면서 배우는 대규모 시스템 설계 - 게시판

안녕하세요, 강사님 덕분에 많은 인사이트를 얻으며 성장중인 수강생입니다ㅎㅎ 다름이 아니라 이벤트 페이로드 타입의 생성 방식이 팩토리 메서드 패턴이 아닌 빌더 패턴인 이유가 궁금합니다! 빌더 패턴의 장점은 생성자 오버로딩이 많을 때, 간편하게 사용할 수 있다는 장점이 있지만 필수인 필드에 null 이 들어갈 수 있다는 단점이 있다고 생각합니다. 그래서, 저는 빌더 패턴을 해당 객체의 필드 중 null 이 들어갈 수 있는 필드가 많을 때 사용하는 걸 선호하다 보니, 이벤트 페이로드 타입을 생성 할 때 일부 필드에 null 이 들어가는 걸까? 란 궁금증으로 질문이 생기게 되었습니다. 빌더 패턴에 대한 강사님의 의견이 궁금하며 이벤트에 기존에 사용하신 팩토리 메서드 대신 빌더 패턴을 사용하신 계기가 궁금합니다! 감사합니다 :)

  • java
  • mysql
  • spring-boot
  • kafka
  • redis
종혁 댓글 2 좋아요 0 조회수 116

실행이 안되네요

미해결

실전! 코틀린과 스프링 부트로 도서관리 애플리케이션 개발하기 (Java 프로젝트 리팩토링)

Execution failed for task ':compileKotlin'. > Error while evaluating property 'filteredArgumentsMap' of task ':compileKotlin' > Could not resolve all files for configuration ':compileClasspath'. > Could not find org.jetbrains.kotlin:stdlib-jdk8:1.6.21. Required by: project : Possible solution: - Declare repository providing the artifact, see the documentation at https://docs.gradle.org/current/userguide/declaring_repositories.html 위와 같은 에러가 뜨는데 아래 잘 바꿨거든요? plugins { id 'org.springframework.boot' version '2.7.6' id 'io.spring.dependency-management' version '1.0.12.RELEASE' id 'java' id 'org.jetbrains.kotlin.jvm' version '1.6.21' } group = 'com.example' version = '0.0.1-SNAPSHOT' sourceCompatibility = '11' repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-web' implementation 'org.jetbrains.kotlin:stdlib-jdk8' runtimeOnly 'com.h2database:h2' testImplementation 'org.springframework.boot:spring-boot-starter-test' } tasks.named('test') { useJUnitPlatform() } compileKotlin{ kotlinOptions{ jvmTarget="11" } } compileTestKotlin{ kotlinOptions{ jvmTarget="11" } } 왜안될까요

  • java
  • spring
  • kotlin
  • spring-boot
  • 리팩터링
김성관 댓글 2 좋아요 0 조회수 107

pdf 표현 질문드립니다.

미해결

실전! 스프링 데이터 JPA

pdf 6페이지에 org.springframework.data.repository.Repository 를 구현한 클래스는 스캔 대상 이라고 나와있는데요 이 표현에 대해 궁금합니다. 저는 JpaRepository 뿐만 아니라 Repository 인터페이스를 상속한 인터페이스는 스캔 대상이 되어 구현체가 생성되는 것으로 강의를 이해했는데요. Repository 를 구현한 클래스 가 스캔 대상이라고 하니 정말 Repository나 JpaRepository를 구현한 클래스가 스캔 대상이 되는 제가 이해하지 못한 부분이 있는 것인지 단순 표현이 잘못된 것인지 궁금합니다. 저는 상속한 클래스가 스캔 대상 일거라고 생각을 했습니다..

  • java
  • spring
  • spring-boot
  • jpa
yoon6669 댓글 1 좋아요 0 조회수 88

195개 실제 기출 문제 분석은 어디있을까요?

미해결

2026 코딩테스트 올인원 [JAVA]

2026 최신 코딩테스트 자바, 195개 실제 기출 문제 분석 제목을 보고 이거다 싶어서 구매했어요. 강의의 제목과 강의에 대한 설명들을 볼때 195개에 대해 기출문제에 대해서 분석해주는 것처럼 보입니다. 실제로 본문 노션화면에서도 195개에 대해서 분석 한 것을 보여주는 것처럼 보여요. 초장에는 개념설명이기에 후에 195개에대해서 분석해주시는줄알았어요. 허나 자료에도, 강의에도 실제 기출 195개에 대한 분석 정보는 전혀 찾아볼수없습니다. 확인할 곳 이 있으면 알려주시면 좋겠고, 만약 아니라면 제목과 본문에서 해당 정보는 오해해 소지가 있어보입니다. 실제 기출 195개에 대한 분석이 없다면 환불요청하고싶어요.

  • java
  • 코딩-테스트
  • 알고리즘
  • data-structure
화요 댓글 2 좋아요 0 조회수 131

프론트 영역 보는법

미해결

실전! 코틀린과 스프링 부트로 도서관리 애플리케이션 개발하기 (Java 프로젝트 리팩토링)

안녕하세요 이거 프론트 부분은 다 해서 주시는데 프론트 영역은 어떻게 보는지 알 수 있을까요?

  • java
  • spring
  • kotlin
  • spring-boot
  • 리팩터링
김성관 댓글 2 좋아요 0 조회수 92

좌표 정렬 문제 이 코드가 왜 틀린지 모르겠습니다 ㅠㅠ

미해결

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

package C06_07; import java.util.*; public class Main { public int[][] solution(int n, int[][] arr){ Arrays.sort(arr, new Comparator<int[]>(){ public int compare(int[] s1, int[] s2){ if (s1[0] == s2[0]){ return s1[1] - s2[1]; } else return s1[0] - s2[0]; } }); return arr; } public static void main(String[] args){ Main T = new Main(); Scanner scan = new Scanner(System.in); int n = scan.nextInt(); int[][] arr = new int[n][2]; for (int i = 0; i < n; i++){ for (int j = 0; j < 2; j++){ arr[i][j] = scan.nextInt(); } } for (int[] x : T.solution(n, arr)){ for (int y : x) System.out.print(y + " "); System.out.println(); } } } 이렇게 진행을 하였는데 계속 오답이 나옵니다 왜 틀린 걸까요..? 테스트 케이스도 맞는데 왜 틀린지 모르겠습니다 ㅠㅠ

  • java
  • 코딩-테스트
whitecy01 댓글 2 좋아요 0 조회수 113

이 강의 학습 자료는 어디에서 받을 수 있나요?

미해결

실전 AI SaaS 풀스택 개발: 화상채팅 앱 만들기

학습 안내에는 아래와 같이 되어 있는데, 이제 강의를 몇 개 안들어서 못찾는것 같기도합니다. 강의 파일 어디에서 받을 수 있는지 알려주세요. 😃 수강 전 확인해주세요! 📢 이 강의는 Code with Antonio 유튜브 채널에도 공개되어 있지만, 실제로 클론코딩을 완성하려면 유료 학습자료가 꼭 필요합니다. (전체 코드베이스, 설정 파일, 구조화된 컴포넌트 포함) 💬 오직, 인프런 강의에서만 제공됩니다! 13시간의 긴 영상을 체계적인 커리큘럼으로 나누었습니다. 원하는 부분을 빠르게 찾아 학습하고 언제든 편하게 복습할 수 있어요. 영어가 낯설어도 걱정 마세요! 한국어 더빙이 제공돼서 편하게 들을 수 있어요. 배운 내용, 그냥 넘기지 마세요 🙂 중간중간 AI 퀴즈로 재미있게 복습해볼 수 있어요!

  • react
  • next.js
  • tailwindcss
  • saas
  • ai-agent
bj 댓글 1 좋아요 0 조회수 107

sonnet 4.0, 4.5에서 실행이 안됩니다

미해결

비전공자도 가능한 초간단 단톡방 만들기 (바이브코딩, Cursor AI)

초보개발자 입니다. 지금 sonnet 3.5가 없어서 4.0~4.5 설정해서 프롬프트 올리는데 에러가 난건지 반응이 없습니다. 제미나이로 하면 실행이 되는데 예제를 따라 할 수가 없네요

  • firebase
  • next.js
  • vercel
  • cursorai
  • 바이브코딩
이충현(Two L.J.Y) 댓글 1 좋아요 0 조회수 98

[33. 좋아요 수 구현] 에서 테스트 하는 화면 동시성 문제

해결됨

스프링부트로 직접 만들면서 배우는 대규모 시스템 설계 - 게시판

학습 관련 질문을 최대한 상세히 남겨주세요! 고민 과정도 같이 나열해주셔도 좋습니다. 먼저 유사한 질문이 있었는지 검색해보세요. 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. [33. 좋아요 수 구현] 에서 테스트 하는 화면에서요. 해당 방법대로 실행을 하면 동시성 문제가 발생합니다. Record has changed since last read in table 'article_like_count' 저는 MariaDB를 사용하고 있는데요. MySQL도 마찬가지로 기본 잠금 수준이 Repeatable Read 라고 알고 있습니다. 해당 기본 수준으로 실행하면 동시성 문제로 영상과 다른 결과를 보이게 됩니다. 따라서 잠금 수준을 Read Commited 나 Read Uncommited 로 변경하면 제대로 실행이 됩니다. 이렇게 하는 것이 정답인지 아니면 다른 원인이 있는건지 알려주세요.

  • java
  • mysql
  • spring-boot
  • kafka
  • redis
주주파파 댓글 2 좋아요 0 조회수 109

강의 들으면서 궁금한 부분 질문드립니다.

미해결

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

여기에 질문드리면 되는걸까요? 아니면 다른 곳에 따로 질문드리는걸까요? 질문 1. 꼭 하나의 폴더를 먼저 만들어서 열어준 다음 'npx create-next-app@14 프로젝트 이름' 이렇게 폴더 내에 폴더를 만들어서 새로 만든 폴더를 열어서 작업해야 하나요? 아니면 그냥 vs code켜서 'npx create-next-app@14 프로젝트 이름' 바로 쳐서 그 프로젝트에서 바로 시작하면 되나요? 질문 2. 꼭 const router, const {q}로 해야 하나요?, 그 이유도 궁금합니다. 방금 let으로 {q} 선언하니까 오류가 발생했어서 질문드립니다. 질문 3. [[...id]].tsx 에러를 방지하기 위해 기본적으로 대괄호 두번 쓰는게 일반적인가요? 질문 4. search안에 index.tsx라고 파일명을 지었는데, 일반적으로 pages 폴더 하위 폴더를 만들면 그 안에는 무조건 index.tsx라고 파일명을 설정하나요? 그리고 쿼리 파라미터를 받는 동적 url인 경우에만 해당 쿼리 파라미터 이름을 대괄호 안에 적는건가요? 그리고 다중으로 쿼리 파라미터 설정을 할 것을 대비해서 일반적으로 ... 설정을 하는지도 궁금합니다. 질문 5. 404페이지는 보통 이미지로 많이 설정하는데 그럼 export default하고 그 안에 이미지 url을 불러오는건가요? 이미지는 어느 폴더에 보관하는건지 궁금합니다. 질문 6. export default function Page() {}에서 Page는 Pages 안에 들어있는 Page니까 관용적으로 Page를 사용하는건가요? 질문 7. 보통 export default 이렇게 다 작성하는지 아님 자동완성 템플릿을 설정해놓고 사용하는지도 궁금합니다.

  • next.js
감자깡 댓글 1 좋아요 0 조회수 142

전체적으로 프롬프트로 나온 결과값이 너무 달라요.

해결됨

[VOD] 6주 완성! 개발 실무를 위한 고농축 바이브코딩 (Cursor AI, Figma)

전체적으로 프롬프트로 나온 결과값이 너무 달라서 그냥 우선 강의를 듣고 잇긴한데 cursor 버젼때문인지.. Sonnet버젼 4로 시도했는데 실행이 안되서 auto로 그냥 자동 AI툴 돌려서 했더니 강사님이랑 결과값이 너무 품질이 떨어지는 결과가 나오고. pro로 업그레이드 해야 할지.. 이게 씽크가 어느정도 맞아야 진도를 맞출거 같은데 말이죠. 어떻게 해야 하나요??

  • react
  • next.js
  • cursor
  • 프롬프트엔지니어링
  • 바이브코딩
saladac 댓글 2 좋아요 0 조회수 144

연관관계 매핑 질문드립니다.

미해결

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

강의 13:30분 부터 설명하시는 부분에 대한 질문입니다. 해당 부분은 Member의 팀 값을 변경했을때 DB의 Member의 외래키(TEAM_ID)가 변경되어야하는지, Team의 멤버들을 업데이트 했을 때 외래키 값이 업데이트 돼야하는지에 대한 내용인데요. 전자는 코드상으로 member.setTeam(team)이 될것이고 후자는 team.getMembers().addMember(member)가 될텐데요. 전자는 이전 강의인 단방향 연관관계에서도 봤듯이 해당 코드를 진행하면 DB Member의 외래키 업데이트가 자동적으로 이루어 지는 것으로 이해하고 있습니다 후자는 후자의 코드를 진행해도 FK 업데이트가 이루어 지지 않는 것으로 알고 있습니다.(Team에는 외래키가 없는 것이 원인으로 알고있습니다.) 그래서 영상에서 말씀하신 둘중 무엇으로 외래키를 업데이트 해야하냐 같은 딜레마라고 언급하신 것이 이해가 잘 되질 않습니다. 어차피 후자의 코드자체가 외래키가 업데이트 되지 않는 코드인데 강의에서 언급하신 전자, 후자 중 어느 것으로 업데이트 해야 하는지에 대한 딜레마가 나온 이유를 모르겠습니다. 이부분을 어떻게 이해하여야할까요?

  • java
  • jpa
yoon6669 댓글 2 좋아요 0 조회수 118

인기 태그

인프런 TOP Writers

주간 인기글