안녕하세요! 강의 잘 보고있습니다 ㅎ styles에서 중복 사용되는 값들을 아래와 같이 상수로 사용하셨는데, const BOTTOM = 30; const BUTTON_WIDTH = 60; 상수명과 관계 없는 style인데도 해당 상수를 갖고와서 / 2라던지 +10라는 식으로 가공해서 사용하는 이유가 궁금합니다! 예를들어서 borderRadius는 30이기때문에 BUTTON_WIDTH / 2를 주셨고, paddingRight는 70이기때문에 BUTTON_WIDTH + 10을 주셨는데, 다른 부분들은 그대로 두셔서 어떤 기준으로 적용하신건지 모르겠습니다! right: 10 이 친구도 BUTTON_WIDTH - 50 paddingLeft: 20 이 친구도 BUTTON_WIDTH - 40 shadowOpacity: 0.5 이 친구도 BUTTON_WIDTH / 120 등등으로 사용할 수 있는데 말이죠! 혹시 상수를 이용해서 이렇게 스타일 안에서도 쓸 수 있다! 를 보여주시려고 예를 들어서 적용하신걸까요?! 6.8 :: 애니메이션 사용하기
안녕하세요, Auditing 기능에 대해서 궁금한 게 생겨 질문 드립니다. Auditing 이라는 기능으로 작성일, 수정일, 작성자, 수정자를 기록할 수 있다고 해주셨는데 삭제일, 삭제자를 기록하는 기능은 Auditing에서 제공 안 해주는 건가요? 구글링 해봐도 그런 기능은 없는 것 같아서요. (다른 기술을 사용해야 하는 건가요?)
안녕하세요. 강의 잘 듣고 있습니다. 강의 중 궁금한 사항이 생겨서 문의 드립니다. Cache buffer (lru) chain latch 강의 차수에서 체인이 하나 인 것처럼 이해가 되는데 체인이 하나인걸까요? Cafhe buffer chain latch 가 관리하는 체인과 Lru latch가 관리하는 체인이 별도로 있는 것으로 알고 있었는데, 혼동이 생겨서 문의 드립니다. Lru 체인래치의 경우 프리리스트가 필요하지 않은 경우는 따로 획득할 필요가 없는 것으로 이해하고 있었습니다. 감사합니다 강의 절말 잘 듣고 있습니다.
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요. 스프링 데이터 JPA 테스트 케이스 실행 시 다음과 같은 오류가 발생합니다. 참고로 JPA까지는 잘 동작했고, 스프링 데이터 JPA부터 에러가 발생합니다. 코드는 강의자료에 있는 코드를 복사, 붙여넣기 했습니다. No property 'ID' found for type 'Member' Did you mean ''id'' 라는 에러 로그상 id 쪽이 문제인 것 같은데, 코드를 훑어보니 달리 문제를 발견하지 못했습니다. 확인 부탁드립니다! 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.UnsatisfiedDependencyException: Error creating bean with name 'springConfig' defined in file [/Users/kakao_ent/study/introduction-to-spring/out/production/classes/hello/hellospring/SpringConfig.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'springDataJpaMemberRepository' defined in hello.hellospring.repository.SpringDataJpaMemberRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Invocation of init method failed; nested exception is org.springframework.data .repository.query.QueryCreationException: Could not create query for public abstract java.util.Optional hello.hellospring.repository.MemberRepository.findByID(java.lang.Long); Reason: Failed to create query for method public abstract java.util.Optional hello.hellospring.repository.MemberRepository.findByID(java.lang.Long)! No property 'ID' found for type 'Member' Did you mean ''id''; nested exception is java.lang.IllegalArgumentException: Failed to create query for method public abstract java.util.Optional hello.hellospring.repository.MemberRepository.findByID(java.lang.Long)! No property 'ID' found for type 'Member' Did you mean ''id'' at org.springframework.beans.factory.support .ConstructorResolver.createArgumentArray( ConstructorResolver.java:800 ) at org.springframework.beans.factory.support .ConstructorResolver.autowireConstructor( ConstructorResolver.java:229 ) at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.autowireConstructor( AbstractAutowireCapableBeanFactory.java:1372 ) at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.createBeanInstance( AbstractAutowireCapableBeanFactory.java:1222 ) at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.doCreateBean( AbstractAutowireCapableBeanFactory.java:582 ) 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.beans.factory.support .DefaultListableBeanFactory.preInstantiateSingletons( DefaultListableBeanFactory.java:955 ) at org.springframework.context.support .AbstractApplicationContext.finishBeanFactoryInitialization( AbstractApplicationContext.java:918 ) 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.springframework.beans.factory.BeanCreationException: Error creating bean with name 'springDataJpaMemberRepository' defined in hello.hellospring.repository.SpringDataJpaMemberRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Invocation of init method failed; nested exception is org.springframework.data .repository.query.QueryCreationException: Could not create query for public abstract java.util.Optional hello.hellospring.repository.MemberRepository.findByID(java.lang.Long); Reason: Failed to create query for method public abstract java.util.Optional hello.hellospring.repository.MemberRepository.findByID(java.lang.Long)! No property 'ID' found for type 'Member' Did you mean ''id''; nested exception is java.lang.IllegalArgumentException: Failed to create query for method public abstract java.util.Optional hello.hellospring.repository.MemberRepository.findByID(java.lang.Long)! No property 'ID' found for type 'Member' Did you mean ''id'' 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.beans.factory.config.DependencyDescriptor.resolveCandidate( DependencyDescriptor.java:276 ) at org.springframework.beans.factory.support .DefaultListableBeanFactory.doResolveDependency( DefaultListableBeanFactory.java:1391 ) at org.springframework.beans.factory.support .DefaultListableBeanFactory.resolveDependency( DefaultListableBeanFactory.java:1311 ) at org.springframework.beans.factory.support .ConstructorResolver.resolveAutowiredArgument( ConstructorResolver.java:887 ) at org.springframework.beans.factory.support .ConstructorResolver.createArgumentArray( ConstructorResolver.java:791 ) ... 89 more Caused by: org.springframework.data .repository.query.QueryCreationException: Could not create query for public abstract java.util.Optional hello.hellospring.repository.MemberRepository.findByID(java.lang.Long); Reason: Failed to create query for method public abstract java.util.Optional hello.hellospring.repository.MemberRepository.findByID(java.lang.Long)! No property 'ID' found for type 'Member' Did you mean ''id''; nested exception is java.lang.IllegalArgumentException: Failed to create query for method public abstract java.util.Optional hello.hellospring.repository.MemberRepository.findByID(java.lang.Long)! No property 'ID' found for type 'Member' Did you mean ''id'' at org.springframework.data .repository.query.QueryCreationException.create( QueryCreationException.java:101 ) at org.springframework.data.repository.core.support .QueryExecutorMethodInterceptor.lookupQuery( QueryExecutorMethodInterceptor.java:107 ) at org.springframework.data.repository.core.support .QueryExecutorMethodInterceptor.lambda$mapMethodsToQuery$1( QueryExecutorMethodInterceptor.java:95 ) at java.base/java.util.stream.ReferencePipeline$3$1.accept( ReferencePipeline.java:195 ) at java.base/java.util.Iterator.forEachRemaining( Iterator.java:133 ) at java.base/java.util.Collections$UnmodifiableCollection$1.forEachRemaining( Collections.java:1054 ) at java.base/java.util.Spliterators$IteratorSpliterator.forEachRemaining( Spliterators.java:1801 ) 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.ReduceOps$ReduceOp.evaluateSequential( ReduceOps.java:913 ) at java.base/java.util.stream.AbstractPipeline.evaluate( AbstractPipeline.java:234 ) at java.base/java.util.stream.ReferencePipeline.collect( ReferencePipeline.java:578 ) at org.springframework.data.repository.core.support .QueryExecutorMethodInterceptor.mapMethodsToQuery( QueryExecutorMethodInterceptor.java:97 ) at org.springframework.data.repository.core.support .QueryExecutorMethodInterceptor.lambda$new$0( QueryExecutorMethodInterceptor.java:87 ) at java.base/java.util.Optional.map( Optional.java:265 ) at org.springframework.data.repository.core.support .QueryExecutorMethodInterceptor.<init>( QueryExecutorMethodInterceptor.java:87 ) at org.springframework.data.repository.core.support .RepositoryFactorySupport.getRepository( RepositoryFactorySupport.java:365 ) at org.springframework.data.repository.core.support .RepositoryFactoryBeanSupport.lambda$afterPropertiesSet$5( RepositoryFactoryBeanSupport.java:323 ) at org.springframework.data .util.Lazy.getNullable( Lazy.java:231 ) at org.springframework.data .util.Lazy.get( Lazy.java:115 ) at org.springframework.data.repository.core.support .RepositoryFactoryBeanSupport.afterPropertiesSet( RepositoryFactoryBeanSupport.java:329 ) at org.springframework.data.jpa.repository.support .JpaRepositoryFactoryBean.afterPropertiesSet( JpaRepositoryFactoryBean.java:144 ) at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.invokeInitMethods( AbstractAutowireCapableBeanFactory.java:1863 ) at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.initializeBean( AbstractAutowireCapableBeanFactory.java:1800 ) ... 100 more Caused by: java.lang.IllegalArgumentException: Failed to create query for method public abstract java.util.Optional hello.hellospring.repository.MemberRepository.findByID(java.lang.Long)! No property 'ID' found for type 'Member' Did you mean ''id'' at org.springframework.data .jpa.repository.query.PartTreeJpaQuery.<init>( PartTreeJpaQuery.java:96 ) at org.springframework.data .jpa.repository.query.JpaQueryLookupStrategy$CreateQueryLookupStrategy.resolveQuery( JpaQueryLookupStrategy.java:119 ) at org.springframework.data .jpa.repository.query.JpaQueryLookupStrategy$CreateIfNotFoundQueryLookupStrategy.resolveQuery( JpaQueryLookupStrategy.java:259 ) at org.springframework.data .jpa.repository.query.JpaQueryLookupStrategy$AbstractQueryLookupStrategy.resolveQuery( JpaQueryLookupStrategy.java:93 ) at org.springframework.data.repository.core.support .QueryExecutorMethodInterceptor.lookupQuery( QueryExecutorMethodInterceptor.java:103 ) ... 122 more Caused by: org.springframework.data .mapping.PropertyReferenceException: No property 'ID' found for type 'Member' Did you mean ''id'' at org.springframework.data .mapping.PropertyPath.<init>( PropertyPath.java:91 ) at org.springframework.data .mapping.PropertyPath.create( PropertyPath.java:438 ) at org.springframework.data .mapping.PropertyPath.create( PropertyPath.java:414 ) at org.springframework.data .mapping.PropertyPath.lambda$from$0( PropertyPath.java:367 ) at java.base/java.util.concurrent.ConcurrentMap.computeIfAbsent( ConcurrentMap.java:330 ) at org.springframework.data .mapping.PropertyPath.from( PropertyPath.java:349 ) at org.springframework.data .mapping.PropertyPath.from( PropertyPath.java:332 ) at org.springframework.data .repository.query.parser.Part.<init>( Part.java:81 ) at org.springframework.data .repository.query.parser.PartTree$OrPart.lambda$new$0( PartTree.java:250 ) 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.Spliterators$ArraySpliterator.forEachRemaining( Spliterators.java:948 ) 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.ReduceOps$ReduceOp.evaluateSequential( ReduceOps.java:913 ) at java.base/java.util.stream.AbstractPipeline.evaluate( AbstractPipeline.java:234 ) at java.base/java.util.stream.ReferencePipeline.collect( ReferencePipeline.java:578 ) at org.springframework.data .repository.query.parser.PartTree$OrPart.<init>( PartTree.java:251 ) at org.springframework.data .repository.query.parser.PartTree$Predicate.lambda$new$0( PartTree.java:384 ) 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.Spliterators$ArraySpliterator.forEachRemaining( Spliterators.java:948 ) 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.ReduceOps$ReduceOp.evaluateSequential( ReduceOps.java:913 ) at java.base/java.util.stream.AbstractPipeline.evaluate( AbstractPipeline.java:234 ) at java.base/java.util.stream.ReferencePipeline.collect( ReferencePipeline.java:578 ) at org.springframework.data .repository.query.parser.PartTree$Predicate.<init>( PartTree.java:385 ) at org.springframework.data .repository.query.parser.PartTree.<init>( PartTree.java:96 ) at org.springframework.data .jpa.repository.query.PartTreeJpaQuery.<init>( PartTreeJpaQuery.java:89 ) ... 126 more
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. postman 작동이 안돼요. 뭐가 문제일까요? 인텔리제이 코드는 2편 코드 파일 다운받아서 그대로 사용했어요.
11강 코틀린에서 접근 제어를 다루는 방법을 듣던 중 궁금한 점이 생겨 질문 남깁니다 :) [3.다양한 구성요소의 접근 제어 - 생성자] 부분에서 Java의 유틸성 코드를 만들 때 abstract class + private constructor를 사용해 인스턴스화를 막는다고 되어있습니다! public abstract class StringUtils { private StringUtils() {} public boolean isDirectoryPath(String path) { return path.endsWith("/"); } } 추상클래스는 인스턴스화를 할 수 없다고 알고 있는데, 이미 인스턴스화가 막혀있는 상태에서 private constructor 가 필요한가?! 라는 궁금증이 들었습니다. 질문은 정리하자면, abstract class 만으로 인스턴스화를 막을 수 있다고 생각하는데, private constructor까지 같이 사용하는 이유가 궁금합니다 !! 강의 잘 듣고 있습니다. 재밌어요 ㅎㅎ 감사합니다 :)
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요.
- 본 강의 영상 학습 관련 문의에 대해 답변을 드립니다. (어떤 챕터 몇분 몇초를 꼭 기재부탁드립니다) - 이외의 문의등은 평생강의이므로 양해를 부탁드립니다 - 현업과 병행하는 관계로 주말/휴가 제외 최대한 3일내로 답변을 드리려 노력하고 있습니다 - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
function compareMaps(mapA, mapB) { if (mapA.size !== mapB.size) { return false; } for (let [key, value] of mapA) { if (!mapB.has(key) || mapB.get(key) !== value) { return false; } } return true; } function solution(map1, map2) { let mapA = new Map(); let mapB = new Map(); let lt = 0; let n = map2.length; let answer = 0; for (let rt = 0; rt < map1.length; rt++) { if (rt < n) mapB.set(map2[rt], mapB.get(map2[rt]) + 1 || 1); mapA.set(map1[rt], mapA.get(map1[rt]) + 1 || 1); if (rt >= n) { mapA.get(map1[lt]) == 1 ? mapA.delete(map1[lt]) : mapA.set(map1[lt], mapA.get(map1[lt]) - 1); lt++; } if (rt >= n - 1) { if (compareMaps(mapA, mapB)) answer++; } } return answer; } let a = "bacaAacba"; let b = "abc"; console.log(solution(a, b)); 모든 아나그램 찾기 코드리뷰 부탁드립니다!
영속성 컨텍스트는 트랜잭션이 시작 후 종료되면 영속성 컨텍스트는 삭제된다. 플러시는 영속성 컨텍스트를 비우지 않는다. 8분 17초 에서 약간 헷갈리는게 있다면 트랜잭션 작업이 모두 끝나면 영속성 컨텍스트는 삭제가 되고 플러시의 역할은 쓰기 지연 SQL 저장소에 저장된 SQL 을 DB로 전달해 실행하게끔 해주는 역할인거지 영속성 컨텍스트를 지우는 역할은 아닌거죠?