inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

putchar() getchar()

미해결

홍정모의 따라하며 배우는 C언어

char ch; ch = getchar(); while (ch != '\n') { putchar (ch); ch = getchar (); } putchar (ch); 위쪽에 있는 ch = getchar();를 통해 qwer의 문자를 입력 받았다고 하면 putchar()에서 한문자씩 출력이 되서 처음에는 q값이 출력이 되면 그 다음 코드인 ch = getchar();를 만나는데 여기서 다시 ch의 값을 다시 입력해줘달라는 코드 아닌가요? 처음 ch = getchar();에서는 입력을 받았는데 왜 while문 안에있는 ch = getchar();에서는 입력을 다시 안하는 건가요??

  • c
jdna1009 댓글 1 좋아요 0 조회수 476

while(getchars() != '\n')continue;

미해결

홍정모의 따라하며 배우는 C언어

scanf("%c %d %d", c, rows, cols) while(getchars() != '\n')continue; 에서 의문이 드는 점은 scanf로 입력을 받고 while문 안에있는 putchar에서 입력을 한번 더 받아야 하는거 아닌가요?

  • c
jdna1009 댓글 1 좋아요 0 조회수 284

7.2강 25분경 마지막 문제 질문입니다!

미해결

홍정모의 따라하며 배우는 C언어

대소문자 교환 문제에서 while ((ch = getchar()) != '\n') { if (ch >= 'A' && ch <= 'Z') ch += 'a'-'A'; else if (ch >= 'a' && ch <= 'z') ch -= 'a'-'A'; putchar(ch); } 라는 코드에서 밑부분에 else if 를 사용하면 정상 작동이 되는데 else if 가 아닌 그냥 if를 사용하면 소문자는 잘 바뀌는데 대문자가 소문자로 변하질 않네요... 이유가 뭘까요?ㅠㅠ

  • c
댓글 1 좋아요 0 조회수 356

getchar()관련 자료형 질문

미해결

홍정모의 따라하며 배우는 C언어

char get_first_char(void) { int ch; ch = getchar(); while (getchar() != '\n') continue; return ch; } 이 코드에서 getchar()이 반환하는 자료형은 int이고 return 값으로는 char값인 것에 대해 궁금했는데요, ch = getchar(); 이 부분에서 getchar()이 입력받은 문자의 아스키 코드(int)를 반환하고 이를 return ch; 에서 ch가 입력받은 아스키코드에 대응하는 문자 char자료형으로 return한다고 생각하는데 맞나요?

  • c
eugenie 댓글 1 좋아요 0 조회수 348

터미널 관련 질문이 있습니다

미해결

홍정모의 따라하며 배우는 C언어

Mac OS 에서 Visual Studio Code를 통해 c언어를 공부하고 있습니다. 기본 세팅은 다 맞췄는데 Run code를 하게 되면 항상 터미널에 결과가 나온 다음 사진처럼 %가 붙어서 나옵니다...이유가 뭔지 알 수 있을까요??

  • c
jiwon6760 댓글 1 좋아요 0 조회수 371

필드를 감추는 것이 중요한 이유?

미해결

코딩으로 학습하는 리팩토링

안녕하세요 강사님 레코드 캡슐화 설명을 들으면서 궁금한 점이 생겨 질문 드립니다. 강의에서, 퍼블릭 필드를 감추는 용도로 퍼블릭 메서드를 사용할 수 있는데, 그 이유로는 퍼블릭 필드(ex, String name) 와 퍼블릭 메서드(ex, String setLastName()) 의 이름이 완전히 동일하다는 보장이 없기 때문입니다. 위 문장을, 퍼블릭 메서드는 퍼블릭 필드를 감추는 용도로 사용할 수 있다고 이해했습니다. 궁금한 점은, 그렇다면 필드를 감추는 것이 중요한 이유는 클라이언트단에서 데이터 클래스의 필드에 무작위적인 접근을 방지하기 위함인가요? 무작위적인 필드의 접근은 데이터를 쉽게 수정할 수 있게 때문이라고 추측했습니다. 감사합니다.

  • intellij-idea
  • refactoring
  • 리팩토링
  • java
  • intellij
sunghoo.lim 댓글 1 좋아요 0 조회수 590

송아지 찾기 문제

해결됨

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

package dfs_and_bfs; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.Queue; public class Solution_7 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String positions[] = br.readLine().split(" "); int S = Integer.parseInt(positions[0]); int E = Integer.parseInt(positions[1]); Queue<Integer> queue = new LinkedList<>(); int levels[] = new int[10001]; boolean[] visited = new boolean[10001]; queue.offer(S); levels[S] = 0; visited[S] = true; int[] dis = {1, -1, 5}; while(!queue.isEmpty()) { int pos = queue.poll(); if(pos == E) { System.out.println(levels[pos]); break; }else { for(int i = 0; i < dis.length; i++) { int newPos = pos + dis[i]; if(newPos >=1 && newPos <= 10000 && !visited[newPos]) { queue.add(newPos); levels[newPos] = (levels[pos] + 1); visited[newPos] = true; } } } } } } 혹시 이런 식으로 구현하게 되면 levels 라는 배열이 필요하게 되는데 맞나요? 채점 사이트에서는 맞았다고 나옵니다

  • 코딩-테스트
  • 코테 준비 같이 해요!
  • java
cksg 댓글 1 좋아요 0 조회수 493

MemberRepositoryTest에서 BeanCreationException 등이 발생합니다.

해결됨

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

JPA와 DB 설정, 동작확인의 테스트코드를 실행하는 중 오류가 나서 질문 드립니다. 가끔 jpashop.mv .db를 삭제 후 처음부터 생성을 다시하면 첫 테스트 실행시에는 에러가 나지 않을때가 있으나, 두번째 실행부터는 같은 오류가 다시 반복됩니다. Rollback(false)를 사용하지 않아도 콘솔창에서 롤백한다는 메시지도 나오지 않았습니다. MVCC=true 부분도 삭제해봤고, application.yml이랑 build.gradle도 여러번 확인했습니다. MemberRepository 입니다. Member 클래스 입니다. 오류가 나는 테스트코드 입니다. 처음 생성시 Junit4로 만들었습니다. application.yml 입니다. build.gradle 입니다. h2는 실행중이며, 1.4.200 버전 입니다. 강의자료에서 해당 버전 사용하라고 명시되어 있어 다른 버전으로는 사용해보지 않았습니다. 아래는 오류 전문입니다. Error starting ApplicationContext. To display the condition evaluation report re-run your application with 'debug' enabled. 2023-01-25T20:44:53.061+09:00 ERROR 21512 --- [ Test worker] o.s.boot.SpringApplication : Application run failed org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not instantiate id generator [entity-name=jpabook.jpashop.Member] at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.initializeBean( AbstractAutowireCapableBeanFactory.java:1751 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.doCreateBean( AbstractAutowireCapableBeanFactory.java:599 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.createBean( AbstractAutowireCapableBeanFactory.java:521 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractBeanFactory.lambda$doGetBean$0( AbstractBeanFactory.java:326 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .DefaultSingletonBeanRegistry.getSingleton( DefaultSingletonBeanRegistry.java:234 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractBeanFactory.doGetBean( AbstractBeanFactory.java:324 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractBeanFactory.getBean( AbstractBeanFactory.java:200 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.context.support .AbstractApplicationContext.getBean( AbstractApplicationContext.java:1130 ) ~[spring-context-6.0.4.jar:6.0.4] at org.springframework.context.support .AbstractApplicationContext.finishBeanFactoryInitialization( AbstractApplicationContext.java:905 ) ~[spring-context-6.0.4.jar:6.0.4] at org.springframework.context.support .AbstractApplicationContext.refresh( AbstractApplicationContext.java:584 ) ~[spring-context-6.0.4.jar:6.0.4] at org.springframework.boot.SpringApplication.refresh( SpringApplication.java:730 ) ~[spring-boot-3.0.2.jar:3.0.2] at org.springframework.boot.SpringApplication.refreshContext( SpringApplication.java:432 ) ~[spring-boot-3.0.2.jar:3.0.2] at org.springframework.boot.SpringApplication.run ( SpringApplication.java:308 ) ~[spring-boot-3.0.2.jar:3.0.2] at org.springframework.boot.test.context.SpringBootContextLoader.lambda$loadContext$3( SpringBootContextLoader.java:137 ) ~[spring-boot-test-3.0.2.jar:3.0.2] at org.springframework.util.function.ThrowingSupplier.get( ThrowingSupplier.java:59 ) ~[spring-core-6.0.4.jar:6.0.4] at org.springframework.util.function.ThrowingSupplier.get( ThrowingSupplier.java:47 ) ~[spring-core-6.0.4.jar:6.0.4] at org.springframework.boot.SpringApplication.withHook( SpringApplication.java:1386 ) ~[spring-boot-3.0.2.jar:3.0.2] at org.springframework.boot.test.context.SpringBootContextLoader$ContextLoaderHook.run( SpringBootContextLoader.java:543 ) ~[spring-boot-test-3.0.2.jar:3.0.2] at org.springframework.boot.test.context.SpringBootContextLoader.loadContext( SpringBootContextLoader.java:137 ) ~[spring-boot-test-3.0.2.jar:3.0.2] at org.springframework.boot.test.context.SpringBootContextLoader.loadContext( SpringBootContextLoader.java:108 ) ~[spring-boot-test-3.0.2.jar:3.0.2] at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal( DefaultCacheAwareContextLoaderDelegate.java:184 ) ~[spring-test-6.0.4.jar:6.0.4] at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext( DefaultCacheAwareContextLoaderDelegate.java:118 ) ~[spring-test-6.0.4.jar:6.0.4] at org.springframework.test.context.support .DefaultTestContext.getApplicationContext( DefaultTestContext.java:127 ) ~[spring-test-6.0.4.jar:6.0.4] at org.springframework.test.context.web.ServletTestExecutionListener.setUpRequestContextIfNecessary( ServletTestExecutionListener.java:191 ) ~[spring-test-6.0.4.jar:6.0.4] at org.springframework.test.context.web.ServletTestExecutionListener.prepareTestInstance( ServletTestExecutionListener.java:130 ) ~[spring-test-6.0.4.jar:6.0.4] at org.springframework.test.context.TestContextManager.prepareTestInstance( TestContextManager.java:241 ) ~[spring-test-6.0.4.jar:6.0.4] at org.springframework.test.context.junit.jupiter.SpringExtension.postProcessTestInstance( SpringExtension.java:138 ) ~[spring-test-6.0.4.jar:6.0.4] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$invokeTestInstancePostProcessors$10( ClassBasedTestDescriptor.java:377 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.executeAndMaskThrowable( ClassBasedTestDescriptor.java:382 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$invokeTestInstancePostProcessors$11( ClassBasedTestDescriptor.java:377 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at java.base/java.util.stream.ReferencePipeline$3$1.accept( ReferencePipeline.java:197 ) ~[na:na] at java.base/java.util.stream.ReferencePipeline$2$1.accept( ReferencePipeline.java:179 ) ~[na:na] at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining( ArrayList.java:1625 ) ~[na:na] at java.base/java.util.stream.AbstractPipeline.copyInto( AbstractPipeline.java:509 ) ~[na:na] at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto( AbstractPipeline.java:499 ) ~[na:na] at java.base/java.util.stream.StreamSpliterators$WrappingSpliterator.forEachRemaining( StreamSpliterators.java:310 ) ~[na:na] at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining( Streams.java:735 ) ~[na:na] at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining( Streams.java:734 ) ~[na:na] at java.base/java.util.stream.ReferencePipeline$Head.forEach( ReferencePipeline.java:762 ) ~[na:na] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.invokeTestInstancePostProcessors( ClassBasedTestDescriptor.java:376 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$instantiateAndPostProcessTestInstance$6( ClassBasedTestDescriptor.java:289 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.instantiateAndPostProcessTestInstance( ClassBasedTestDescriptor.java:288 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$testInstancesProvider$4( ClassBasedTestDescriptor.java:278 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at java.base/java.util.Optional.orElseGet( Optional.java:364 ) ~[na:na] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$testInstancesProvider$5( ClassBasedTestDescriptor.java:277 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.execution.TestInstancesProvider.getTestInstances( TestInstancesProvider.java:31 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$prepare$0( TestMethodTestDescriptor.java:105 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.prepare( TestMethodTestDescriptor.java:104 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.prepare( TestMethodTestDescriptor.java:68 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$prepare$2( NodeTestTask.java:123 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.prepare( NodeTestTask.java:123 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.execute( NodeTestTask.java:90 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at java.base/java.util.ArrayList.forEach( ArrayList.java:1511 ) ~[na:na] at org.junit.platform.engine.support .hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll( SameThreadHierarchicalTestExecutorService.java:41 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$6( NodeTestTask.java:155 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$8( NodeTestTask.java:141 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.Node.around( Node.java:137 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$9( NodeTestTask.java:139 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.executeRecursively( NodeTestTask.java:138 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.execute( NodeTestTask.java:95 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at java.base/java.util.ArrayList.forEach( ArrayList.java:1511 ) ~[na:na] at org.junit.platform.engine.support .hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll( SameThreadHierarchicalTestExecutorService.java:41 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$6( NodeTestTask.java:155 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$8( NodeTestTask.java:141 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.Node.around( Node.java:137 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$9( NodeTestTask.java:139 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.executeRecursively( NodeTestTask.java:138 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.execute( NodeTestTask.java:95 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.SameThreadHierarchicalTestExecutorService.submit( SameThreadHierarchicalTestExecutorService.java:35 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.HierarchicalTestExecutor.execute( HierarchicalTestExecutor.java:57 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.HierarchicalTestEngine.execute( HierarchicalTestEngine.java:54 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute( EngineExecutionOrchestrator.java:107 ) ~[na:na] at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute( EngineExecutionOrchestrator.java:88 ) ~[na:na] at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0( EngineExecutionOrchestrator.java:54 ) ~[na:na] at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams( EngineExecutionOrchestrator.java:67 ) ~[na:na] at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute( EngineExecutionOrchestrator.java:52 ) ~[na:na] at org.junit.platform.launcher.core.DefaultLauncher.execute( DefaultLauncher.java:114 ) ~[na:na] at org.junit.platform.launcher.core.DefaultLauncher.execute( DefaultLauncher.java:86 ) ~[na:na] at org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute( DefaultLauncherSession.java:86 ) ~[na:na] at org.junit.platform.launcher.core.SessionPerRequestLauncher.execute( SessionPerRequestLauncher.java:53 ) ~[na:na] at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.processAllTestClasses( JUnitPlatformTestClassProcessor.java:99 ) ~[na:na] at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.access$000( JUnitPlatformTestClassProcessor.java:79 ) ~[na:na] at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor.stop( JUnitPlatformTestClassProcessor.java:75 ) ~[na:na] at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.stop( SuiteTestClassProcessor.java:62 ) ~[na:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke( NativeMethodAccessorImpl.java:77 ) ~[na:na] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke( DelegatingMethodAccessorImpl.java:43 ) ~[na:na] at java.base/java.lang.reflect.Method.invoke( Method.java:568 ) ~[na:na] at org.gradle.internal.dispatch.ReflectionDispatch.dispatch( ReflectionDispatch.java:36 ) ~[na:na] at org.gradle.internal.dispatch.ReflectionDispatch.dispatch( ReflectionDispatch.java:24 ) ~[na:na] at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch( ContextClassLoaderDispatch.java:33 ) ~[na:na] at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke( ProxyDispatchAdapter.java:94 ) ~[na:na] at jdk.proxy1/jdk.proxy1.$Proxy2.stop(Unknown Source) ~[na:na] at org.gradle.api.internal.tasks.testing.worker.TestWorker$3.run( TestWorker.java:193 ) ~[na:na] at org.gradle.api.internal.tasks.testing.worker.TestWorker.executeAndMaintainThreadName( TestWorker.java:129 ) ~[na:na] at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute( TestWorker.java:100 ) ~[na:na] at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute( TestWorker.java:60 ) ~[na:na] at org.gradle.process.internal.worker.child.ActionExecutionWorker.execute( ActionExecutionWorker.java:56 ) ~[na:na] at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call ( SystemApplicationClassLoaderWorker.java:113 ) ~[na:na] at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call ( SystemApplicationClassLoaderWorker.java:65 ) ~[na:na] at worker.org.gradle.process.internal.worker.GradleWorkerMain.run ( GradleWorkerMain.java:69 ) ~[gradle-worker.jar:na] at worker.org .gradle.process.internal.worker.GradleWorkerMain.main( GradleWorkerMain.java:74 ) ~[gradle-worker.jar:na] Caused by: jakarta.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not instantiate id generator [entity-name=jpabook.jpashop.Member] at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory( AbstractEntityManagerFactoryBean.java:421 ) ~[spring-orm-6.0.4.jar:6.0.4] at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet( AbstractEntityManagerFactoryBean.java:396 ) ~[spring-orm-6.0.4.jar:6.0.4] at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet( LocalContainerEntityManagerFactoryBean.java:352 ) ~[spring-orm-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.invokeInitMethods( AbstractAutowireCapableBeanFactory.java:1797 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.initializeBean( AbstractAutowireCapableBeanFactory.java:1747 ) ~[spring-beans-6.0.4.jar:6.0.4] ... 108 common frames omitted Caused by: org.hibernate.MappingException: Could not instantiate id generator [entity-name=jpabook.jpashop.Member] at org.hibernate.id .factory.internal.StandardIdentifierGeneratorFactory.createIdentifierGenerator( StandardIdentifierGeneratorFactory.java:222 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.mapping.SimpleValue.createIdentifierGenerator( SimpleValue.java:515 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.mapping.SimpleValue.createIdentifierGenerator( SimpleValue.java:372 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.internal.SessionFactoryImpl.lambda$new$1( SessionFactoryImpl.java:293 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept( ForEachOps.java:183 ) ~[na:na] at java.base/java.util.stream.ReferencePipeline$2$1.accept( ReferencePipeline.java:179 ) ~[na:na] at java.base/java.util.HashMap$ValueSpliterator.forEachRemaining( HashMap.java:1779 ) ~[na:na] at java.base/java.util.stream.AbstractPipeline.copyInto( AbstractPipeline.java:509 ) ~[na:na] at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto( AbstractPipeline.java:499 ) ~[na:na] at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential( ForEachOps.java:150 ) ~[na:na] at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential( ForEachOps.java:173 ) ~[na:na] at java.base/java.util.stream.AbstractPipeline.evaluate( AbstractPipeline.java:234 ) ~[na:na] at java.base/java.util.stream.ReferencePipeline.forEach( ReferencePipeline.java:596 ) ~[na:na] at org.hibernate.internal.SessionFactoryImpl.<init>( SessionFactoryImpl.java:292 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build ( SessionFactoryBuilderImpl.java:415 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build ( EntityManagerFactoryBuilderImpl.java:1425 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory( SpringHibernateJpaPersistenceProvider.java:66 ) ~[spring-orm-6.0.4.jar:6.0.4] at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory( LocalContainerEntityManagerFactoryBean.java:376 ) ~[spring-orm-6.0.4.jar:6.0.4] at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory( AbstractEntityManagerFactoryBean.java:409 ) ~[spring-orm-6.0.4.jar:6.0.4] ... 112 common frames omitted Caused by: org.hibernate.HibernateException: Could not fetch the SequenceInformation from the database at org.hibernate.engine.jdbc.env.internal.ExtractedDatabaseMetaDataImpl.sequenceInformationList( ExtractedDatabaseMetaDataImpl.java:302 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.engine.jdbc.env.internal.ExtractedDatabaseMetaDataImpl.getSequenceInformationList( ExtractedDatabaseMetaDataImpl.java:151 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.id .enhanced.SequenceStyleGenerator.getSequenceIncrementValue( SequenceStyleGenerator.java:561 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.id .enhanced.SequenceStyleGenerator.configure( SequenceStyleGenerator.java:210 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.id .factory.internal.StandardIdentifierGeneratorFactory.createIdentifierGenerator( StandardIdentifierGeneratorFactory.java:217 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] ... 130 common frames omitted Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Column "start_value" not found [42122-214] at org.h2.message.DbException.getJdbcSQLException( DbException.java:502 ) ~[h2-2.1.214.jar:2.1.214] at org.h2.message.DbException.getJdbcSQLException( DbException.java:477 ) ~[h2-2.1.214.jar:2.1.214] at org.h2.message.DbException.get( DbException.java:223 ) ~[h2-2.1.214.jar:2.1.214] at org.h2.message.DbException.get( DbException.java:199 ) ~[h2-2.1.214.jar:2.1.214] at org.h2.jdbc.JdbcResultSet.getColumnIndex( JdbcResultSet.java:3492 ) ~[h2-2.1.214.jar:2.1.214] at org.h2.jdbc.JdbcResultSet.getLong( JdbcResultSet.java:745 ) ~[h2-2.1.214.jar:2.1.214] at com.zaxxer.hikari.pool.HikariProxyResultSet.getLong( HikariProxyResultSet.java ) ~[HikariCP-5.0.1.jar:na] at org.hibernate.tool.schema.extract.internal.SequenceInformationExtractorLegacyImpl.resultSetStartValueSize( SequenceInformationExtractorLegacyImpl.java:110 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.tool.schema.extract.internal.SequenceInformationExtractorLegacyImpl.lambda$extractMetadata$0( SequenceInformationExtractorLegacyImpl.java:54 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.tool.schema.extract.spi.ExtractionContext.getQueryResults( ExtractionContext.java:50 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.tool.schema.extract.internal.SequenceInformationExtractorLegacyImpl.extractMetadata( SequenceInformationExtractorLegacyImpl.java:39 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.engine.jdbc.env.internal.ExtractedDatabaseMetaDataImpl.sequenceInformationList( ExtractedDatabaseMetaDataImpl.java:286 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] ... 134 common frames omitted ============================ CONDITIONS EVALUATION REPORT ============================ Positive matches: ----------------- None Negative matches: ----------------- None Exclusions: ----------- None Unconditional classes: ---------------------- None 2023-01-25T20:44:53.094+09:00 ERROR 21512 --- [ Test worker] o.s.test.context.TestContextManager : Caught exception while allowing TestExecutionListener [org.springframework.test.context.web.ServletTestExecutionListener] to prepare test instance [jpabook.jpashop.MemberRepositoryTest@5bd3ca3c] java.lang.IllegalStateException: Failed to load ApplicationContext for [WebMergedContextConfiguration@37f71c05 testClass = jpabook.jpashop.MemberRepositoryTest, locations = [], classes = [jpabook.jpashop.JpashopApplication], contextInitializerClasses = [], activeProfiles = [], propertySourceLocations = [], propertySourceProperties = ["org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true"], contextCustomizers = [org.springframework.boot.test.autoconfigure.actuate.observability.ObservabilityContextCustomizerFactory$DisableObservabilityContextCustomizer@9da1, org.springframework.boot.test.autoconfigure.properties .PropertyMappingContextCustomizer@0, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizerFactory$Customizer@1338fb5, org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@fade1fc, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@7103cb56, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@57ea113a, org.springframework.test.context.web.socket.MockServerContainerContextCustomizer@2072acb2, org.springframework.boot.test.context.SpringBootTestAnnotation@b8b80442], resourceBasePath = "src/main/webapp", contextLoader = org.springframework.boot.test.context.SpringBootContextLoader, parent = null] at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext( DefaultCacheAwareContextLoaderDelegate.java:142 ) ~[spring-test-6.0.4.jar:6.0.4] at org.springframework.test.context.support .DefaultTestContext.getApplicationContext( DefaultTestContext.java:127 ) ~[spring-test-6.0.4.jar:6.0.4] at org.springframework.test.context.web.ServletTestExecutionListener.setUpRequestContextIfNecessary( ServletTestExecutionListener.java:191 ) ~[spring-test-6.0.4.jar:6.0.4] at org.springframework.test.context.web.ServletTestExecutionListener.prepareTestInstance( ServletTestExecutionListener.java:130 ) ~[spring-test-6.0.4.jar:6.0.4] at org.springframework.test.context.TestContextManager.prepareTestInstance( TestContextManager.java:241 ) ~[spring-test-6.0.4.jar:6.0.4] at org.springframework.test.context.junit.jupiter.SpringExtension.postProcessTestInstance( SpringExtension.java:138 ) ~[spring-test-6.0.4.jar:6.0.4] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$invokeTestInstancePostProcessors$10( ClassBasedTestDescriptor.java:377 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.executeAndMaskThrowable( ClassBasedTestDescriptor.java:382 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$invokeTestInstancePostProcessors$11( ClassBasedTestDescriptor.java:377 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at java.base/java.util.stream.ReferencePipeline$3$1.accept( ReferencePipeline.java:197 ) ~[na:na] at java.base/java.util.stream.ReferencePipeline$2$1.accept( ReferencePipeline.java:179 ) ~[na:na] at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining( ArrayList.java:1625 ) ~[na:na] at java.base/java.util.stream.AbstractPipeline.copyInto( AbstractPipeline.java:509 ) ~[na:na] at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto( AbstractPipeline.java:499 ) ~[na:na] at java.base/java.util.stream.StreamSpliterators$WrappingSpliterator.forEachRemaining( StreamSpliterators.java:310 ) ~[na:na] at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining( Streams.java:735 ) ~[na:na] at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining( Streams.java:734 ) ~[na:na] at java.base/java.util.stream.ReferencePipeline$Head.forEach( ReferencePipeline.java:762 ) ~[na:na] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.invokeTestInstancePostProcessors( ClassBasedTestDescriptor.java:376 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$instantiateAndPostProcessTestInstance$6( ClassBasedTestDescriptor.java:289 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.instantiateAndPostProcessTestInstance( ClassBasedTestDescriptor.java:288 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$testInstancesProvider$4( ClassBasedTestDescriptor.java:278 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at java.base/java.util.Optional.orElseGet( Optional.java:364 ) ~[na:na] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$testInstancesProvider$5( ClassBasedTestDescriptor.java:277 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.execution.TestInstancesProvider.getTestInstances( TestInstancesProvider.java:31 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$prepare$0( TestMethodTestDescriptor.java:105 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.prepare( TestMethodTestDescriptor.java:104 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.prepare( TestMethodTestDescriptor.java:68 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$prepare$2( NodeTestTask.java:123 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.prepare( NodeTestTask.java:123 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.execute( NodeTestTask.java:90 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at java.base/java.util.ArrayList.forEach( ArrayList.java:1511 ) ~[na:na] at org.junit.platform.engine.support .hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll( SameThreadHierarchicalTestExecutorService.java:41 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$6( NodeTestTask.java:155 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$8( NodeTestTask.java:141 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.Node.around( Node.java:137 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$9( NodeTestTask.java:139 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.executeRecursively( NodeTestTask.java:138 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.execute( NodeTestTask.java:95 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at java.base/java.util.ArrayList.forEach( ArrayList.java:1511 ) ~[na:na] at org.junit.platform.engine.support .hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll( SameThreadHierarchicalTestExecutorService.java:41 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$6( NodeTestTask.java:155 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$8( NodeTestTask.java:141 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.Node.around( Node.java:137 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$9( NodeTestTask.java:139 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.executeRecursively( NodeTestTask.java:138 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.execute( NodeTestTask.java:95 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.SameThreadHierarchicalTestExecutorService.submit( SameThreadHierarchicalTestExecutorService.java:35 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.HierarchicalTestExecutor.execute( HierarchicalTestExecutor.java:57 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.HierarchicalTestEngine.execute( HierarchicalTestEngine.java:54 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute( EngineExecutionOrchestrator.java:107 ) ~[na:na] at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute( EngineExecutionOrchestrator.java:88 ) ~[na:na] at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0( EngineExecutionOrchestrator.java:54 ) ~[na:na] at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams( EngineExecutionOrchestrator.java:67 ) ~[na:na] at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute( EngineExecutionOrchestrator.java:52 ) ~[na:na] at org.junit.platform.launcher.core.DefaultLauncher.execute( DefaultLauncher.java:114 ) ~[na:na] at org.junit.platform.launcher.core.DefaultLauncher.execute( DefaultLauncher.java:86 ) ~[na:na] at org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute( DefaultLauncherSession.java:86 ) ~[na:na] at org.junit.platform.launcher.core.SessionPerRequestLauncher.execute( SessionPerRequestLauncher.java:53 ) ~[na:na] at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.processAllTestClasses( JUnitPlatformTestClassProcessor.java:99 ) ~[na:na] at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.access$000( JUnitPlatformTestClassProcessor.java:79 ) ~[na:na] at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor.stop( JUnitPlatformTestClassProcessor.java:75 ) ~[na:na] at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.stop( SuiteTestClassProcessor.java:62 ) ~[na:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke( NativeMethodAccessorImpl.java:77 ) ~[na:na] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke( DelegatingMethodAccessorImpl.java:43 ) ~[na:na] at java.base/java.lang.reflect.Method.invoke( Method.java:568 ) ~[na:na] at org.gradle.internal.dispatch.ReflectionDispatch.dispatch( ReflectionDispatch.java:36 ) ~[na:na] at org.gradle.internal.dispatch.ReflectionDispatch.dispatch( ReflectionDispatch.java:24 ) ~[na:na] at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch( ContextClassLoaderDispatch.java:33 ) ~[na:na] at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke( ProxyDispatchAdapter.java:94 ) ~[na:na] at jdk.proxy1/jdk.proxy1.$Proxy2.stop(Unknown Source) ~[na:na] at org.gradle.api.internal.tasks.testing.worker.TestWorker$3.run( TestWorker.java:193 ) ~[na:na] at org.gradle.api.internal.tasks.testing.worker.TestWorker.executeAndMaintainThreadName( TestWorker.java:129 ) ~[na:na] at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute( TestWorker.java:100 ) ~[na:na] at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute( TestWorker.java:60 ) ~[na:na] at org.gradle.process.internal.worker.child.ActionExecutionWorker.execute( ActionExecutionWorker.java:56 ) ~[na:na] at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call ( SystemApplicationClassLoaderWorker.java:113 ) ~[na:na] at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call ( SystemApplicationClassLoaderWorker.java:65 ) ~[na:na] at worker.org.gradle.process.internal.worker.GradleWorkerMain.run ( GradleWorkerMain.java:69 ) ~[gradle-worker.jar:na] at worker.org .gradle.process.internal.worker.GradleWorkerMain.main( GradleWorkerMain.java:74 ) ~[gradle-worker.jar:na] Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not instantiate id generator [entity-name=jpabook.jpashop.Member] at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.initializeBean( AbstractAutowireCapableBeanFactory.java:1751 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.doCreateBean( AbstractAutowireCapableBeanFactory.java:599 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.createBean( AbstractAutowireCapableBeanFactory.java:521 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractBeanFactory.lambda$doGetBean$0( AbstractBeanFactory.java:326 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .DefaultSingletonBeanRegistry.getSingleton( DefaultSingletonBeanRegistry.java:234 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractBeanFactory.doGetBean( AbstractBeanFactory.java:324 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractBeanFactory.getBean( AbstractBeanFactory.java:200 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.context.support .AbstractApplicationContext.getBean( AbstractApplicationContext.java:1130 ) ~[spring-context-6.0.4.jar:6.0.4] at org.springframework.context.support .AbstractApplicationContext.finishBeanFactoryInitialization( AbstractApplicationContext.java:905 ) ~[spring-context-6.0.4.jar:6.0.4] at org.springframework.context.support .AbstractApplicationContext.refresh( AbstractApplicationContext.java:584 ) ~[spring-context-6.0.4.jar:6.0.4] at org.springframework.boot.SpringApplication.refresh( SpringApplication.java:730 ) ~[spring-boot-3.0.2.jar:3.0.2] at org.springframework.boot.SpringApplication.refreshContext( SpringApplication.java:432 ) ~[spring-boot-3.0.2.jar:3.0.2] at org.springframework.boot.SpringApplication.run ( SpringApplication.java:308 ) ~[spring-boot-3.0.2.jar:3.0.2] at org.springframework.boot.test.context.SpringBootContextLoader.lambda$loadContext$3( SpringBootContextLoader.java:137 ) ~[spring-boot-test-3.0.2.jar:3.0.2] at org.springframework.util.function.ThrowingSupplier.get( ThrowingSupplier.java:59 ) ~[spring-core-6.0.4.jar:6.0.4] at org.springframework.util.function.ThrowingSupplier.get( ThrowingSupplier.java:47 ) ~[spring-core-6.0.4.jar:6.0.4] at org.springframework.boot.SpringApplication.withHook( SpringApplication.java:1386 ) ~[spring-boot-3.0.2.jar:3.0.2] at org.springframework.boot.test.context.SpringBootContextLoader$ContextLoaderHook.run( SpringBootContextLoader.java:543 ) ~[spring-boot-test-3.0.2.jar:3.0.2] at org.springframework.boot.test.context.SpringBootContextLoader.loadContext( SpringBootContextLoader.java:137 ) ~[spring-boot-test-3.0.2.jar:3.0.2] at org.springframework.boot.test.context.SpringBootContextLoader.loadContext( SpringBootContextLoader.java:108 ) ~[spring-boot-test-3.0.2.jar:3.0.2] at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal( DefaultCacheAwareContextLoaderDelegate.java:184 ) ~[spring-test-6.0.4.jar:6.0.4] at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext( DefaultCacheAwareContextLoaderDelegate.java:118 ) ~[spring-test-6.0.4.jar:6.0.4] ... 87 common frames omitted Caused by: jakarta.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not instantiate id generator [entity-name=jpabook.jpashop.Member] at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory( AbstractEntityManagerFactoryBean.java:421 ) ~[spring-orm-6.0.4.jar:6.0.4] at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet( AbstractEntityManagerFactoryBean.java:396 ) ~[spring-orm-6.0.4.jar:6.0.4] at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet( LocalContainerEntityManagerFactoryBean.java:352 ) ~[spring-orm-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.invokeInitMethods( AbstractAutowireCapableBeanFactory.java:1797 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.initializeBean( AbstractAutowireCapableBeanFactory.java:1747 ) ~[spring-beans-6.0.4.jar:6.0.4] ... 108 common frames omitted Caused by: org.hibernate.MappingException: Could not instantiate id generator [entity-name=jpabook.jpashop.Member] at org.hibernate.id .factory.internal.StandardIdentifierGeneratorFactory.createIdentifierGenerator( StandardIdentifierGeneratorFactory.java:222 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.mapping.SimpleValue.createIdentifierGenerator( SimpleValue.java:515 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.mapping.SimpleValue.createIdentifierGenerator( SimpleValue.java:372 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.internal.SessionFactoryImpl.lambda$new$1( SessionFactoryImpl.java:293 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept( ForEachOps.java:183 ) ~[na:na] at java.base/java.util.stream.ReferencePipeline$2$1.accept( ReferencePipeline.java:179 ) ~[na:na] at java.base/java.util.HashMap$ValueSpliterator.forEachRemaining( HashMap.java:1779 ) ~[na:na] at java.base/java.util.stream.AbstractPipeline.copyInto( AbstractPipeline.java:509 ) ~[na:na] at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto( AbstractPipeline.java:499 ) ~[na:na] at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential( ForEachOps.java:150 ) ~[na:na] at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential( ForEachOps.java:173 ) ~[na:na] at java.base/java.util.stream.AbstractPipeline.evaluate( AbstractPipeline.java:234 ) ~[na:na] at java.base/java.util.stream.ReferencePipeline.forEach( ReferencePipeline.java:596 ) ~[na:na] at org.hibernate.internal.SessionFactoryImpl.<init>( SessionFactoryImpl.java:292 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build ( SessionFactoryBuilderImpl.java:415 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build ( EntityManagerFactoryBuilderImpl.java:1425 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory( SpringHibernateJpaPersistenceProvider.java:66 ) ~[spring-orm-6.0.4.jar:6.0.4] at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory( LocalContainerEntityManagerFactoryBean.java:376 ) ~[spring-orm-6.0.4.jar:6.0.4] at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory( AbstractEntityManagerFactoryBean.java:409 ) ~[spring-orm-6.0.4.jar:6.0.4] ... 112 common frames omitted Caused by: org.hibernate.HibernateException: Could not fetch the SequenceInformation from the database at org.hibernate.engine.jdbc.env.internal.ExtractedDatabaseMetaDataImpl.sequenceInformationList( ExtractedDatabaseMetaDataImpl.java:302 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.engine.jdbc.env.internal.ExtractedDatabaseMetaDataImpl.getSequenceInformationList( ExtractedDatabaseMetaDataImpl.java:151 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.id .enhanced.SequenceStyleGenerator.getSequenceIncrementValue( SequenceStyleGenerator.java:561 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.id .enhanced.SequenceStyleGenerator.configure( SequenceStyleGenerator.java:210 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.id .factory.internal.StandardIdentifierGeneratorFactory.createIdentifierGenerator( StandardIdentifierGeneratorFactory.java:217 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] ... 130 common frames omitted Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Column "start_value" not found [42122-214] at org.h2.message.DbException.getJdbcSQLException( DbException.java:502 ) ~[h2-2.1.214.jar:2.1.214] at org.h2.message.DbException.getJdbcSQLException( DbException.java:477 ) ~[h2-2.1.214.jar:2.1.214] at org.h2.message.DbException.get( DbException.java:223 ) ~[h2-2.1.214.jar:2.1.214] at org.h2.message.DbException.get( DbException.java:199 ) ~[h2-2.1.214.jar:2.1.214] at org.h2.jdbc.JdbcResultSet.getColumnIndex( JdbcResultSet.java:3492 ) ~[h2-2.1.214.jar:2.1.214] at org.h2.jdbc.JdbcResultSet.getLong( JdbcResultSet.java:745 ) ~[h2-2.1.214.jar:2.1.214] at com.zaxxer.hikari.pool.HikariProxyResultSet.getLong( HikariProxyResultSet.java ) ~[HikariCP-5.0.1.jar:na] at org.hibernate.tool.schema.extract.internal.SequenceInformationExtractorLegacyImpl.resultSetStartValueSize( SequenceInformationExtractorLegacyImpl.java:110 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.tool.schema.extract.internal.SequenceInformationExtractorLegacyImpl.lambda$extractMetadata$0( SequenceInformationExtractorLegacyImpl.java:54 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.tool.schema.extract.spi.ExtractionContext.getQueryResults( ExtractionContext.java:50 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.tool.schema.extract.internal.SequenceInformationExtractorLegacyImpl.extractMetadata( SequenceInformationExtractorLegacyImpl.java:39 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.engine.jdbc.env.internal.ExtractedDatabaseMetaDataImpl.sequenceInformationList( ExtractedDatabaseMetaDataImpl.java:286 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] ... 134 common frames omitted Failed to load ApplicationContext for [WebMergedContextConfiguration@37f71c05 testClass = jpabook.jpashop.MemberRepositoryTest, locations = [], classes = [jpabook.jpashop.JpashopApplication], contextInitializerClasses = [], activeProfiles = [], propertySourceLocations = [], propertySourceProperties = ["org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true"], contextCustomizers = [org.springframework.boot.test.autoconfigure.actuate.observability.ObservabilityContextCustomizerFactory$DisableObservabilityContextCustomizer@9da1, org.springframework.boot.test.autoconfigure.properties .PropertyMappingContextCustomizer@0, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizerFactory$Customizer@1338fb5, org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@fade1fc, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@7103cb56, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@57ea113a, org.springframework.test.context.web.socket.MockServerContainerContextCustomizer@2072acb2, org.springframework.boot.test.context.SpringBootTestAnnotation@b8b80442], resourceBasePath = "src/main/webapp", contextLoader = org.springframework.boot.test.context.SpringBootContextLoader, parent = null] java.lang.IllegalStateException: Failed to load ApplicationContext for [WebMergedContextConfiguration@37f71c05 testClass = jpabook.jpashop.MemberRepositoryTest, locations = [], classes = [jpabook.jpashop.JpashopApplication], contextInitializerClasses = [], activeProfiles = [], propertySourceLocations = [], propertySourceProperties = ["org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true"], contextCustomizers = [org.springframework.boot.test.autoconfigure.actuate.observability.ObservabilityContextCustomizerFactory$DisableObservabilityContextCustomizer@9da1, org.springframework.boot.test.autoconfigure.properties .PropertyMappingContextCustomizer@0, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizerFactory$Customizer@1338fb5, org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@fade1fc, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@7103cb56, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@57ea113a, org.springframework.test.context.web.socket.MockServerContainerContextCustomizer@2072acb2, org.springframework.boot.test.context.SpringBootTestAnnotation@b8b80442], resourceBasePath = "src/main/webapp", contextLoader = org.springframework.boot.test.context.SpringBootContextLoader, parent = null] at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext( DefaultCacheAwareContextLoaderDelegate.java:142 ) at org.springframework.test.context.support .DefaultTestContext.getApplicationContext( DefaultTestContext.java:127 ) at org.springframework.test.context.web.ServletTestExecutionListener.setUpRequestContextIfNecessary( ServletTestExecutionListener.java:191 ) at org.springframework.test.context.web.ServletTestExecutionListener.prepareTestInstance( ServletTestExecutionListener.java:130 ) at org.springframework.test.context.TestContextManager.prepareTestInstance( TestContextManager.java:241 ) at org.springframework.test.context.junit.jupiter.SpringExtension.postProcessTestInstance( SpringExtension.java:138 ) at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$invokeTestInstancePostProcessors$10( ClassBasedTestDescriptor.java:377 ) at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.executeAndMaskThrowable( ClassBasedTestDescriptor.java:382 ) at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$invokeTestInstancePostProcessors$11( ClassBasedTestDescriptor.java:377 ) at java.base/java.util.stream.ReferencePipeline$3$1.accept( ReferencePipeline.java:197 ) at java.base/java.util.stream.ReferencePipeline$2$1.accept( ReferencePipeline.java:179 ) at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining( ArrayList.java:1625 ) at java.base/java.util.stream.AbstractPipeline.copyInto( AbstractPipeline.java:509 ) at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto( AbstractPipeline.java:499 ) at java.base/java.util.stream.StreamSpliterators$WrappingSpliterator.forEachRemaining( StreamSpliterators.java:310 ) at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining( Streams.java:735 ) at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining( Streams.java:734 ) at java.base/java.util.stream.ReferencePipeline$Head.forEach( ReferencePipeline.java:762 ) at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.invokeTestInstancePostProcessors( ClassBasedTestDescriptor.java:376 ) at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$instantiateAndPostProcessTestInstance$6( ClassBasedTestDescriptor.java:289 ) at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.instantiateAndPostProcessTestInstance( ClassBasedTestDescriptor.java:288 ) at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$testInstancesProvider$4( ClassBasedTestDescriptor.java:278 ) at java.base/java.util.Optional.orElseGet( Optional.java:364 ) at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$testInstancesProvider$5( ClassBasedTestDescriptor.java:277 ) at org.junit.jupiter.engine.execution.TestInstancesProvider.getTestInstances( TestInstancesProvider.java:31 ) at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$prepare$0( TestMethodTestDescriptor.java:105 ) at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.prepare( TestMethodTestDescriptor.java:104 ) at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.prepare( TestMethodTestDescriptor.java:68 ) at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$prepare$2( NodeTestTask.java:123 ) at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) at org.junit.platform.engine.support .hierarchical.NodeTestTask.prepare( NodeTestTask.java:123 ) at org.junit.platform.engine.support .hierarchical.NodeTestTask.execute( NodeTestTask.java:90 ) at java.base/java.util.ArrayList.forEach( ArrayList.java:1511 ) at org.junit.platform.engine.support .hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll( SameThreadHierarchicalTestExecutorService.java:41 ) at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$6( NodeTestTask.java:155 ) at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$8( NodeTestTask.java:141 ) at org.junit.platform.engine.support .hierarchical.Node.around( Node.java:137 ) at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$9( NodeTestTask.java:139 ) at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) at org.junit.platform.engine.support .hierarchical.NodeTestTask.executeRecursively( NodeTestTask.java:138 ) at org.junit.platform.engine.support .hierarchical.NodeTestTask.execute( NodeTestTask.java:95 ) at java.base/java.util.ArrayList.forEach( ArrayList.java:1511 ) at org.junit.platform.engine.support .hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll( SameThreadHierarchicalTestExecutorService.java:41 ) at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$6( NodeTestTask.java:155 ) at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$8( NodeTestTask.java:141 ) at org.junit.platform.engine.support .hierarchical.Node.around( Node.java:137 ) at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$9( NodeTestTask.java:139 ) at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) at org.junit.platform.engine.support .hierarchical.NodeTestTask.executeRecursively( NodeTestTask.java:138 ) at org.junit.platform.engine.support .hierarchical.NodeTestTask.execute( NodeTestTask.java:95 ) at org.junit.platform.engine.support .hierarchical.SameThreadHierarchicalTestExecutorService.submit( SameThreadHierarchicalTestExecutorService.java:35 ) at org.junit.platform.engine.support .hierarchical.HierarchicalTestExecutor.execute( HierarchicalTestExecutor.java:57 ) at org.junit.platform.engine.support .hierarchical.HierarchicalTestEngine.execute( HierarchicalTestEngine.java:54 ) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute( EngineExecutionOrchestrator.java:107 ) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute( EngineExecutionOrchestrator.java:88 ) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0( EngineExecutionOrchestrator.java:54 ) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams( EngineExecutionOrchestrator.java:67 ) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute( EngineExecutionOrchestrator.java:52 ) at org.junit.platform.launcher.core.DefaultLauncher.execute( DefaultLauncher.java:114 ) at org.junit.platform.launcher.core.DefaultLauncher.execute( DefaultLauncher.java:86 ) at org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute( DefaultLauncherSession.java:86 ) at org.junit.platform.launcher.core.SessionPerRequestLauncher.execute( SessionPerRequestLauncher.java:53 ) at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.processAllTestClasses( JUnitPlatformTestClassProcessor.java:99 ) at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.access$000( JUnitPlatformTestClassProcessor.java:79 ) at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor.stop( JUnitPlatformTestClassProcessor.java:75 ) at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.stop( SuiteTestClassProcessor.java:62 ) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke( NativeMethodAccessorImpl.java:77 ) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke( DelegatingMethodAccessorImpl.java:43 ) at java.base/java.lang.reflect.Method.invoke( Method.java:568 ) at org.gradle.internal.dispatch.ReflectionDispatch.dispatch( ReflectionDispatch.java:36 ) at org.gradle.internal.dispatch.ReflectionDispatch.dispatch( ReflectionDispatch.java:24 ) at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch( ContextClassLoaderDispatch.java:33 ) at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke( ProxyDispatchAdapter.java:94 ) at jdk.proxy1/jdk.proxy1.$Proxy2.stop(Unknown Source) at org.gradle.api.internal.tasks.testing.worker.TestWorker$3.run( TestWorker.java:193 ) at org.gradle.api.internal.tasks.testing.worker.TestWorker.executeAndMaintainThreadName( TestWorker.java:129 ) at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute( TestWorker.java:100 ) at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute( TestWorker.java:60 ) at org.gradle.process.internal.worker.child.ActionExecutionWorker.execute( ActionExecutionWorker.java:56 ) at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call ( SystemApplicationClassLoaderWorker.java:113 ) at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call ( SystemApplicationClassLoaderWorker.java:65 ) at worker.org.gradle.process.internal.worker.GradleWorkerMain.run ( GradleWorkerMain.java:69 ) at worker.org .gradle.process.internal.worker.GradleWorkerMain.main( GradleWorkerMain.java:74 ) Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not instantiate id generator [entity-name=jpabook.jpashop.Member] at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean( AbstractAutowireCapableBeanFactory.java:1751 ) at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean( AbstractAutowireCapableBeanFactory.java:599 ) at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean( AbstractAutowireCapableBeanFactory.java:521 ) at app//org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0( AbstractBeanFactory.java:326 ) at app//org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton( DefaultSingletonBeanRegistry.java:234 ) at app//org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean( AbstractBeanFactory.java:324 ) at app//org.springframework.beans.factory.support.AbstractBeanFactory.getBean( AbstractBeanFactory.java:200 ) at app//org.springframework.context.support.AbstractApplicationContext.getBean( AbstractApplicationContext.java:1130 ) at app//org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization( AbstractApplicationContext.java:905 ) at app//org.springframework.context.support.AbstractApplicationContext.refresh( AbstractApplicationContext.java:584 ) at app//org.springframework.boot.SpringApplication.refresh( SpringApplication.java:730 ) at app//org.springframework.boot.SpringApplication.refreshContext( SpringApplication.java:432 ) at app//org.springframework.boot.SpringApplication.run( SpringApplication.java:308 ) at app//org.springframework.boot.test.context.SpringBootContextLoader.lambda$loadContext$3( SpringBootContextLoader.java:137 ) at app//org.springframework.util.function.ThrowingSupplier.get( ThrowingSupplier.java:59 ) at app//org.springframework.util.function.ThrowingSupplier.get( ThrowingSupplier.java:47 ) at app//org.springframework.boot.SpringApplication.withHook( SpringApplication.java:1386 ) at app//org.springframework.boot.test.context.SpringBootContextLoader$ContextLoaderHook.run( SpringBootContextLoader.java:543 ) at app//org.springframework.boot.test.context.SpringBootContextLoader.loadContext( SpringBootContextLoader.java:137 ) at app//org.springframework.boot.test.context.SpringBootContextLoader.loadContext( SpringBootContextLoader.java:108 ) at app//org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal( DefaultCacheAwareContextLoaderDelegate.java:184 ) at app//org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext( DefaultCacheAwareContextLoaderDelegate.java:118 ) ... 87 more Caused by: jakarta.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not instantiate id generator [entity-name=jpabook.jpashop.Member] at app//org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory( AbstractEntityManagerFactoryBean.java:421 ) at app//org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet( AbstractEntityManagerFactoryBean.java:396 ) at app//org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet( LocalContainerEntityManagerFactoryBean.java:352 ) at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods( AbstractAutowireCapableBeanFactory.java:1797 ) at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean( AbstractAutowireCapableBeanFactory.java:1747 ) ... 108 more Caused by: org.hibernate.MappingException: Could not instantiate id generator [entity-name=jpabook.jpashop.Member] at app//org.hibernate.id.factory.internal.StandardIdentifierGeneratorFactory.createIdentifierGenerator( StandardIdentifierGeneratorFactory.java:222 ) at app//org.hibernate.mapping.SimpleValue.createIdentifierGenerator( SimpleValue.java:515 ) at app//org.hibernate.mapping.SimpleValue.createIdentifierGenerator( SimpleValue.java:372 ) at app//org.hibernate.internal.SessionFactoryImpl.lambda$new$1( SessionFactoryImpl.java:293 ) at java.base@17.0.2/ java.util.stream .ForEachOps$ForEachOp$OfRef.accept( ForEachOps.java:183 ) at java.base@17.0.2/ java.util.stream .ReferencePipeline$2$1.accept( ReferencePipeline.java:179 ) at java.base@17.0.2/java.util.HashMap$ValueSpliterator.forEachRemaining( HashMap.java:1779 ) at java.base@17.0.2/ java.util.stream .AbstractPipeline.copyInto( AbstractPipeline.java:509 ) at java.base@17.0.2/ java.util.stream .AbstractPipeline.wrapAndCopyInto( AbstractPipeline.java:499 ) at java.base@17.0.2/ java.util.stream .ForEachOps$ForEachOp.evaluateSequential( ForEachOps.java:150 ) at java.base@17.0.2/ java.util.stream .ForEachOps$ForEachOp$OfRef.evaluateSequential( ForEachOps.java:173 ) at java.base@17.0.2/ java.util.stream .AbstractPipeline.evaluate( AbstractPipeline.java:234 ) at java.base@17.0.2/ java.util.stream .ReferencePipeline.forEach( ReferencePipeline.java:596 ) at app//org.hibernate.internal.SessionFactoryImpl.<init>( SessionFactoryImpl.java:292 ) at app//org.hibernate.boot.internal.SessionFactoryBuilderImpl.build( SessionFactoryBuilderImpl.java:415 ) at app//org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build( EntityManagerFactoryBuilderImpl.java:1425 ) at app//org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory( SpringHibernateJpaPersistenceProvider.java:66 ) at app//org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory( LocalContainerEntityManagerFactoryBean.java:376 ) at app//org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory( AbstractEntityManagerFactoryBean.java:409 ) ... 112 more Caused by: org.hibernate.HibernateException: Could not fetch the SequenceInformation from the database at app//org.hibernate.engine.jdbc.env.internal.ExtractedDatabaseMetaDataImpl.sequenceInformationList( ExtractedDatabaseMetaDataImpl.java:302 ) at app//org.hibernate.engine.jdbc.env.internal.ExtractedDatabaseMetaDataImpl.getSequenceInformationList( ExtractedDatabaseMetaDataImpl.java:151 ) at app//org.hibernate.id.enhanced.SequenceStyleGenerator.getSequenceIncrementValue( SequenceStyleGenerator.java:561 ) at app//org.hibernate.id.enhanced.SequenceStyleGenerator.configure( SequenceStyleGenerator.java:210 ) at app//org.hibernate.id.factory.internal.StandardIdentifierGeneratorFactory.createIdentifierGenerator( StandardIdentifierGeneratorFactory.java:217 ) ... 130 more Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Column "start_value" not found [42122-214] at app//org.h2.message.DbException.getJdbcSQLException( DbException.java:502 ) at app//org.h2.message.DbException.getJdbcSQLException( DbException.java:477 ) at app//org.h2.message.DbException.get( DbException.java:223 ) at app//org.h2.message.DbException.get( DbException.java:199 ) at app//org.h2.jdbc.JdbcResultSet.getColumnIndex( JdbcResultSet.java:3492 ) at app//org.h2.jdbc.JdbcResultSet.getLong( JdbcResultSet.java:745 ) at app//com.zaxxer.hikari.pool.HikariProxyResultSet.getLong( HikariProxyResultSet.java ) at app//org.hibernate.tool.schema.extract.internal.SequenceInformationExtractorLegacyImpl.resultSetStartValueSize( SequenceInformationExtractorLegacyImpl.java:110 ) at app//org.hibernate.tool.schema.extract.internal.SequenceInformationExtractorLegacyImpl.lambda$extractMetadata$0( SequenceInformationExtractorLegacyImpl.java:54 ) at app//org.hibernate.tool.schema.extract.spi.ExtractionContext.getQueryResults( ExtractionContext.java:50 ) at app//org.hibernate.tool.schema.extract.internal.SequenceInformationExtractorLegacyImpl.extractMetadata( SequenceInformationExtractorLegacyImpl.java:39 ) at app//org.hibernate.engine.jdbc.env.internal.ExtractedDatabaseMetaDataImpl.sequenceInformationList( ExtractedDatabaseMetaDataImpl.java:286 ) ... 134 more MemberRepositoryTest > testMember() FAILED java.lang.IllegalStateException at DefaultCacheAwareContextLoaderDelegate.java:142 Caused by: org.springframework.beans.factory.BeanCreationException at AbstractAutowireCapableBeanFactory.java:1751 Caused by: jakarta.persistence.PersistenceException at AbstractEntityManagerFactoryBean.java:421 Caused by: org.hibernate.MappingException at StandardIdentifierGeneratorFactory.java:222 Caused by: org.hibernate.HibernateException at ExtractedDatabaseMetaDataImpl.java:302 Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException at DbException.java:502 1 test completed, 1 failed > Task :test FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':test'. > There were failing tests. See the report at: file:///C:/Users/User/source/BackEnd/SpringBoot1/jpashop/jpashop/build/reports/tests/test/index.html * Try: > Run with --stacktrace option to get the stack trace. > Run with --info or --debug option to get more log output. > Run with --scan to get full insights. * Get more help at https://help.gradle.org BUILD FAILED in 8s 4 actionable tasks: 2 executed, 2 up-to-date

  • 웹앱
  • spring
  • 웹앱
  • java
  • JPA
  • jpa
  • spring-boot
장혁수 댓글 1 좋아요 1 조회수 471

강의자료

해결됨

IT 기업 취업을 위한: 코딩테스트 혼자서 정복하기 (C/C++)

안녕하세요. 제가 못 찾은 것일 수도 있지만 '그래프와 탐색 알고리즘' 부분의 강의자료가 보이지 않아서 혹시 업로드해 주실 수 있는지 문의드립니다.

  • c
  • 코딩-테스트
  • 코테 준비 같이 해요!
esybd02 댓글 1 좋아요 0 조회수 1209

안녕하세요 MSA 구성을 진행하고 있는 뉴비 신입 개발자입니다.

미해결

스프링 시큐리티 OAuth2

KeyCloak 을 인가서버로 활용하고 Resource 자원 사용하는 Data API 인가 처리를 하는 Auth API (Gateway) 를 구현해서 진행하고 있습니다. 그런데 너무 여러가지 방식이 많다보니 혼돈이 와서 선생님이 가르쳐주신 방식으로 인가와 인증을 구현하려고하는데, 인가 서버 -> KeyCloak 사용 게이트 웨이에 Oauth2 를 넣으려고 하는데 개념적으로 궁금한 점이 있어 여쭤봅니다. 공개 클라이언트 방식과 기밀 클라이언트 가 구현함에 있어 어떤 차이를 가지는지 의문입니다. 가령 react -> KeyCloak 요청 시 token 을 바로 가져오려고 하는데, 이 토큰을 받는 것 까진 문제가 없습니다. 하지만 영상에서 보여주신 것과 같이 자원 API 로 접근하는 권한을 획득하기 위해서 기밀 클라이언트 방식으로 구현하면 code 를 리다이렉트 받은 uri 와 token 요청시 리다이렉트 uri 가 같아야하는 문제가 있어서 code 를 auth api 로 받은 뒤 토큰 엔드포인트를 찍어 스프링 프로젝트에서 가져올 때 오류가 발생합니다. react -> keycloak -> code 반환 받은 것 -> spring -> redirect uri 문제로 토큰 발급 불가 가 되는데 어떤 형식으로 처리해야 맞는 것인지 궁금합니다.

  • spring
  • oauth
  • spring-boot
  • java
jisu3316 댓글 2 좋아요 1 조회수 1409

14.5 구조체 dot 선언 오류

미해결

홍정모의 따라하며 배우는 C언어

구조체 선언할 때, dot을 사용해서 선언하면 아래와 같이 오류가 납니다! 주석된 부분에서 오류가 나타나는 이유를 알고 싶습니다!! -------------------------------------------------------------------------------------------------- #define CRT_ SECURE_NO_WARNINGS #include <stdio.h> #define LEN 41 struct names { char given[LEN]; char family[LEN]; }; struct reservation { struct names guest; struct names host; char food[LEN]; char place[LEN]; int year; int month; int day; int hours; int minutes; }; int main(void) { //struct reservation res { // .guest = { "Nick", "Carraway" }, // .host = { "Jay", "Gatsby" }, // .place = { "the Gatsby mansion" }, // .food = { "Escargot" }, // .year = 2022, // .month = 4, // .day=10, // .hours = 18, // .minutes=30 //}; struct reservation res { { "Nick", "Carraway" }, { "Jay", "Gatsby" }, { "Escargot" }, { "the Gatsby mansion" }, 2022, 4, 10, 18, 30 }; printf("\ Dear %s %s \n\ I would like to serve you %s.\n\ Please visit the Gatsby mansion on %d/%d/%d at %d:%d.\n\ Sincerely, %s %s\n", res.guest.given, res.guest.family , res.food , res.day , res.month, res.year, res.hours, res.minutes, res.host .given, res.host.family ); return 0; }

  • c
moon 댓글 1 좋아요 0 조회수 447

getchar() , 버퍼 질문

미해결

홍정모의 따라하며 배우는 C언어

while (1) { printf("Current count is %d. Continue? (y/n)\n", count); int c = getchar(); if (c == 'n') break; else if (c == 'y') { while (getchar() != '\n') continue; count++; } 이 코드에서 int c = getchar();에서 입력을 받고 버퍼에 저장된 후 while (getchar() != '\n') continue; 이 코드를 통해 버퍼에 있는 문자가 하나 씩 반환 되면서 버퍼가 비워지고 다시 int c = getchar(); 을 통해 입력을 받는다고 이해했습니다. 우선 이 과정이 맞게 이해한 건지 궁금합니다. 그리고 또 궁금한 것은 하나의 프로그램에서 버퍼는 오직 하나만 존재하는 것인가요?

  • c
eugenie 댓글 1 좋아요 0 조회수 449

3.6 정수의 오버플로우 강의 중 _itoa 함수 오류

미해결

홍정모의 따라하며 배우는 C언어

안녕하세요 선생님! 강의를 따라하던 도중 itoa 함수에 오류가 떠서 질문드립니다. 분명 선생님과 똑같이 친 것 같은데 왜 오류가 날까요?? 뭐가 문제일까요...???? 어떻게든 고쳐보려고 오류 나온 문구를 구글링 해보니까 itoa함수가 표준함수가 아니라서 오류가 난다는데...ㅜㅜ 솔루션 보니깐 그냥 sprintf라는 함수를 사용하라 하더라구요.. 아니면 itoa 함수를 직접 정의하라던데 아직 걸음마 걷는 입장에서는 그 방법이 도저히 이해가 안가서.. 해결책이 궁금합니다ㅜ

  • c
호도도 댓글 1 좋아요 1 조회수 688

vs code gcc

미해결

홍정모의 따라하며 배우는 C언어

비주얼 스튜디오 코드 터미널에 gcc 입력하면 저렇게 뜨는데 해결방법이 있을까요...?

  • c
정찬우 댓글 1 좋아요 0 조회수 1053

기존의 테이블이 삭제되지 않습니다.

해결됨

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

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] 여기에 질문 내용을 남겨주세요. application.yml jpa: hibernate: ddl-auto: create 이라 되어 있는데, 기존의 테이블이 드랍되지 않습니다. 질문 게시판을 검색해보니, H2의 버전이 1.4.200인 경우에는 하이버네이트 버전을 5.4.13.Final 로 바꿔야 한다고 되어 있네요. 그래서, build.gradle 에 ext["hibernate.version"] = " 5.4.13.Final " 를 추가 해놓고 다시 돌려보니 이제는 엄청난 에러메시지가 나오네용.. 하이버네이트 버전을 바꾸는 방법이 올바르지 않았나요?

  • JPA
  • 웹앱
  • spring
  • spring-boot
  • jpa
  • java
  • 웹앱
Shin Berg 댓글 1 좋아요 0 조회수 532

void의 정확한 의미를 모르겠어요

해결됨

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

안녕하세요 챕터 6 부분을 공부하고 있는데 void를 쓰는 경우와 안쓰는 경우의 차이가 잘 와닫지 않습니다. 리턴값이 없으면 void를 쓰고, 리턴값이 있으면 void를 안쓴다고 알고 있는데 리턴값부터 이해가 잘 가지 않네요! 예를 들어서 // 호텔 주소 public static String getAdress() { return "서울시 어딘가"; } 과 셋째 줄에 sout "서울시 어딘가" 를 쓰는 것은 무엇이 다른건지요? 감사합니다 :)

  • 객체지향
  • java
  • oop
liltjay 댓글 1 좋아요 1 조회수 4824

현업에서의 jpql

해결됨

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오)예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 쿼리 dsl에서 많이 설명 해주셨는데요 그렇다면 dsl을 쓰는 현업에서는 jpql을 사용할 일이 전혀 없을까요 ? 전혀 없다고 해도 근본이 되는 jpql을 알아둬야 하겠지만 학습시간에 대한 비중을 어디에 크게 둬야 할지 의문입니다 .

  • java
  • spring-boot
  • jpa
  • JPA
  • dsl
  • spring
  • query
댓글 1 좋아요 0 조회수 987

6.1 scanf 반환값

미해결

홍정모의 따라하며 배우는 C언어

int main() { int num = 0,red=0, sum = 0; int status; printf("Enter an integer (q to quit) :"); status= scanf("%d %d", &num, &red); while (status >= 1) { sum = sum + num + red; printf("Enter next integer (q to quit) : "); status = scanf("%d %d", &num, &red); } printf("Sum = %d", sum); return 0; } 여기서 정수를 입력받은 변수의 갯수로 scanf의 반환값이 status라는 변수에 저장되는 것으로 이해했는데요 변수 num red에 각각 순서대로 1 2 / 3 4 / q 5를 넣으며 디버거로 확인해봤는데요. 세번째 scanf에 5라는 정수를 입력해서 status 값이 1이 나올거라 생각했는데 왜 status값이 0으로 나올까요? num에 숫자가 아닌 문자를 넣어서 red에도 영향을 주는건가요?? /5 q 순서로 바꿔서 넣어봤을때는 status값이 1이 나와 4번째 scanf를 입력하려 했지만 그냥 그대로 끝이나고 sum도 4가 중복돼서 10과 19로 값이 다르더라고요. 문자를 입력하면 뒤에 변수에도 영향을 주는거 같은데 확실하지 않아서 질문드립니다.

  • c
저스트두잇하는중 댓글 1 좋아요 0 조회수 377

buffered-io가 사용하는 버퍼메모리에 대한 질문있어요

해결됨

독하게 되새기는 C 프로그래밍

먼저 항상 특별한 강의 잘 듣고있습니다. 감사합니다. 1. buffered-io의 buffer 메모리는 어플리케이션 메모리죠? 제가 이해하기로는 buffered-io방식으로 write를 한다면 호출시 바로바로 write시스템콜을 호출하는게아니라, 버퍼라고 부르는 어플리케이션메모리에 내용을 써놨다가 일정 byte이상 차게되면 실제 write시스템콜을 호출함으로써 시스템콜을 줄일 수 있는게 핵심이라고 이해했는데 맞을까요? 결국에 이때 buffer라는 memory는 어플리케이션의 메모리를 말하는거죠? (커널의 메모리가 아니구요) 2. read(input)에서의 buffered-io 시스템콜을 한방에 하기위해서 최대한 뒤로 미루는 버퍼방식의 write와 비교해서 read의 경우에는 일단 시스템콜을 호출해야할것같은데 맞나요? 따라서 read에서의 buffered-io는 모아서 시스템콜을 한다기보다는 buffer라는 chunk단위로 한방에 읽을 수 있는걸 buffered-io한다고 이해하면 맞을까요? 제가 이해하기로는 buffered-io에서의 buffering방식이 read시에, write시에 다르게 느껴져서요.

  • c
  • kernel
  • secure-coding
김기현 댓글 1 좋아요 0 조회수 948

팩토리 메서드를 정적으로 사용하는 이유에 대해서 궁금합니다

해결됨

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

안녕하세요 영한님 강의 잘 듣고 있습니다^^ 전부터 궁금해 왔던 것인데요, 팩토리를 만들 때 정적으로 올리는 이유에 대해서 궁금합니다 영한님이 다른 QnA에서 추천해 주신 내용들을 읽어보았으나 굳이 왜 "정적"영역으로 보내는 가에 대한 의문은 쉽게 풀리지 않습니다 ㅜㅜ 일단 정적 팩토리 메서드로 보내면 생성자들에 대한 응집도가 크게 떨어지는 느낌입니다. "엘레강트 오브젝트"라는 책을 보면 생성자는 10~15개 까지도 만들고 퍼블릭 메서드를 최대한 적게 가져가라고 가이드를 주는데요, 정적 영역으로 보내면 주/부 생성자로 보낼 수 없기 때문에 그 많은 생성자들이 다 흩어지고, 생성자들 간 관계를 맺을 수 없기 때문에 유연성이 떨어지고 코드 중복이 자주 일어나는 효과가 나는 것 같습니다 이는 굳이 정적 영역으로 보내지 않고 주/부 생성자로 구분하면 쉽게 해결될 일이 아닌가? 하는 생각도 들어 질문을 드립니다

  • java
  • 웹앱
  • spring-boot
  • spring
  • JPA
  • jpa
  • 웹앱
득이 댓글 1 좋아요 3 조회수 909

인기 태그

인프런 TOP Writers

주간 인기글