[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
Item item = FindWeapon(delegate (Item item) { return item.ItemType == ItemType.Weapon; }); 영상 57번째 줄 입니다. 현재 이렇게 코드를 작성하면 item 선언 관련해서 에러납니다. 선언한 변수 item과 delegate 파라미터 item 이름이 겹쳐서 문제가 되는 것 같네요. IDE 마다 다르게 나오는 건지 확인 부탁드립니다.
안녕하세요 강사님 ack= all factor = 3 min.insync.replicas = 2 일경우에서 브로커 2개가 다운되었을경우 min.insync 조건에 충족하지 못하여 오류가 뜨는걸로 알고있었는데 이상황에서 컨슈머에서 데이터 요청을하면 남은 1개의 복제본에서 데이터를 가져올수있다는 내용을 봤습니다. 이 경우 어떤 동작을 통해서 데이터를 가져오는것 인지 궁금합니다.
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] '스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근기술' 강의의 '스프링 통합 테스트' 부분에서 학습 도중 java.lang.IllegalStateException: Failed to load ApplicationContext 에러가 발생하였습니다. MemberServiceIntegrationTest.java에서 테스트 중 위의 에러가 발생했는데 BeanCreationException, ServiceException, HibernateException 순서로 로그가 찍힌것으로 보입니다. 질문하기 앞서 스스로 해결해보려고 구글링을 했으나 원하는 답을 찾지 못해 시간이 많이 지체되어 질문하게 되었습니다... 아래에 제가 작업한 프로젝트 압축파일과 에러를 첨부하였습니다 프로젝트 링크 : https://drive.google.com/file/d/1EYhVgnX1FwdmE3V7uITR2JBEeir_kmZm/view?usp=sharing java.lang.IllegalStateException: Failed to load ApplicationContext at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext( DefaultCacheAwareContextLoaderDelegate.java:98 ) at org.springframework.test.context.support .DefaultTestContext.getApplicationContext( DefaultTestContext.java:124 ) at org.springframework.test.context.web.ServletTestExecutionListener.setUpRequestContextIfNecessary( ServletTestExecutionListener.java:190 ) at org.springframework.test.context.web.ServletTestExecutionListener.prepareTestInstance( ServletTestExecutionListener.java:132 ) at org.springframework.test.context.TestContextManager.prepareTestInstance( TestContextManager.java:248 ) at org.springframework.test.context.junit.jupiter.SpringExtension.postProcessTestInstance( SpringExtension.java:138 ) at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$invokeTestInstancePostProcessors$8( ClassBasedTestDescriptor.java:363 ) at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.executeAndMaskThrowable( ClassBasedTestDescriptor.java:368 ) at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$invokeTestInstancePostProcessors$9( ClassBasedTestDescriptor.java:363 ) at java.base/java.util.stream.ReferencePipeline$3$1.accept( ReferencePipeline.java:195 ) at java.base/java.util.stream.ReferencePipeline$2$1.accept( ReferencePipeline.java:177 ) at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining( ArrayList.java:1655 ) at java.base/java.util.stream.AbstractPipeline.copyInto( AbstractPipeline.java:484 ) at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto( AbstractPipeline.java:474 ) at java.base/java.util.stream.StreamSpliterators$WrappingSpliterator.forEachRemaining( StreamSpliterators.java:312 ) 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:658 ) at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.invokeTestInstancePostProcessors( ClassBasedTestDescriptor.java:362 ) at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$instantiateAndPostProcessTestInstance$6( ClassBasedTestDescriptor.java:283 ) at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.instantiateAndPostProcessTestInstance( ClassBasedTestDescriptor.java:282 ) at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$testInstancesProvider$4( ClassBasedTestDescriptor.java:272 ) at java.base/java.util.Optional.orElseGet( Optional.java:369 ) at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$testInstancesProvider$5( ClassBasedTestDescriptor.java:271 ) at org.junit.jupiter.engine.execution.TestInstancesProvider.getTestInstances( TestInstancesProvider.java:31 ) at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$prepare$0( TestMethodTestDescriptor.java:102 ) at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.prepare( TestMethodTestDescriptor.java:101 ) at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.prepare( TestMethodTestDescriptor.java:66 ) 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:1541 ) 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:1541 ) 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 com.intellij.junit5.JUnit5IdeaTestRunner.startRunnerWithArgs( JUnit5IdeaTestRunner.java:57 ) at com.intellij.rt.junit.IdeaTestRunner$Repeater$1.execute( IdeaTestRunner.java:38 ) at com.intellij.rt.execution.junit.TestsRepeater.repeat( TestsRepeater.java:11 ) at com.intellij.rt.junit.IdeaTestRunner$Repeater.startRunnerWithArgs( IdeaTestRunner.java:35 ) at com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart( JUnitStarter.java:235 ) at com.intellij.rt.junit.JUnitStarter.main( JUnitStarter.java:54 ) 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]: Invocation of init method failed; nested exception is org.hibernate.service.spi.ServiceException: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment] at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.initializeBean( AbstractAutowireCapableBeanFactory.java:1804 ) at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.doCreateBean( AbstractAutowireCapableBeanFactory.java:620 ) at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.createBean( AbstractAutowireCapableBeanFactory.java:542 ) at org.springframework.beans.factory.support .AbstractBeanFactory.lambda$doGetBean$0( AbstractBeanFactory.java:335 ) at org.springframework.beans.factory.support .DefaultSingletonBeanRegistry.getSingleton( DefaultSingletonBeanRegistry.java:234 ) at org.springframework.beans.factory.support .AbstractBeanFactory.doGetBean( AbstractBeanFactory.java:333 ) at org.springframework.beans.factory.support .AbstractBeanFactory.getBean( AbstractBeanFactory.java:208 ) at org.springframework.context.support .AbstractApplicationContext.getBean( AbstractApplicationContext.java:1154 ) at org.springframework.context.support .AbstractApplicationContext.finishBeanFactoryInitialization( AbstractApplicationContext.java:908 ) at org.springframework.context.support .AbstractApplicationContext.refresh( AbstractApplicationContext.java:583 ) at org.springframework.boot.SpringApplication.refresh( SpringApplication.java:731 ) at org.springframework.boot.SpringApplication.refreshContext( SpringApplication.java:408 ) at org.springframework.boot.SpringApplication.run ( SpringApplication.java:307 ) at org.springframework.boot.test.context.SpringBootContextLoader.loadContext( SpringBootContextLoader.java:136 ) at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal( DefaultCacheAwareContextLoaderDelegate.java:141 ) at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext( DefaultCacheAwareContextLoaderDelegate.java:90 ) ... 71 more Caused by: org.hibernate.service.spi.ServiceException: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment] at org.hibernate.service.internal.AbstractServiceRegistryImpl.createService( AbstractServiceRegistryImpl.java:275 ) at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService( AbstractServiceRegistryImpl.java:237 ) at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService( AbstractServiceRegistryImpl.java:214 ) at org.hibernate.id .factory.internal.DefaultIdentifierGeneratorFactory.injectServices( DefaultIdentifierGeneratorFactory.java:175 ) at org.hibernate.service.internal.AbstractServiceRegistryImpl.injectDependencies( AbstractServiceRegistryImpl.java:286 ) at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService( AbstractServiceRegistryImpl.java:243 ) at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService( AbstractServiceRegistryImpl.java:214 ) at org.hibernate.boot.internal.InFlightMetadataCollectorImpl.<init>( InFlightMetadataCollectorImpl.java:173 ) at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.complete( MetadataBuildingProcess.java:127 ) at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.metadata( EntityManagerFactoryBuilderImpl.java:1460 ) at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build ( EntityManagerFactoryBuilderImpl.java:1494 ) at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory( SpringHibernateJpaPersistenceProvider.java:58 ) at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory( LocalContainerEntityManagerFactoryBean.java:365 ) at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory( AbstractEntityManagerFactoryBean.java:409 ) at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet( AbstractEntityManagerFactoryBean.java:396 ) at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet( LocalContainerEntityManagerFactoryBean.java:341 ) at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.invokeInitMethods( AbstractAutowireCapableBeanFactory.java:1863 ) at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.initializeBean( AbstractAutowireCapableBeanFactory.java:1800 ) ... 86 more Caused by: org.hibernate.HibernateException: Access to DialectResolutionInfo cannot be null when 'hibernate.dialect' not set at org.hibernate.engine.jdbc.dialect.internal.DialectFactoryImpl.determineDialect( DialectFactoryImpl.java:100 ) at org.hibernate.engine.jdbc.dialect.internal.DialectFactoryImpl.buildDialect( DialectFactoryImpl.java:54 ) at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService( JdbcEnvironmentInitiator.java:138 ) at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService( JdbcEnvironmentInitiator.java:35 ) at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.initiateService( StandardServiceRegistryImpl.java:101 ) at org.hibernate.service.internal.AbstractServiceRegistryImpl.createService( AbstractServiceRegistryImpl.java:263 ) ... 103 more
models views 안녕하세요 강의를 전부 수료하고 SPA방식의 거의 대부분의 기능들을 추가 구현했습니다. 태그,유저이름,포스팅 제목으로 검색하는기능과 태그셋 기능만 남았네요. django form을 이용했을때는 해당과 같은 방법으로 tagSet을 추가했었습니다. 하지만 DRF CBV에서는 어떻게 접근하는지 방법을 모르겠네요. 마찬가지로 send_email 또한 호출하게끔 하고 싶습니다!!
- 카프카를 공부하시면서 생긴 질문들을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 강사님 프로듀서에서 브로커로 메시지를 보낼때 key값과 value값을 보내는데 value값이 null인경우에 대한 얘기를 보게되었는데 topic 명과 value값은 필수라고 들은거같은데 오류없이 전송되는 이유가 무엇인지 궁금합니다. null도 그자체로 값으로 치는건가요?
hyperfreed_story_id 사용불가라 태그가 많이 바뀌어서 제가 직접 찾아봤을때는 data-pagelet 이게 각각 잘 나눠져 있어서 가져올려고하는데, 콘솔창에서는 데이터가 잘 보여서 사용할려고 했더니 막상 코딩시에는 값을 가져오지 못하는 현상이 발생되고 있어요 콘솔에는 출력이 잘 되는데 왜 코딩하면서 이벨류에이트에서는 사용이 안되는걸까요? ------ 태그가 많이 바뀐 관계로 추가로 id 가져오는 부분은 html내에서 찾지 못해서 가져오지 못해서, 아이디 가져오는 방법은 새롭게 다시 찾아보고는 있는데, 딱히 가져올 만한 방법을 아직은 못찾고 있어요
function solution(n) { let answer if (n > 1) answer = [...solution(n - 1), n] else answer = [n] return answer } console.log(solution(3)) 안녕하세요. 해당 문제 풀이 관련하여 2가지 질문이 있습니다. 1. 강의에서는 DFS 이너함수를 선언하여 한 단계의 뎁스를 두고 재귀호출 하여 푸셨는데, 위의 풀이처럼 solution 함수자체를 재귀호출하는 경우 조심해야할 엣지케이스나 지양해야 할 이유가 있을까요? 2. 강의 예제에서는 DFS 함수 내부에서 console.log로 출력하는 방식으로 출력하셨는데, 해당 출력예제 같은 경우 일반적으로 배열타입을 아웃풋으로 가지던데, js 콜스택을 설명하기 위하여 그러신건지, 아니면 다른 이유가 있으신지 궁금합니다. 감사합니다.
스프링부트 2.7.7, h2 2.1.214 버전 @GeneratedValue(strategy = GenerationType.IDENTITY) 이렇게 생성하게 둬도 글을 새로만들면 id가 1로 만들어져 아이디 중복이라 오류가 뜨길래 INSERT INTO article( title, content) VALUES( '가가가가', '1111'); INSERT INTO article( title, content) VALUES( '나나나나', '2222'); INSERT INTO article( title, content) VALUES( '다다다다', '3333'); 이렇게 data.sql에 id 지정값을 빼니 알아서 id 4로 해주며 잘 작동하네요 혹시 최신버전으로 하시는 분들중 오류가 있으면 참고하세요 DB 버전문제인거같은데 왜그런지는 잘 모르겠네요.. 최신버전에서는 id를 지정해주면 IDENTITY가 작동안하는거 같기도 하네요
안녕하세요. 강의 잘 듣고 있습니다. 저는 책과 같이 병행하며 학습을 진행 중입니다.. 책 313 page에 보면.. 영속성 전이 관련 설명 중.. Parent parent = em.find(Parent.class, parentId); parent.addChild(child1); 코드의 의미가 궁금합니다.. 제가 이해하기론 영속성 전이는 특정 엔티티가 영속 상태로 변할 때, 연관된 엔티티도 영속 상태로 만들게 해주는 기능으로.. 책의 코드와 내용만 봤을 땐, parent를 find해서 이미 영속 상태로 만들어 두고.. child1과 parent를 addChild 편의 메서드를 통해 연관관계를 설정해주면 flush 단계에서 변경감지와 영속성전이..? 를 통해 child가 db에 적재 될 것으로 생각하게 되었습니다.. 하지만.. 제가 예상하기로는 -> parent Entity 입장에서는 양방향 연관관계도 설정했고 cascade를 걸어놨지만, 영속상태로 전환되는 상황이 아니라서 child1이 db에 적재되지 않을 것으로 예상했습니다. -> child1 Entity 입장에서는 연관관계 주인이며 양방향 연관관계 설정이 되었지만.. 비영속 상태라 변경 감지가 이루어지지 않아서 db에 업데이트 되지 않을 것으로 예상했습니다. (책에선 child1을 저장하기 위함이라 설명) 그래서 제가 예상한 개념과 차이가 생겨서 실습도 해봤지만.. db에 적재가 되지 않는 것으로 확인 했습니다.. 아래는 스스로 진행한 실습 코드입니다. (cascadeType.ALL) Parent parent = new Parent(); parent.setName("p1"); Child child1 = new Child(); child1.setName("c1"); System.out.println("==========1==========="); entityManager.persist(parent); System.out.println("==========2==========="); entityManager.flush(); entityManager.clear();; System.out.println("==========3==========="); entityManager.find(Parent.class, parent.getId()); System.out.println("==========4==========="); parent.addChild(child1); //entityManager.merge(parent); System.out.println("==========5==========="); tx.commit(); 다음은 질문 정리입니다. 제가 예상한 점들이 맞는지 궁금합니다. 책 속 코드의 의도와 의미가 궁금합니다. 혹시, em.merge(parent); 가 생략된 것이 의미와 의도에 맞는 건지 궁금합니다. merge를 하면 child1이 db에 적재가 되는데.. 엔티티의 생명주기에서 parent는 managed 상태에서 merge를 하는 지금과 같은 상황은 어떤 의미 인지도 궁금합니다.. 제가 무엇을 잘못 생각하고 있을까요.. ㅠ 항상 감사합니다. ^^7
rendering 을 하면 render view가 아니라 arnold render로 넘어가네요 이걸 설정에서 maya software나 maya Hardware로 바꾸면 render view 창으로 바뀌는데 문제는 arnold render 할 때는 잘 나오는 것들이 저렇게 바꾸면 안 나옵니다.
tdd 앱 개발 초입 강의에서 질문 있습니다. App.test.js에서는 screen.getByTestId("counter")를 했고, App.js 에서는 <h3> 내부에 data-testid="counter" 라고 되어 있는데요. 어떻게 App.js 내부의 <h3> 태그의 data-testid가 getByTestId로 불릴 수 있는지 궁금합니다..! 그리고 넘어간 정보가 왜 0이 아니라 TextContent가 맞는걸까요?