inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

jpa 강의 회원 기능 테스트에서 오류나서 진행이 안돼요ㅠㅠ

미해결

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

MemberServiceTest하는데 오류가 납니다.. 어떻게 해야할지 계속 찾아보는데 못하겠네요 다음은 오류 내용입니다. java.lang.IllegalStateException: Could not initialize plugin: interface org.mockito.plugins.MockMaker (alternate: null) at org.mockito.internal.configuration.plugins.PluginLoader$1.invoke(PluginLoader.java:84) at jdk.proxy3/jdk.proxy3.$Proxy135.getHandler(Unknown Source) at org.mockito.internal.util.MockUtil.getMockHandlerOrNull(MockUtil.java:158) at org.mockito.internal.util.MockUtil.isMock(MockUtil.java:147) at org.mockito.internal.util.DefaultMockingDetails.isMock(DefaultMockingDetails.java:32) at org.springframework.boot.test.mock.mockito.MockReset.get(MockReset.java:106) at org.springframework.boot.test.mock.mockito.ResetMocksTestExecutionListener.resetMocks(ResetMocksTestExecutionListener.java:85) at org.springframework.boot.test.mock.mockito.ResetMocksTestExecutionListener.resetMocks(ResetMocksTestExecutionListener.java:73) at org.springframework.boot.test.mock.mockito.ResetMocksTestExecutionListener.beforeTestMethod(ResetMocksTestExecutionListener.java:60) at org.springframework.test.context.TestContextManager.beforeTestMethod(TestContextManager.java:320) at org.springframework.test.context.junit.jupiter.SpringExtension.beforeEach(SpringExtension.java:240) at java.base/java.util.ArrayList.forEach(ArrayList.java:1596) at java.base/java.util.ArrayList.forEach(ArrayList.java:1596) Suppressed: java.lang.IllegalStateException: Could not initialize plugin: interface org.mockito.plugins.MockMaker (alternate: null) at org.mockito.internal.configuration.plugins.PluginLoader$1.invoke(PluginLoader.java:84) at jdk.proxy3/jdk.proxy3.$Proxy135.getHandler(Unknown Source) at org.mockito.internal.util.MockUtil.getMockHandlerOrNull(MockUtil.java:158) at org.mockito.internal.util.MockUtil.isMock(MockUtil.java:147) at org.mockito.internal.util.DefaultMockingDetails.isMock(DefaultMockingDetails.java:32) at org.springframework.boot.test.mock.mockito.MockReset.get(MockReset.java:106) at org.springframework.boot.test.mock.mockito.ResetMocksTestExecutionListener.resetMocks(ResetMocksTestExecutionListener.java:85) at org.springframework.boot.test.mock.mockito.ResetMocksTestExecutionListener.resetMocks(ResetMocksTestExecutionListener.java:73) at org.springframework.boot.test.mock.mockito.ResetMocksTestExecutionListener.afterTestMethod(ResetMocksTestExecutionListener.java:67) at org.springframework.test.context.TestContextManager.afterTestMethod(TestContextManager.java:487) at org.springframework.test.context.junit.jupiter.SpringExtension.afterEach(SpringExtension.java:278) ... 2 more Caused by: java.lang.IllegalStateException: Internal problem occurred, please report it. Mockito is unable to load the default implementation of class that is a part of Mockito distribution. Failed to load interface org.mockito.plugins.MockMaker at org.mockito.internal.configuration.plugins.DefaultMockitoPlugins.create(DefaultMockitoPlugins.java:105) at org.mockito.internal.configuration.plugins.DefaultMockitoPlugins.getDefaultPlugin(DefaultMockitoPlugins.java:79) at org.mockito.internal.configuration.plugins.PluginLoader.loadPlugin(PluginLoader.java:75) at org.mockito.internal.configuration.plugins.PluginLoader.loadPlugin(PluginLoader.java:50) at org.mockito.internal.configuration.plugins.PluginRegistry.<init>(PluginRegistry.java:27) at org.mockito.internal.configuration.plugins.Plugins.<clinit>(Plugins.java:22) at org.mockito.internal.MockitoCore.<clinit>(MockitoCore.java:73) at org.mockito.Mockito.<clinit>(Mockito.java:1683) at org.springframework.boot.test.mock.mockito.MockReset.get(MockReset.java:105) at org.springframework.boot.test.mock.mockito.ResetMocksTestExecutionListener.resetMocks(ResetMocksTestExecutionListener.java:85) at org.springframework.boot.test.mock.mockito.ResetMocksTestExecutionListener.resetMocks(ResetMocksTestExecutionListener.java:73) at org.springframework.boot.test.mock.mockito.ResetMocksTestExecutionListener.beforeTestMethod(ResetMocksTestExecutionListener.java:60) at org.springframework.test.context.TestContextManager.beforeTestMethod(TestContextManager.java:320) at org.springframework.test.context.junit.jupiter.SpringExtension.beforeEach(SpringExtension.java:240) ... 2 more Caused by: java.lang.reflect.InvocationTargetException at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:502) at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:486) at org.mockito.internal.configuration.plugins.DefaultMockitoPlugins.create(DefaultMockitoPlugins.java:103) ... 15 more Caused by: org.mockito.exceptions.base.MockitoInitializationException: Could not initialize inline Byte Buddy mock maker. It appears as if your JDK does not supply a working agent attachment mechanism. Java : 21 JVM vendor name : Oracle Corporation JVM vendor version : 21.0.2+13-58 JVM name : OpenJDK 64-Bit Server VM JVM version : 21.0.2+13-58 JVM info : mixed mode, sharing OS name : Windows 10 OS version : 10.0 at org.mockito.internal.creation.bytebuddy.InlineDelegateByteBuddyMockMaker.<init>(InlineDelegateByteBuddyMockMaker.java:260) at org.mockito.internal.creation.bytebuddy.InlineByteBuddyMockMaker.<init>(InlineByteBuddyMockMaker.java:23) ... 18 more Caused by: java.lang.IllegalArgumentException at java.instrument/sun.instrument.InstrumentationImpl.appendToClassLoaderSearch0(Native Method) at java.instrument/sun.instrument.InstrumentationImpl.appendToBootstrapClassLoaderSearch(InstrumentationImpl.java:280) at org.mockito.internal.creation.bytebuddy.InlineDelegateByteBuddyMockMaker.<clinit>(InlineDelegateByteBuddyMockMaker.java:177) ... 19 more Caused by: [CIRCULAR REFERENCE: java.lang.IllegalStateException: Internal problem occurred, please report it. Mockito is unable to load the default implementation of class that is a part of Mockito distribution. Failed to load interface org.mockito.plugins.MockMaker] Internal problem occurred, please report it. Mockito is unable to load the default implementation of class that is a part of Mockito distribution. Failed to load interface org.mockito.plugins.MockMaker java.lang.IllegalStateException: Internal problem occurred, please report it. Mockito is unable to load the default implementation of class that is a part of Mockito distribution. Failed to load interface org.mockito.plugins.MockMaker at org.mockito.internal.configuration.plugins.DefaultMockitoPlugins.create(DefaultMockitoPlugins.java:105) at org.mockito.internal.configuration.plugins.DefaultMockitoPlugins.getDefaultPlugin(DefaultMockitoPlugins.java:79) at org.mockito.internal.configuration.plugins.PluginLoader.loadPlugin(PluginLoader.java:75) at org.mockito.internal.configuration.plugins.PluginLoader.loadPlugin(PluginLoader.java:50) at org.mockito.internal.configuration.plugins.PluginRegistry.<init>(PluginRegistry.java:27) at org.mockito.internal.configuration.plugins.Plugins.<clinit>(Plugins.java:22) at org.mockito.internal.MockitoCore.<clinit>(MockitoCore.java:73) at org.mockito.Mockito.<clinit>(Mockito.java:1683) at org.springframework.boot.test.mock.mockito.MockReset.get(MockReset.java:105) at org.springframework.boot.test.mock.mockito.ResetMocksTestExecutionListener.resetMocks(ResetMocksTestExecutionListener.java:85) at org.springframework.boot.test.mock.mockito.ResetMocksTestExecutionListener.resetMocks(ResetMocksTestExecutionListener.java:73) at org.springframework.boot.test.mock.mockito.ResetMocksTestExecutionListener.beforeTestMethod(ResetMocksTestExecutionListener.java:60) at org.springframework.test.context.TestContextManager.beforeTestMethod(TestContextManager.java:320) at org.springframework.test.context.junit.jupiter.SpringExtension.beforeEach(SpringExtension.java:240) at java.base/java.util.ArrayList.forEach(ArrayList.java:1596) at java.base/java.util.ArrayList.forEach(ArrayList.java:1596) Caused by: java.lang.reflect.InvocationTargetException at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:502) at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:486) at org.mockito.internal.configuration.plugins.DefaultMockitoPlugins.create(DefaultMockitoPlugins.java:103) ... 15 more Caused by: org.mockito.exceptions.base.MockitoInitializationException: Could not initialize inline Byte Buddy mock maker. It appears as if your JDK does not supply a working agent attachment mechanism. Java : 21 JVM vendor name : Oracle Corporation JVM vendor version : 21.0.2+13-58 JVM name : OpenJDK 64-Bit Server VM JVM version : 21.0.2+13-58 JVM info : mixed mode, sharing OS name : Windows 10 OS version : 10.0 at app//org.mockito.internal.creation.bytebuddy.InlineDelegateByteBuddyMockMaker.<init>(InlineDelegateByteBuddyMockMaker.java:260) at app//org.mockito.internal.creation.bytebuddy.InlineByteBuddyMockMaker.<init>(InlineByteBuddyMockMaker.java:23) ... 18 more Caused by: java.lang.IllegalArgumentException at java.instrument/sun.instrument.InstrumentationImpl.appendToClassLoaderSearch0(Native Method) at java.instrument/sun.instrument.InstrumentationImpl.appendToBootstrapClassLoaderSearch(InstrumentationImpl.java:280) at org.mockito.internal.creation.bytebuddy.InlineDelegateByteBuddyMockMaker.<clinit>(InlineDelegateByteBuddyMockMaker.java:177) ... 19 more

  • java
  • spring
  • 웹앱
  • spring-boot
  • jpa
댓글 1 좋아요 0 조회수 416

import com.itvillage.utils.Logger;

미해결

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

안녕하세요. '리액터의 구성 요소 및 용어 정의' 강의에서 Flux sample 코드 작성시 import com.itvillage.utils.Logger; 를 import 해오는데, build.gradle 설정에서 어떤 의존성을 더 추가해야 할까요? plugins { id 'java' id 'org.springframework.boot' version '3.3.1' id 'io.spring.dependency-management' version '1.1.5' } group = 'com.example' version = '0.0.1-SNAPSHOT' java { toolchain { languageVersion = JavaLanguageVersion.of(17) } } configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter-webflux' testImplementation 'org.springframework.boot:spring-boot-starter-test' testImplementation 'io.projectreactor:reactor-test' testRuntimeOnly 'org.junit.platform:junit-platform-launcher' compileOnly 'org.projectlombok:lombok' annotationProcessor 'org.projectlombok:lombok' } tasks.named('test') { useJUnitPlatform() } 검색해서 implementation 'com.itvillage:utils:1.0.0' 라는 것을 build.gradle 에 추가해봐도 되지 않더라구요. 좋은 강의 잘 보고 있습니다. 감사합니다.

  • java
  • spring
  • project-reactor
  • webflux
댓글 1 좋아요 0 조회수 168

gradlew CMD 오류(Java)

미해결

마인크래프트 공부중인 학생입니다. gradlew 명령어가 말을 듣질 않아요 https://gradle.org/releases/ 이 사이트에서 최신 버전(v8.9) 다운로드 받았고 자바 버전은 8입니다. 포지 버전은 1.16.5 mdk이고요. java javac 정상적으로 다운로드 했습니다. 이클립스 버전은 2020-06 버전이고요. 답변 부탁드립니다.

  • java
  • gradle
  • gradlew
  • cmd
  • 명령어
  • eclipse
Holy Jammin 댓글 1 좋아요 0 조회수 327

PyQt5, QtDesigner 설치 오류

해결됨

챗GPT와 파이썬으로 주식 자동매매 앱 및 웹 투자 리포트 만들기

PyQt5, QtDesigner 설치 시 다음과 같은 오류입니다. pip install pyqt5-tools 했을 때는 아래 화면에서 더 이상 진행되지 않습니다.

  • python
  • 재테크
  • streamlit
  • chatgpt
  • 프롬프트엔지니어링
jwbaek4 댓글 1 좋아요 0 조회수 939

비교연산자와조건반복문15분에나오는문제. 질문입니다

해결됨

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

a,가. 1로. 초기값일때 와일문에들어가고 if문에 b=1가 들어가서 짝수가아니라서. Sum은. -1이되는게아닌가요?

  • python
  • java
  • c
  • 정보처리기사
ariel123 댓글 1 좋아요 0 조회수 218

강의자료 부탁드립니다!

미해결

프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)

tjrwls7497@naver.com 입니다 감사합니다!

  • python
강석진 댓글 1 좋아요 0 조회수 114

이해가안가요...

해결됨

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

이해가 어려운 섹션이나 영상 설명은 질문으로 꼭 남겨주세요. 기출문제를 풀다가 막힌 개념이 있나요? 질문으로 회차나 번호, 개념을 예시로 질문해주세요. 답변에 도움이 됩니다. 이론 문제는 통합본 PDF 파일로 제공될 예정입니다. (6월 중 업로드 예정) 합격을 가르는 것은 역시 코드해석문제. 이론을 외울 시간이 없다면 코드에 익숙해지고, 중요 개념을 몇 가지 외워가면 합격할 수 있습니다. 어디서어디가 적용되는범위고. 세밀했으면졸겠어요 이게참이라서이렇게된다든지. 비교연산자조건문반복문강의 5분에나온느문제. 2읭배수 3의배수. 이론곤알겠는데. 이게. 어떻게. 이프문에서. 나와서. 카운트가언제 증가하는지. 하나도모르겠네요. .설명좀해주세요. .

  • python
  • java
  • c
  • 정보처리기사
ariel123 댓글 2 좋아요 0 조회수 355

인텔리제이 빨간색 표시

미해결

김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 빨간색으로 표시되는 이유가 궁금합니다.

  • java
  • 객체지향
이소희 댓글 1 좋아요 0 조회수 253

인텔리제이 워닝 오류

미해결

김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음

IMPORTANT: BY ACCESSING AND USING JETBRAINS DECOMPILER, YOU AGREE TO THE CERTAIN TERMS AND CONDITIONS SET FORTH IN THE END-USER LICENSE AGREEMENT AND QUOTED BELOW. IF YOU DO NOT AGREE WITH THESE TERMS OR CONDITIONS, DO NOT ACCESS OR USE JETBRAINS DECOMPILER. 인텔리제이 사용 도중 일어나는 오류는 어떻게 해결해야하나요?

  • java
이소희 댓글 2 좋아요 0 조회수 597

질문

해결됨

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

리스트 의 문자 하나씩 접근하려면 a[0][1] a[1][1] a[2][1] .... 으로 표현되야하는게 아닌가요? 위 코딩만봐서는 도저히 이해가 안갑니다

  • python
  • java
  • c
  • 정보처리기사
김인도 댓글 1 좋아요 0 조회수 175

맥에서는 이런 화면이 뜨지 않아서요

미해결

나도코딩의 자바 기본편 - 풀코스 (20시간)

맥으로 하고 있는데 인트가 크다라는 문자가 안뜨네요 어떻게 크게 하죠

  • java
  • 객체지향
제명환제명환 댓글 4 좋아요 0 조회수 238

Split

해결됨

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

이해가 어려운 섹션이나 영상 설명은 질문으로 꼭 남겨주세요. 실행결과가 이해가 안가네요 X.y의 값을 공백으로 구분하여 입력(개행) 5 10 (개행) 5+10=15 으로 나와야하는거 아닌가요? 강의중 처음나온 함수인데 설명이 부족한듯싶습니다. 자세히 설명부탁드립니다.

  • python
  • java
  • c
  • 정보처리기사
김인도 댓글 1 좋아요 0 조회수 201

String 클래스 - 비교에서 문자열 풀 질문

해결됨

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

String 클래스 - 비교에서 문자열 풀 질문이 있습니다. 문자열 리터럴의 경우 문자열 풀에 의해 str4 의 참조값은 //x003이 된다고 하셨는데, 이 경우에 str3과 str4가 같은 참조값을 가지게 되는데, 그럼 사이드이펙트가 생길 수 있나요? 근데 코드를 그냥 str3 = 'happy'로 바꾸면 바뀝니다. 왜 같은 참조값을 가지는데 동시에 변경이 안되는 것인가요? 동일한 참조값을 가지면 한쪽이 변경될 경우 다른 한쪽도 변경되어야하는 것 아닌가요..?ㅠㅠ 헷갈립니다...도와주세요ㅠ public class StringEqualsMain1 { public static void main(String[] args) { String str1 = new String("hello"); //x001 String str2 = new String("hello"); //x002 System.out.println("new String() == 비교: " + (str1 == str2)); System.out.println("new String() equals 비교: " + (str1.equals(str2))); String str3 = "hello"; //x003 String str4 = "hello"; //x004 System.out.println("리터럴 == 비교 : " + (str3 == str4)); System.out.println("리터럴 equals 비교 : " + (str3.equals(str4))); } }

  • java
  • 객체지향
hyejung9904 댓글 1 좋아요 1 조회수 165

다대일 테이블 분리

미해결

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

.

  • java
  • jpa
댓글 1 좋아요 0 조회수 124

메서드 생성할 때

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 이전에는 메소드 생성시 public를 적고 static 을 적었는데 왜 이번 강의에서는 public을 적지 않고 바로 static으로 시작하나요? 무엇이 다른가요?

  • java
  • 객체지향
재훈 댓글 2 좋아요 0 조회수 341

백준 10546 배부른 마라토너

미해결

입문자를 위한 코딩테스트 핵심(이론과 문제풀이) [Python]

python ide에서는 정답 맞는데 백준에서는 틀립니다 solution함수를 이렇게 하면 틀리는 이유는 뭔가요? from collections import Counter def solution(arr): pre_answer=Counter(arr) for key in pre_answer: if pre_answer[key]%2==1: return key n=int(input("참가자 수:")) arr=[] for i in range(n): arr.append(input()) for j in range(n-1): arr.append(input()) print(solution(arr))

  • python
  • 코딩-테스트
kindjin12 댓글 1 좋아요 0 조회수 186

구조체 접근?

해결됨

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

이해가 어려운 섹션이나 영상 설명은 질문으로 꼭 남겨주세요. 구조체 멤버를 지정할때구조체명.멤버 구조체명->멤버(*구조체명).멤버로 할수있는것으로 알고있는데그렇다면답은 -> 말고도 .이 될수도 있나요?더불어 위의 코드 하나씩 풀이해주시면 감사하겠습니다. 코도 의미가 너무 어렵고 이해가 안가네요.ㅜㅡㄴ

  • python
  • java
  • c
  • 정보처리기사
김인도 댓글 2 좋아요 0 조회수 274

코드강좌자료는없나요?

해결됨

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

이해가 어려운 섹션이나 영상 설명은 질문으로 꼭 남겨주세요. 기출문제를 풀다가 막힌 개념이 있나요? 질문으로 회차나 번호, 개념을 예시로 질문해주세요. 답변에 도움이 됩니다. 이론 문제는 통합본 PDF 파일로 제공될 예정입니다. (6월 중 업로드 예정) 합격을 가르는 것은 역시 코드해석문제. 이론을 외울 시간이 없다면 코드에 익숙해지고, 중요 개념을 몇 가지 외워가면 합격할 수 있습니다.

  • python
  • java
  • c
  • 정보처리기사
ariel123 댓글 1 좋아요 0 조회수 289

Chapter 4-1(예수금 조회).py 실행 오류

해결됨

챗GPT와 파이썬으로 주식 자동매매 앱 및 웹 투자 리포트 만들기

4장 Chapter 4-1(예수금 조회).py 실행하면 더 이상 진행되지 않습니다. 1) 코드 실행, 고객ID, 비밀번호 입력 2) 다음 팝업 화면 생성, 계좌비밀번호 입력창 생성되지 않고, 코드에 계좌비밀번호를 입력해도 동일합니다. 3) 더 이상 진행이 되지 않습니다.

  • python
  • 재테크
  • streamlit
  • chatgpt
  • 프롬프트엔지니어링
jwbaek4 댓글 1 좋아요 0 조회수 344

MemberForm을 받아오는 것과 Member에 바로 저장하는 것의 차이

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에서 답변을 보면, @PostMapping("/members/new") public String create(MemberForm form){ Member member = new Member(); member.setName(form.getName()); memberService.join(member); return "redirect:/"; } 위와 같이 코드를 작성하면, "members/new"로 POST 메소드가 호출되었을 때, 스프링이 create() 메서드를 실행하기 위해 MemberForm 객체를 만들어야 하고, setter를 불러와서 멤버변수에 파라미터를 주입한다고 이해했습니다. 그런데, 한가지 의문이 들었습니다. MemberForm에 name을 저장하고, 그 값을 다시 Member 객체에 저장할거면, 한번에 Member에 저장하면 안되나? Member에도 멤버변수로 name이 있고, setter도 있으니, 안될 건 없다고 생각했습니다. 그래서 아래와같이 코드를 작성했습니다. @PostMapping("/members/new") public String create(Member member){ memberService.join(member); return "redirect:/"; } 이렇게 작성하고 회원가입, 회원목록 기능을 모두 수행해본 결과, 똑같이 잘 작동했습니다. 혹시 강사님께서 굳이굳이 MemberForm을 거쳐서 Member 객체를 만드신 이유가 있나요? 어떤 성능상의 이점이 있는 건가요? 아님 두번째 방법이 위험한 방법이라서 그런건가요? 왜 그런건가요?

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

인기 태그

인프런 TOP Writers

주간 인기글