inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

GlobalException 클래스 설정 관련 문의

미해결

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요. 영한님 강의를 듣고 한 가지 궁금한 점이 있습니다. 강의에서 "보다 디테일한 예외가 잡힌다"고 설명해주셨는데, 혹시 @Order(0) 설정을 하지 않으면 GlobalExceptionHandler 에서만 예외가 처리가 잡히는데요, 즉, 예외 처리 클래스를 여러 개로 분리했다면 @Order 를 지정하지 않으면 세부 예외 처리 핸들러가 아닌 글로벌 핸들러로만 잡히는 이유가 클래스 분리 때문인지 궁금합니다. @RestControllerAdvice @Order(0) public class BoardExceptionHandler { /** * 게시판을 찾을 수 없을 때 발생하는 예외 처리 */ @ExceptionHandler(BoardNotFoundException.class) public ResponseEntity<ErrorResponse> handleBoardNotFound(BoardNotFoundException ex) { ErrorResponse response = ErrorResponse.builder() .code("BOARD_NOT_FOUND") .message(ex.getMessage()) .status(HttpStatus.NOT_FOUND.value()) .timestamp(LocalDateTime.now()) .details(Collections.singletonList("게시판 ID를 확인해주세요.")) .build(); return ResponseEntity.status(HttpStatus.NOT_FOUND).body(response); } /** * 게시판 수정 / 삭제 권한이 없을 때 발생하는 예외 처리 */ @ExceptionHandler(BoardPermissionDeniedException.class) public ResponseEntity<ErrorResponse> handleBoardPermissionDenied(BoardPermissionDeniedException ex) { ErrorResponse response = ErrorResponse.builder() .code("BOARD_PERMISSION_DENIED") .message(ex.getMessage()) .status(HttpStatus.FORBIDDEN.value()) .timestamp(LocalDateTime.now()) .details(Collections.singletonList("해당 게시글에 대한 권한을 확인해주세요.")) .build(); return ResponseEntity.status(HttpStatus.FORBIDDEN).body(response); } } @RestControllerAdvice public class GlobalExceptionHandler { /** * 글로벌 예외 처리 */ @ExceptionHandler(Exception.class) public ResponseEntity<ErrorResponse> handleGenericException(Exception ex) { ErrorResponse response = ErrorResponse.builder() .code("INTERNAL_SERVER_ERROR") .message("서버에서 오류가 발생했습니다.") .status(HttpStatus.INTERNAL_SERVER_ERROR.value()) .timestamp(LocalDateTime.now()) .details(Collections.singletonList(ex.getClass().getName())) .build(); return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(response); } }

  • spring
  • mvc
갈색곰 댓글 2 좋아요 0 조회수 102

[리뷰] 중급2편까지 겨우 완강 했습니다.

미해결

김영한의 실전 자바 - 중급 2편

직장을 다니면서 틈틈히 1일 10분이라도 강의 듣고 코딩 연습을 할려고 노력하다 보니 완강이 되었습니다. 고급편과 스프링 입문도 같이 하면서 백엔드 개발도 할 수 있는 시간을 기대합니다. 자료구조는 좀 재미(?)가 없었지만 나중에 필요한 내용이므로 잊어버리지 않고 기억하도록 하겠습니다. 좋은 강의 감사합니다.

  • java
  • 객체지향
  • 코딩-테스트
  • 알고리즘
  • 리뷰
chrischoi 댓글 2 좋아요 0 조회수 144

윈도우 -> 맥 파일 옮기기 / 실행

해결됨

[코드캠프] 부트캠프에서 만든 '완벽한' 프론트엔드 코스

안녕하세요! 지금까지 수업을 윈도우 노트북으로 듣고 있었습니다. 그런데 노트북에 문제가 생겨 새로운 노트북으로 구매 후 파일을 옮기려고 하는데 이번에 구매한 노트북 운영체제 맥os입니다. 간편하게 옮기고 빠르게 실행 할 수 있는 방법이 있을까요?? 일단 node, npm, yarn까지 다운 받은 상태 입니다.

  • react
  • react-native
  • 하이브리드-앱
  • graphql
  • next.js
skykwj0422 댓글 1 좋아요 0 조회수 157

th:block th:each의다른 예가 없는지 궁금합니다.(지금의 예로는 사용하는 이유를 모르겠습니다.)

해결됨

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요. th:block이라는 태그를 통해 하는 것을 보았습니다. 근데 들으면서 이렇게 하면 th:block 없어도 될 것 같다는 생각이 들어서, 코드를 고쳐서 해보았습니다. 이렇게 코드를 넣어봤고, 결과는 사진과 같이 똑같이 나왔습니다.(하나 추가 한게 무슨 이유인지 모르겠지만, 사용자 나이 밑에 br태그없이 span을 쓰면 붙여서 나와서 br태그를 씀) 그래서 솔직히 th:block 태그 보다는 div에 th를 넣고 아래에 방법 처 할것 같은데. th:block의 다른 예가 없는지 궁금합니다. 답변 부탁 드립니다.

  • spring
  • mvc
생각하는자 댓글 1 좋아요 0 조회수 81

커서 유료버전 써야하나요?

미해결

제로베이스부터 배우는 웹개발의 개념과 바이브 코딩

현재 2주 free같은데 claude3.5 3.7 4 등등 모든 버전에서 코드짜는게 안되고 Anthropic's latest models are currently only available to paid users. Please upgrade to a paid plan to use these models. (Request ID: aec9ae0d-5eb4-4514-a54e-478383ef2f0a) 라고 뜹니다. Free users can only use GPT 4.1 or Auto as premium models (Request ID: 849c6230-8e63-4751-9b03-9def2bab9e86) 라고 뜰 때도 있고요

  • react
  • 웹앱
  • next.js
  • cursor
  • 인공지능(ai)
ㄹㄹㄹ 댓글 2 좋아요 0 조회수 1385

전략적 침투: Spring Boot Application 실행에대해서

미해결

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

./gradlew bootRun --args= '-- spring.batch.job.name =systemTerminationSimulationJob' 위에 코드로 터미널에서 실행하는데 System.out.println로 출력해둔 건 나오지않고 스프링부트 로그만 뜨고 끝나버리더군요 AI에게 물어봤더니 그럴경우 강제적으로 하는방법이 있다고해서 ApplicationRunner를 주입시켜서 해봤는데 또 잘나옵니다. ApplicationRunner를 계속 둘수도 없는거라 ApplicationRunner없이 안나오는경우에는 어떠한 설정문제일까요? 일단 AI가 해보라는데로 다해봤지만 실패했습니다.

  • java
  • spring
  • spring-boot
  • spring-batch
  • backend
ultimates 댓글 2 좋아요 2 조회수 311

각파일들의 디렉토리 위치가 없는데 임의적으로 해야하나요?

미해결

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

각파일들의 디렉토리 위치가 없는데 임의적으로 해야하나요? 예를들어 BatchConfig 파일을 어디에 생성해야하는지 안보이는거 같아요

  • java
  • spring
  • spring-boot
  • spring-batch
  • backend
ultimates 댓글 2 좋아요 1 조회수 157

400번대 에러 응답이 모두 404.html로 됩니다.

미해결

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 1. resources/templates/error/4xx.html 만 존재할 때 localhost:8080/error-404 -> 4xx.html 응답 localhost:8080/error-400 -> 4xx.html 응답 resources/templates/error/4xx.html, resources/templates/error/404.html 이 모두 존재할 때 localhost:8080/error-404 -> 404.html 응답 localhost:8080/error-400 -> 404.html 응답 -> 여기서 4xx.html이 응답해야하는거 아닌가요? 파일 경로에는 문제가 없는데 페이지 소스를 봐도 404.html이 맞습니다.

  • spring
  • mvc
댓글 2 좋아요 0 조회수 179

21강 생성자에서 의존성 주입과 관련하여 질문 있습니다.

해결됨

자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]

생성자에서 필드에 의존성 주입하면 예를 들어 컨트롤러 생성자를 만들때 서비스 필드에 의존성 주입해주면 그때는 @Autowired가 자동으로 존재한다고 했는데 이 @Autowired 는 생성자의 파라미터를 전부 빈으로 등록시켜주는건가요? 만약 그렇다고 한다면 생성자의 파라미터가 객체가 아닌 경우는 어떻게 되는건가요? 혹시 객체 타입 파라미터만 빈으로 등록시켜주고 객체가 아닌 파라미터는 빈으로 등록시켜주지 않나요?

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
커디널스 댓글 2 좋아요 0 조회수 62

일부 영상들에 스크립트가 누락되었어요 ㅠㅠ

해결됨

카카오 면접관이 알려주며 가장 쉽게 배우는 Kafka

강사님 안녕하세요! 스크립트가 2분부터 약 10분간 누락되었네요 ㅠ 이번 영상 말고도 다른 영상들에도 누락된게 있는 것 같아요. 개인적으로 영상을 2번 시청하는데 두번째는 스크립트로 보면서 하는 편이라 인프런 측에 요청 부탁드려도 될까요?

  • java
  • spring
  • kotlin
  • spring-boot
  • kafka
soap 댓글 1 좋아요 1 조회수 117

섹션2 -타임리프 기능 : 14.반복(html: border 부분 수정 해야 할까요? 아니면 계속 써야 할까요?)

해결됨

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/ 아니오 ) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요. 궁금증이 생겨서 질문을 드립니다. 반복 강의에서 each.html 을 복사하고 붙여놓기를 하였는데요. <table border="1"> 이 부분에서 border부분이 흰색 취소선 칠해져 있다는것 을 발견하였습니다. 그래도 뭐 일단 돌려보기는 하였는데 잘나오는데. 뭔가 찜찜해서.. 그 보더에 마우스를 대보니 사진 처럼 이런 글이 나와서 구글에 이 나오는 글을 복사하고 해보았더니 이렇게 사진처럼(80%로 측소) 나왔는데 사진에 나오는 글처럼 <table style="border: 2px solid black;"> 이렇게 바꾸는게 나을까요? 아니면 그냥 계속 <table border="1"> 이런 방식으로 써야 할까요? w3schools도 살펴 봤지만 전체 적용 하는 것들만 있어서 모르겠네요. 답변 부탁 드립니다.

  • spring
  • mvc
생각하는자 댓글 1 좋아요 0 조회수 45

Run As Intellij 로 변경시 Q타입 import 불가

미해결

실전! Querydsl

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 아니오 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] [SpringBoot 3.x] ```java plugins { id 'java' id 'org.springframework.boot' version '3.5.4' id 'io.spring.dependency-management' version '1.1.7' } group = 'study' version = '0.0.1-SNAPSHOT' java { toolchain { languageVersion = JavaLanguageVersion.of(21) } } configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-web' implementation 'com.github.gavlyukovskiy:p6spy-spring-boot-starter:1.9.0' runtimeOnly 'com.h2database:h2' compileOnly 'org.projectlombok:lombok' annotationProcessor 'org.projectlombok:lombok' testImplementation 'org.springframework.boot:spring-boot-starter-test' testCompileOnly 'org.projectlombok:lombok' testAnnotationProcessor 'org.projectlombok:lombok' //Querydsl 추가 implementation 'com.querydsl:querydsl-jpa:5.0.0:jakarta' annotationProcessor "com.querydsl:querydsl-apt:${dependencyManagement.importedProperties['querydsl.version']}:jakarta" annotationProcessor "jakarta.annotation:jakarta.annotation-api" annotationProcessor "jakarta.persistence:jakarta.persistence-api" } tasks.named('test') { useJUnitPlatform() } clean { delete file('src/main/generated') } ``` 강의파일에 있는 그대로 build.gradle 설정 완료후 compileJava를 진행하면 build/generated/sources/annotationProcessor/java/main/study/querydsl/entity/QHello.java 까지 생성이 됩니다. 하지만, build and run using : intellij Run tests using : intellij 로 변경하면 Q타입 인식이 안됩니다. 1. 버전 변경 진행 2. Annotation Processor enable 체크 확인 3. projectStructure -> modules -> build 부분 source 체크 진행 3가지 모든 과정을 진행해보았는데 동일했습니다. 이럴때는 Run as intellij 가 아닌 Gradle로 두어서 진행해야 할까요?

  • java
  • jpa
  • querydsl
김지용 댓글 1 좋아요 0 조회수 117

20강 강의 내용중 Interface 만드는 부분에서 질문이 있어요

해결됨

자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]

Interface 만드는 중에 메서드 정의할때 public은 추상 메서드라면 지우셨는데 추상 메서드는 public을 왜 지워야 하나요? 아니면 안 지워도 되는데 어떤 이유로 인해 지운건가요?

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
커디널스 댓글 2 좋아요 0 조회수 58

순수 JPA 리포지토리 코드 수정부분

미해결

실전! 스프링 데이터 JPA

[질문 내용] 메소드 이름으로 쿼리 생성 챕터의 첫 예제 코드에서 JPA로 직접 작성한 findByUsernameAnd... 메서드 내부 createQuery 부분에서 Member.class 를 파라미터로 같이 전달해야 할 것 같아서 글 작성합니다

  • java
  • spring
  • spring-boot
  • jpa
JongYun Won 댓글 2 좋아요 0 조회수 102

next Request Memoization과 react cache

미해결

Next.js 까보기: "쓸 줄 아는 개발자"에서 "알고 쓰는 개발자"로

next.js에서 제공하는 Request Memoization 기능은 같은 엔드포인트 경로로 여러 개의 요청이 들어왔을 때 하나의 요청으로 캐싱해주는걸로 알고있습니다. 이와 관련해서 3가지 궁금증이 있습니다. Request Memoization 기능은 같은 페이지 한정인가요. 아님 프로젝트 전역에 적용되는걸까요?? 예를 들어 /dashboard 와 /home 두 페이지 모두에서 getUserInfo 라는 fetch 함수를 호출한다면 이 경우도 Request Memoization 이 적용되는건가요. 만약 같은 엔드포인트지만 넘겨주는 파라미터가 다를 경우도 Request Memoization이 적용되나요? axios를 사용한다면 Request Memoization 기능을 활용할 수 없는걸로 알고있는데 react에서 제공하는 cache 함수를 사용하면 동일한 효과를 기대할 수 있나요? 감사합니다!!

  • react
  • typescript
  • next.js
변재정 댓글 1 좋아요 0 조회수 96

next Request Memoization과 react cache

미해결

Next + React Query로 SNS 서비스 만들기

next.js에서 제공하는 Request Memoization 기능은 같은 엔드포인트 경로로 여러 개의 요청이 들어왔을 때 하나의 요청으로 캐싱해주는걸로 알고있습니다. 이와 관련해서 3가지 궁금증이 있습니다. Request Memoization 기능은 같은 페이지 한정인가요. 아님 프로젝트 전역에 적용되는걸까요?? 예를 들어 /dashboard 와 /home 두 페이지 모두에서 getUserInfo 라는 fetch 함수를 호출한다면 이 경우도 Request Memoization 이 적용되는건가요. 만약 같은 엔드포인트지만 넘겨주는 파라미터가 다를 경우도 Request Memoization이 적용되나요? axios를 사용한다면 Request Memoization 기능을 활용할 수 없는걸로 알고있는데 react에서 제공하는 cache 함수를 사용하면 동일한 효과를 기대할 수 있나요? 감사합니다!!

  • react
  • next.js
  • react-query
  • next-auth
  • msw
변재정 댓글 2 좋아요 0 조회수 134

html 변경하는 부분 적용 문제

미해결

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] html을 templates로 옮겨 타임리프를 이용한 경로 수정에서 app을 다시 실행하고 웹을 새로고침해도 바로 적용되지 않고 Gradle를 refresh해야만 적용이 되는데 혹시 프로젝트 생성 초기 intelliJ 설정할 때 Gradle 프로젝트에서 빌드 및 실행은 IntelliJIDEA로 바꾸는 것에서 영향이 간건지 아니라면 gradle refresh 자동화를 할 수 있는지 궁금합니다.

  • spring
  • mvc
dood 댓글 1 좋아요 0 조회수 116

2.구현능력 부분 짤린건가요

해결됨

코테의 바이블 [java]

편하게 질문 주세요! 다른 사람들이 남긴 질문&답변을 보면 가장 빠르게 궁금증에 대한 답을 받을 수 있습니다 :) 그리고나서 새로운 문제를 풀면서 머릿속에서 생각난 코드 구현 이 부분에서 다음 문장이 없네요 ㅜㅜ

  • java
  • 코딩-테스트
  • 알고리즘
  • data-structure
류정균 댓글 2 좋아요 1 조회수 141

섹션10 상속 메모리 구조 및 문제 관련 질문

미해결

김영한의 실전 자바 - 기본편

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? ( 예 /아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? ( 예 /아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? ( 예 /아니오) [질문 내용] 해당 그림에서 왼쪽 박스는 new ElectricCar()를 호출했을 때 생성되는 참조값 x001으로 스택영역에 보관되는 electricCar = x001 인 것이고, 오른쪽의 박스는 x001을 참조값으로 가지는 객체의 메서드 (Car의 move()와 ElectricCar의 change())가 보관된 메서드 영역을 뜻하는 것인가요? (섹션10 상속 문제) Album album = new Album("앨범1", 15000, "seo")을 호출할 때, album = x001이라는 변수와 참조값이 스택영역에 저장됩니다. 이때 "앨범1" 즉 Strin name과 15000 즉 int price는 Album의 부모인 Item의 생성자 매개변수입니다. 최종적으로 힙 영역의 x001위치에 Album 객체가 생성되어 name = "앨범1", price = 15000, artist = "seo" 필드값이 들어있을 것입니다. 그렇다면 이때 이 필드값들이 위 그림의 오른쪽 박스처럼 x001 이라는 참조값을 가지는 하나의 Album 객체안에 Item("앨범1", 15000)과 Album(artist)로 각각 존재하는 것인가요? (하나의 객체이지만 그 안에 Item 파트와 Album 파트로 각각 존재하는 것인지) 결론적으로 힙 영역 객체가 Item의 필드2개와 Album의 필드1개를 모두 가지고 있는 단일 객체로 존재하는 것이고, 스택 영역에는 그 객체를 가리키는 참조값이 저장되는 구조가 맞는지 여쭤보고싶습니다.

  • java
  • 상속
  • 메모리구조
김은수 댓글 1 좋아요 0 조회수 108

러버블에 대한 궁금한 점입니다.

해결됨

비개발자 4주만에 수익화 서비스 만들기: AI 바이브코딩 웹 + 앱 ALL IN ONE

러버블과 n8n과 같은 것을 연동하는 이유는 무엇일까요? 러버블로 프로젝트 제작을 해봤는데요. 유뷰트 스크립트를 가져오려고 외부 라이브러리를 설치해서 스크립트를 가져오게 하는 방법을 사용하려고 하고 있는데요. 계속 스크립트를 가져오지 못하고 있습니다. 이와 같은 경우는 러버블이 할 수 없는 영역이라고 봐야 할까요?

  • flutter
  • next.js
  • cursor
  • supabase
  • 바이브코딩
양승근 댓글 1 좋아요 0 조회수 226

인기 태그

인프런 TOP Writers

주간 인기글