inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

탐색 순서 질문

미해결

Do it! 알고리즘 코딩테스트 with JAVA

영상에서 탐색 순서가 1 > 3 > 4 > 6 > 2 > 5 로 되어있는데 왜 5 > 2 가 아닌 2 > 5가 되는지 궁금합니다. 진행 되는 순서가 노드를 넣고 > 노드를 꺼내고 가 맞지 않나요? 아님 2 > 5로 되어도 상관 없는건가요?

  • java
  • 코딩-테스트
  • 알고리즘
겁많은 김앙리 댓글 1 좋아요 0 조회수 167

쿼리 로그 출력 관련 질문

해결됨

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] MemberApiController.java MemberService.java 쿼리 실행이 select - update - select가 로그에 출력될꺼라고 예상 했는데 실제 로그는 select - update 까지만 출력되는데 이유를 알 수 있을까요?

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

서블릿 컨테이너 질문있습니다.

미해결

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

서블릿 컨테이너가 Request와 Response, 서블릿을 생성하고 관리해준다고 하셨는데 서블릿 컨테이너가 생성하는 객체들의 참조 변수는 해당 객체의 최상위 타입인가요??

  • spring
  • mvc
eoyeong 댓글 1 좋아요 0 조회수 181

app-router route handler 에러 처리방법

미해결

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

import { type NextRequest, NextResponse } from 'next/server'; import { fetchData } from '@/shared/apis/fetch-data'; import type { IAcademyCreateDTO, IPostEnrollAcademyResponse } from '@/shared/types/acadmy'; export async function POST(req: NextRequest) { const body = (await req.json()) as Promise<IAcademyCreateDTO>; const data = await fetchData<IPostEnrollAcademyResponse>('/api/v1/academies', 'POST', body); if (!data.isSuccess) { return NextResponse.json( {}, { status: 500, statusText: data.message, }, ); } return NextResponse.json(data); } 서버에, 에러시 아래와 같은 데이터 구조를 준다고 했을떄 위의 방식처럼, 에러 핸들링을 하는 것이 맞는지 궁금합니다... Route Handler의 보편적인 에러처리 방식이 너무 궁금합니다!! (직접 에러 메시지를 작성하는것이 아닌 서버에서 내려주는 에러메시지를 화면에 표기하고 싶습니다.) export type CommonResponse<T = unknown> = { code: string; isSuccess: boolean; message: string; result: T; };

  • react
  • typescript
  • next.js
김용민 댓글 1 좋아요 0 조회수 211

service() 메서드 질문있습니다.

미해결

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

protected service()를 오버라이딩 해주는 이유가 서블릿 컨테이너가 Servlet 인터페이스와 의존관계에 있기 때문에, Http 요청이 오면 Servlet.service()와 같이 service를 호출하면 HttpServlet 클래스에 오버라이딩된 public service()가 실행되고 public service()에서 protected service()를 호출하니까 protected service()를 저희가 원하는 동작을 하도록 오버라이딩 해서 사용하는 거 맞을까요?

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

next-auth의 refresh token rotation에 관한 질문입니다.

미해결

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

안녕하세요 next-auth로 토큰 갱신 로직을 개발하는 중에 해결되지 않는 문제가 발생하여 질문 드립니다. 현재 클라이언트에서 api 요청을 하면 middleware에서 const token = await auth(); 이런식으로 세션 정보를 가져와 accessToken을 헤더에 삽입하는 방식을 구현하였습니다. if (request.nextUrl.pathname.startsWith("/gateway")) { const session = await auth(); const accessToken = session?.accessToken; const { device } = userAgent(request); const localeFromCookie = cookieStore.get("dp_lang")?.value as string; const defaultLocale = getLanguageCodeFromLocale(localeFromCookie); request.headers.set("Accept", "*/*"); request.headers.set("Authorization", `Bearer ${accessToken}`); request.headers.set("Access-Control-Allow-Origin", "*"); request.headers.set("deviceType", "1"); request.headers.set("deviceId", getDeviceIdFromCookie(cookieStore)); request.headers.set("osType", getOsTypeFromCookie(cookieStore)); request.headers.set("User-Agent", device.model ?? ""); request.headers.set("locale", localeFromCookie); request.headers.set("language", defaultLocale); const response = NextResponse.next({ request: { headers: request.headers, }, }); return response; } 따라서 미들웨어에서 세션에 접근하는 순간에 jwt콜백이 실행되어 jwt 토큰에 저장되어 있는 토큰 expire 시간을 비교하여 만료여부를 판단 한 뒤에 토큰 갱신이 되도록 구현을 하였습니다. async jwt({ token, account, user }) { // Initial sign in if (account && user) { return { accessToken: user.accessToken, expiresAt: new Date( Date.now() + (user?.expiresIn ?? 0) ).toISOString(), refreshToken: user.refreshToken, serviceAvailable: true, }; } // Return previous token if the access token has not expired yet if ( new Date() < new Date(new Date(token.expiresAt as string).getTime() - 5000) ) { console.log("@@@@@@valid"); return token; } else { if (token.error === "RefreshTokenInvalid") { return token; } // Access token has expired, try tㄴo update it try { console.log("@@@@@@expired"); const refreshedTokens = await authApi.refreshAuthToken({ refreshToken: token.refreshToken as string, accessToken: token.accessToken as string, }); console.log("==========token refreshed========"); // reissue token return { ...token, accessToken: refreshedTokens.accessToken, expiresAt: new Date( Date.now() + (refreshedTokens.expiresIn ?? 18000) ).toISOString(), refreshToken: refreshedTokens.refreshToken ?? token.refreshToken, error: null, }; } catch (error) { console.error("Token refresh failed", error); if (error.status === RestApiErrorType.invalidTokenException) { return { ...token, error: "RefreshTokenInvalid", }; } return { ...token, error: "RefreshAccessTokenError" }; } } }, 기존에는 세션에 접근을 할때 next-auth의 jwt 콜백이 돌고 값이 리턴되면 쿠키의 session-token값에 암호화된 값들이 업데이트 되는 걸로 알고 있었는데 찾아보니 현재 세션에 접근하고 갱신하는 부분이 서버단에 있어서 쿠키가 업데이트 되지 않는다고 합니다. 따라서 현재 토큰이 만료된 후 한번에 3가지의 api 콜을 요청했을때 첫번째 api요청에서는 정상적으로 토큰 refresh가 요청이 되며 middleware에서 세션에 접근해 갱신된 토큰이 가져와져 요청이 성공되나 그 뒤 요청부터는 쿠키에 업데이트가 되지 않아서인지 세션에서 갱신 전 토큰이 가져와지는 현상이 발생하고 있습니다. 클라이언트에서 세션 업데이트 후 세션에 접근을 해야 쿠키값이 갱신이 된다고 하는데 다른 방법이 있는지 문의드립니다.

  • react
  • next.js
  • react-query
  • next-auth
  • msw
박지수 Jisu Park 댓글 2 좋아요 0 조회수 653

Check the render method of `SceneView`. 오류

미해결

따라하며 배우는 리액트 네이티브 기초

선생님 expo로 Aos 실행했을때 Check the render method of SceneView . 오류가 납니다. React Navigation 기능을 안쓰고 했을때는 오류가 안나는데 어떻게 해결하나요?

  • react
  • react-native
  • expo
mhlee 댓글 3 좋아요 0 조회수 378

RequestMapping과 HttpRequestHandler를 같이 사용 할 수 없나요?

미해결

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

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 아래와 같은 코드를 한번 해봤습니다. 제 생각대로라면 RequestMappingHandlerMapping에 MyHttpRequestHalder가 등록되어 getHandler시 가져오고 이것을 getHandlerAdapter가 HttpRequestHandlerAdapter를 찾아 handleRequest를 수행해 줄것이라 생각했는데 생각처럼 동작하지 않네요. handler와 adapter는 인터페이스로 되어 있어 어떤조합이든 되는게 아니었나요? 좀 헷갈립니다. @Controller @RequestMapping("/springmvc/request-handler") public class MyHttpRequestHandler implements HttpRequestHandler { @Override public void handleRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.getWriter().write("ok"); } }

  • spring
  • mvc
박기자 댓글 1 좋아요 0 조회수 133

React.memo 메서드관련 질문드립니다.

해결됨

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

10.3) 해당 강의에서 TodoItem 컴퍼넌트 리렌더링 실행 조건을 memo 메서드를 이용하여 커스터마이징할 때, if (prevProps.isDone !== nextProps.isDone) return false; 이 문구에서 prevProps.isDone 값은 기존값이니 이해가 되었는데 nextProps.isDone 값은 해당 TodoItem 함수 내에 onCangeCheckbox 함수가 선행으로 실행이 되어야 알 수 있는 값 아닌가요? 그 전에 실행이 안 되도록 memo 메서드로 TodoItem의 리렌더링을 막고 있는데 어떻게 isDone 값이 바꼈다고 판단해서 리렌더링이 되는건지 모르겠습니다.

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

pdf파일 표 질문이요(저만 안보이는건지?)

해결됨

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요. 8번째 pdf파일 set의 주요 메서드 설명을(3page) 보고 있는 도중에, 글씨가 안 보이는 부분이 있어서 여쭤 봅니다. pdf파일로 열어서 보고 있는데 표 끝부분이 정확히 안나와서, 저만 그런건지 알고 싶어서 질문을 올립니다. 혹 저만 그런 건가요? 아니면 다들 똑같은신지요?

  • java
  • 객체지향
  • 코딩-테스트
  • 알고리즘
생각하는자 댓글 2 좋아요 0 조회수 177

java version 문의

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] start.spring.io와 IntelliJ 자체에서 SpringBoot 프로젝트 생성하기 시 java version이 최소 17입니다. 해당 버전 대응 부탁드립니다.

  • spring
  • mvc
유류캠 댓글 1 좋아요 0 조회수 109

source.next와 source.emit의 차이에 대한 질문입니다.

해결됨

Kevin의 알기 쉬운 Spring Reactive Web Applications: Reactor 1부

안녕하세요. 강의 잘 보고 있습니다. 마지막에 와서 의문이 드는게 있어 질문 남겨봅니다. 첫 번째 예제 TestPublisherTestExample01 에서는 source.next 로 테스트를 진행했고, 세 번째 예제 TestPublisherTestExample03 에서는 source.emit 으로 테스트를 진행했는데요. emit의 경우 내부적으로 complete()을 통해 signal을 발생 시키는 것으로 이해했습니다. 그런데, 말씀대로라면 첫 번째 테스트에서 expectComplete() 이 통과하는게 이해가 가지 않아서요. 둘의 차이는 결국 Flux를 create 해주는 방식에 있는 것 같은데, 첫 번째 예제의 경우 zipWith을 통해 complete이 발생하는 걸까요? 잘 감이 오지 않는데, 설명해주시면 감사하겠습니다!

  • java
  • spring
  • project-reactor
  • webflux
azsxd34 댓글 2 좋아요 0 조회수 240

GitHub에 application설정 내용 push

미해결

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

강의를 다시 보며 개인적으로 복습하던 중 만약 MySQL까지 배포를 완료한 후에 깃허브에 코드를 올리게 되면 Repo가 Public이라서 application에 설정해둔 저의 DB정보와 password도 함께 보여지게 될 텐데 이를 방지하는 방법이 있을까요? Private일 때 배포하는 방법은 강의 내용에 없어서 아쉽지만ㅠ Public일 때 깃허브에 application 설정을 gitignore을 통해서 push하지 않아도 배포하는 데에 있어서 지장이 없는지 궁금합니다!

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
박재성 댓글 3 좋아요 0 조회수 170

jdk 버전 관련해 질문이 있습니다.

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

plugins { id 'java' id 'org.springframework.boot' version '3.3.5' id 'io.spring.dependency-management' version '1.1.6' } group = 'hello' version = '0.0.1-SNAPSHOT' java { toolchain { languageVersion = JavaLanguageVersion.of(21) } } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' implementation 'org.springframework.boot:spring-boot-starter-web' testImplementation 'org.springframework.boot:spring-boot-starter-test' testRuntimeOnly 'org.junit.platform:junit-platform-launcher' } tasks.named('test') { useJUnitPlatform() } 제 프로젝트에 "toolchain { languageVersion = JavaLanguageVersion.of(21)" 라고 기술했는데요. 제 시스템에 설치된 jdk버전이 꼭 21 버전이어야만 빌드가 되더라구요. 자바 버전이 17이면, jdk가 17이상만 되면 빌드가 된다고 어디서 들었던 것 같은데, 혹시 툴체인이랑은 별개의 내용인건가요?

  • java
  • spring
  • mvc
  • spring-boot
댓글 1 좋아요 0 조회수 787

FrontControllerServletV1 404오류

미해결

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

안녕하세요 강의를 따라 진행하면서 /front-controller/v1/members/new-form에 들어가면 404오류가 뜨고있습니다 어떻게 해결할지 몰라 질문글을 남깁니다 https://drive.google.com/file/d/11KMx5ovVj1_bTCjTaOx2u7fx4uxQcV6g/view?usp=sharing

  • spring
  • mvc
참깨햄스터 댓글 2 좋아요 0 조회수 287

react app 생성하기에서 npm i 오류

미해결

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

안녕하세요 section04 폴더로 react 앱 만들기 실습에서 라이브러리들을 다운받기 위해 npm i 를 하려고 했는데, 아래 이미지와 같은 오류들이 발생합니다. 인터넷을 찾아보니 권한 문제때문이라고 하던데 단순하게 sudo npm i를 하면 되는 걸까요?

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

js파일 업로드 요청

미해결

만들면서 배우는 리액트 : 기초

학습하는 환경이 내부망이라 <script src=" https://unpkg.com/react@18/umd/react.production.min.js " crossorigin></script> <script src=" https://unpkg.com/react-dom@18/umd/react-dom.production.min.js " crossorigin></script> <script src=" ">https://unpkg.com/babel-standalone@6/babel.min.js"></script> 위 js들을 직접 다운로드 받아 반입해야 하는데요.. 리액트 사이트에서 리액트 라이브러리는 다운로드가 되는데 babel은 다운로드가 안되네요;; js파일을 직접 다운로드할 수 있도록 학습용 코드 올려진 곳에 업로드 해주시면 감사하겠습니다.

  • javascript
  • react
스리에스 댓글 1 좋아요 0 조회수 157

블로그 글 작성

미해결

김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 네 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 네 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 네 [질문 내용] 안녕하세요! 책으로 공부 할 땐 어려웠는데 영한님 덕분에 편하게 공부 하고 있습니다. 감사합니다. 다름이 아니라 블로그에 배운 내용을 작성 하려고 하는데 쓰레드 섹션 2,3의 경우 영한님 코드가 노출 되어도 괜찮나요?.. 출처는 당연히 남깁니다! 섹션 2,3 경우 코드가 많지 않아서 이걸 블로그에 올려도 될까 고민입니다.

  • java
  • 객체지향
  • 동시성
  • multithread
  • thread
조희제 댓글 1 좋아요 0 조회수 250

홈로그인 부분 질문입니다.

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] HomeController에서 로그인을 했을경우에는 무조건 세션에 회원데이터를 넣어서 homeController로 리다이렉트를 하고 homeController에서 처음에 세션을 조회해서 null일경우에 home.html로 보내는데 loginMember가 null일 경우가 있을까요?? 로그아웃을 했을 경우에도 세션자체를 없애기때문에 처음 세션을 조회하는 부분에서 분기처리가 될거같은데 제가 잘못이해하고 있는지 잘 이해가 되지않아 질문드립니다!

  • spring
  • mvc
신준용 댓글 1 좋아요 0 조회수 177

drop table if exists 쿼리 인텔리제이 에러

해결됨

스프링 DB 1편 - 데이터 접근 핵심 원리

drop table member if exists cascade; ',', CASCADE or RESTRICT expected, got 'if' 인텔리제이에서 에러가 나서 찾아보니 h2 디비 문법 오류 이더군요 실행은 되는데 if exists 순서를 변경해주니까 인텔리에서 에러가 없어졌습니다 혹시나 해서 기록남깁니다 drop table if exists member cascade;

  • spring
  • mvc
  • spring-jdbc
권도균 댓글 1 좋아요 0 조회수 130

인기 태그

인프런 TOP Writers

주간 인기글