묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
select문도 쓰기 지연에 포함인가요?
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]안녕하세요. 이전에 질문 남겼는데 좀 대충 작성했더니 질문이 이해 안간다고 하셔서..(ㅠㅠ) 다시 자세하게 작성합니다!질문 : em.find() 하면 select문이 나가잖아요? 이런 경우엔 쓰기 지연이 발생하는게 아닌 것 같다고 생각했는데 맞나요? (동일 트랜잭션 상에서 persist(insert)한 적이 없고, DB에 존재하는 엔티티를 조회한다는 전제입니다.)그렇게 생각한 근거는 1. 이름이 '쓰기' 지연이다. 2. find()한 후에 다음 줄에서 조회한 엔티티를 출력해보면 결과가 나온다.사소한 궁금증인데, 찾아봐도 안나오기도 하고, 강의에서는 update, insert, delete 시 쓰기지연이 발생한다' 라고만 언급하셔서 질문 남깁니다!
-
미해결김영한의 실전 자바 - 기본편
기본편 이후 학습 ...
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]입문편과 기본편까지 강의 다 듣고 다음 강의 기다릴 시간이 없어영상에서 말씀해주신 자바 예외처리와 자바 컬렉션 부분 공부를하려고 합니다. 혹시 추천해주실 강의나, 책 혹은 자료가 따로있으실까요?없다면 언제쯤 중급편 업로드 예정이신지 궁금합니다
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part5: UE5 & IOCP 서버 연동
RecvBuffer는 락을 안둔다고 하셨는데 이럴경우는 어떡하나여?
틱 쓰레드를 하나두고 틱쓰레드에선 주기적으로 해야할 작업들을 하며, 무거운 작업을 처리해야 할때서버가 자기자신에게 Send 하는 식으로 PostQueuedCompletionStatus() 함수를 통해 Worker Thread로 작업을 넘기는데여이럴경우는 바로 Send 처럼 각자 세션들이 Recv를 하게 됩니다. 이런 구조면 ProcessRecv에서도 멀티쓰레드가 개입을 하기 때문에 락을 걸어야 할텐데 이 부분은 어떻게 생각하시나요? 실제 현업에서도 Recv에 락없이 사용하나요?제 구조가 잘못된 설계라고 보시나요?
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
안드로이드 스튜디오 설정 - 플러터 닥터 오류
구글링으로 해결해보려고 했는데 실패했습니다 ㅠㅠ플러터 doctor check crashed 오류랑visual studio windows 10 sdk는 installer에서 설치했는데도 안되네요..도움 부탁드립니다!! ㅠㅠㅠㅠ
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
8강 서버 내부오류 어떻게 해결하죠..?
sql서버도 껏다가 다시 시작도 해보고포스트맨도 창 전부 지웠다 다시 하고 오류 없이 200ok나온것 확인도 하구인텔리제이 코드도 컴파일 잘 되는거 확인 했습니다..http://localhost:8080/v1/index.html 들어가서 이름 나이 입력하면 서버내부오류라고 나오네요답변해주시면 갑사합니다.그림 첨부하고싶어도 사진클릭이나 저장이 불가능하네요
-
해결됨[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
강의를 듣다 잘못표기된게 있는것같아서 적습니다.
'Fast RCNN의 이해 14x7ROI 부분이 12x7로 보이는데 14x7이였다면 전체를 표기해야하지않나' 가 제 질문입니다.
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
문자열 슬라이싱
안녕하세요, 문자열 슬라이싱 관련 질문이 있습니다.문자열 a = 'abcde'가 있다고 할 때, print(a[::-1]) 을 실행하면 'edcba'로 문자열이 반대로 나오지만print(a[1:4:-1])처럼 [ : :-1]에서 시작하는 칸과 끝나는 칸에 그 어떤 수를 넣어도프린트가 되지 않습니다.유사하게 -1대신 -2, 등 음수는 되지 않는다는 것을 확인하였습니다.print(a[1:4:2])는 되는데 print(a[1:4:-1])이 되지 않는 이유는 무엇인가요?[ : : ] 에서 마지막에 음수를 넣으면 그 앞 두 칸에는 숫자를 넣을 수 없는 것인가요?
-
해결됨곰책으로 쉽게 배우는 최소한의 운영체제론
*pszResult =A; 포인터 사용 부분에 대한 질문입니다.
java 백엔드 개발자입니다.수업을 듣는 도중, 실제 물리 주소에 할당되지 않은 VMS 위치에 어떻게 접근하여 값을 할당하는지 이해가 잘 되지 않습니다.다른 질문을 읽어보면서 유추하건데, 제가 java 언어만 얕게 사용할 줄 알아서 C와 포인터에 대한 이해가 부족해서 그런것 같다는 생각이 들기도 합니다.C언어에서는, 실제 물리 메모리에 할당되지 않은 VMS 위치에 직접 접근하여 값을 할당할 수 있는 걸까요? 그게 강사님께서 말씀하신 포인터의 권력인걸까요?작년 말쯤 강사님께서 java에 대해 학습하시는 영상을 유튜브로 본 적이 있는데, java에서도 그러한 환경과 상황이 나올 수 있는 것일까요? 일반적인 웹 어플리케이션 개발을 하는 환경에서는 들어보지 못한 상황과 에러라서 궁금해서 질문 남깁니다!+ 유튜브 영상으로 올려주시는 조언과 공학 지식들을 잘 듣고 있습니다. 항상 좋은 내용들을 쉽게 전달해주셔서 감사합니다.
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
시간초과 관련 질문 드립니다.
안녕하세요 선생님,http://boj.kr/748e160790bc4f178f9f9ec8afbd0054테스트 케이스는 통과했지만, 시간 초과가 떴습니다. 선생님의 코드와 비교했을 때, 대충 제 코드의 'find' 함수에서 맵 순회 부분이 매우 비효율적이라는 것 정도를 짐작할 수 있었습니다. 다만, 확실히 짚고 넘어가고 싶어 이렇게 질문을 드립니다.아래의 두 코드에서 시간복잡도 측면에서 어떤 차이가 있는지, 왜 선생님의 코드가 더 빠른지 정확히 알고싶습니다.위가 제 코드이고, 아래가 선생님의 코드입니다. 1. 제 코드는 특정 값을 찾기위해 모든 맵을 순회하고 있는데, 선생님처럼 코드를 짜면 특정 값을 찾기위해 맵을 순회할 필요가 없나요? 2. 제 코드는 모든 맵을 순회하면서 맵의 first값, second 값 모두를 비교합니다. 이부분도 시간복잡도가 커질 수 있는 여지가 있나요? 혹시 시간초과가 난 다른 이유가 있다면 알려주시면 감사하겠습니다!좋은 강의 늘 감사합니다:)
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
JPA 17분 오류 발생
강의 17분에서 통합테스트 돌렸는데 이런 오류가 뜹니다.어딜 하나 건드려서 지금 오류가 전부 뜨는 것 같은데클래스가 너무 많아서 어디가 오류인지도 잘 모르겠습니다..답변 기다리겠습니다.Hibernate: select m1_0.id,m1_0.name from member m1_0 where m1_0.name=?2024-01-28T22:17:30.817+09:00 WARN 11685 --- [ main] o.h.engine.jdbc.spi.SqlExceptionHelper : SQL Error: 42104, SQLState: 42S042024-01-28T22:17:30.817+09:00 ERROR 11685 --- [ main] o.h.engine.jdbc.spi.SqlExceptionHelper : Table "MEMBER" not found (this database is empty); SQL statement:select m1_0.id,m1_0.name from member m1_0 where m1_0.name=? [42104-214]org.hibernate.exception.SQLGrammarException: could not prepare statement [Table "MEMBER" not found (this database is empty); SQL statement:select m1_0.id,m1_0.name from member m1_0 where m1_0.name=? [42104-214]] [select m1_0.id,m1_0.name from member m1_0 where m1_0.name=?] at org.hibernate.exception.internal.SQLExceptionTypeDelegate.convert(SQLExceptionTypeDelegate.java:64) at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:56) at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:108) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$StatementPreparationTemplate.prepareStatement(StatementPreparerImpl.java:187) at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.prepareStatement(StatementPreparerImpl.java:76) at org.hibernate.sql.exec.internal.JdbcSelectExecutorStandardImpl.lambda$list$0(JdbcSelectExecutorStandardImpl.java:102) at org.hibernate.sql.results.jdbc.internal.DeferredResultSetAccess.executeQuery(DeferredResultSetAccess.java:226) at org.hibernate.sql.results.jdbc.internal.DeferredResultSetAccess.getResultSet(DeferredResultSetAccess.java:163) at org.hibernate.sql.results.jdbc.internal.JdbcValuesResultSetImpl.advanceNext(JdbcValuesResultSetImpl.java:254) at org.hibernate.sql.results.jdbc.internal.JdbcValuesResultSetImpl.processNext(JdbcValuesResultSetImpl.java:134) at org.hibernate.sql.results.jdbc.internal.AbstractJdbcValues.next(AbstractJdbcValues.java:19) at org.hibernate.sql.results.internal.RowProcessingStateStandardImpl.next(RowProcessingStateStandardImpl.java:66) at org.hibernate.sql.results.spi.ListResultsConsumer.consume(ListResultsConsumer.java:198) at org.hibernate.sql.results.spi.ListResultsConsumer.consume(ListResultsConsumer.java:33) at org.hibernate.sql.exec.internal.JdbcSelectExecutorStandardImpl.doExecuteQuery(JdbcSelectExecutorStandardImpl.java:361) at org.hibernate.sql.exec.internal.JdbcSelectExecutorStandardImpl.executeQuery(JdbcSelectExecutorStandardImpl.java:168) at org.hibernate.sql.exec.internal.JdbcSelectExecutorStandardImpl.list(JdbcSelectExecutorStandardImpl.java:93) at org.hibernate.sql.exec.spi.JdbcSelectExecutor.list(JdbcSelectExecutor.java:31) at org.hibernate.query.sqm.internal.ConcreteSqmSelectQueryPlan.lambda$new$0(ConcreteSqmSelectQueryPlan.java:110) at org.hibernate.query.sqm.internal.ConcreteSqmSelectQueryPlan.withCacheableSqmInterpretation(ConcreteSqmSelectQueryPlan.java:303) at org.hibernate.query.sqm.internal.ConcreteSqmSelectQueryPlan.performList(ConcreteSqmSelectQueryPlan.java:244) at org.hibernate.query.sqm.internal.QuerySqmImpl.doList(QuerySqmImpl.java:518) at org.hibernate.query.spi.AbstractSelectionQuery.list(AbstractSelectionQuery.java:367) at org.hibernate.query.Query.getResultList(Query.java:119) at hello.hellospring.repository.JpaMemberRepository.findByName(JpaMemberRepository.java:34) at hello.hellospring.service.MemberService.validateDuplicateMember(MemberService.java:33) at hello.hellospring.service.MemberService.join(MemberService.java:27) 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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:343) at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:196) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:756) at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:123) at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:391) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:756) at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:708) at hello.hellospring.service.MemberService$$SpringCGLIB$$0.join(<generated>) at hello.hellospring.service.MemberServiceIntegrationTest.join(MemberServiceIntegrationTest.java:30) 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.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:727) at org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60) at org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131) at org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:156) at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:147) at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:86) at org.junit.jupiter.engine.execution.InterceptingExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(InterceptingExecutableInvoker.java:103) at org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.lambda$invoke$0(InterceptingExecutableInvoker.java:93) at org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:106) at org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:64) at org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:45) at org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:37) at org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:92) at org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:86) at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$7(TestMethodTestDescriptor.java:217) at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:213) at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:138)
-
미해결스프링 핵심 원리 - 기본편
DI, IOC 등 모든 개념들이 API를 끌어다 쓸때 개념이죠?
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]여기에 질문 내용을 남겨주세요. API 즉, 프레임워크를 불러다 사용시인터페이스의 의존해서 해당 라이브러리들을 당겨와서 사용하더라구요. 즉, IOC, DI 그리고 컨테이너 개념들은 pom.xml에 주입되어 사용되는 모든 도구, 엔진 들은 프레임워크 처럼 나 자신이 주도권을 가지는 것이 아니라 대부분 대신 해주죠?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
엔티티 - 비즈니스 로직 stockQuantity 질문있습니다!
=====================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]상품 엔티티 개발(비즈니스로직) 강의엔티티 내에서 stockQuantity와 관련된 로직이 함께 있어 응집성이 높아짐 + 캡슐화에 부합 -> 관리하기 좋음 이렇게 이해를 했습니다.여기서 질문이 객체지향원칙 SOLID - SRP 단일책임 원칙에 의해 클래스는 하나의 변경 이유만 가져야 한다. 에서 비즈니스 로직을 추가함으로써 SRP 원칙을 위배한거라고도 볼 수 있을까요?맞다면 객체지향원칙 - SRP원칙을 위배했지만 좋은 코드 같긴한데 위 사례에서는 객체지향적 설계로 완벽하다고는 볼 수 없는건가요?객체지향 원칙을 굳이 무조건 따르지 않고 유연하게 코드 개발을 해나가는게 좋을까요?
-
미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
List 타입 에러
[ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: type 'List<IModelWithId>' is not a subtype of type 'List<RatingModel>?' of 'data' #0 CursorPagination.copyWith (package:codefactory_lecture/common/model/cursor_pagination_model.dart:28:14) #1 Pagination.paginate (package:codefactory_lecture/common/provider/pagination_provider.dart:91:22) <asynchronous suspension>이건 디테일 스크린에서 rating을 fetchmore로 더 불러올때 나는 에러입니다.[ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: type 'List<IModelWithId>' is not a subtype of type 'List<RestaurantModel>?' of 'data' #0 CursorPagination.copyWith (package:codefactory_lecture/common/model/cursor_pagination_model.dart:28:14) #1 Pagination.paginate (package:codefactory_lecture/common/provider/pagination_provider.dart:91:22) <asynchronous suspension>그리고 이건 restaurant_screen.dart에서 쭉 내려서 데이터를 더 불러오려고 할 때 에러입니다. 둘 다 비슷한 에러입니다. state = resp.copyWith(data: [ ...pState.data, ...resp.data, ]);페이지네이션 코드 중 이 부분에 문제가 있었고, CursorPagination copyWith({ CursorPaginationMeta? meta, List<T>? data, }) { return CursorPagination<T>( meta: meta ?? this.meta, data: data ?? this.data); }여기서 List<T>? data의 타입이 맞지 않는 것 같습니다. 데이터 타입이 알맞게 각각 들어가야 할텐데, 자꾸 List<IModelWithId> 타입이 들어가는 거 같아요... 어느 부분을 고쳐야 할까요?
-
해결됨홍정모의 따라하며 배우는 C언어
9분 48초 (*(parr + 1))[1] 이게 이해가 잘 안되네요
(*(parr + 1))[1]을 제가 해석해보자면parr은 arr0을 가리킨다. 거기에 1을 더하면 arr1을 가리키게 된다.거기에 *를 붙이면 arr1이 가리키는 arr1[0]을 가리키게 된다.여기에 [1]를 붙이면? arr1[0][1]을 가리키게 되나? 아니면 arr1[1]을 가리키게 되나? 아니면 arr1[1]이 되나?출력값이 5인걸 보면 맨 오른쪽인것 같은데(*(parr + 1))은 &arr1[0]이고 거기에 [1]을 붙인다는 게 정확하게 무슨 뜻 인가요?어떤 식으로 작동하는건지 이해가 잘 안되요. parr[0]은 &arr0[0]이고parr[0][0]은 arr0[0]이다.라는 것과 비슷하게 작동하는 건가요? 항상 좋은 답변 감사합니다.
-
해결됨독하게 시작하는 C 프로그래밍
주소끼리 뺄셈
안녕하세요 널널한 개발자님 강의를 듣고 있는 초보자 수강생입니다.강의를 듣던 중 궁금한 사항이 있어 질문드립니다.아래에서와 같이 pszData와 szBuffer는 주소인데 pszData-szBuffer처럼 주소끼리의 뺄셈이 원래 가능한건가요? 답변 부탁드리겠습니다.
-
미해결
Django Serializer create(**validated_data) 질문
class SignUpSerializer(serializers.ModelSerializer): class Meta: model = User fields = ('__all__') extra_kwargs = {"password": {"write_only":True}} def create(self, validated_data): user = User.objects.create(**validated_data) user.set_password(validated_data['password']) user.save() return user저는 위와 같이 회원가입 API를 만들었는데Direct assignment to the forward side of a many-to-many set is prohibited. Use groups.set() instead.이런 오류가 뜹니다... 다른 방식으로def create(self, validated_data): if User.objects.filter(username=validated_data['username']).exists() or User.objects.filter(email=validated_data['email']).exists(): raise serializers.ValidationError('username 존재 or email 존재') else: user = User.objects.create( username=validated_data['username'], nickname=validated_data['nickname'], email=validated_data['email'], gender=validated_data['gender'], age=validated_data['age'] ) user.set_password(validated_data['password']) user.save() return user이렇게 만들었더니 오류가 안뜨더라구요. 두 차이가 뭔지 궁금합니다.ManytoManyfield는 사용하지도 않았는데 저런 이유가 뜨는 이유도 모르겠습니다...ㅜ
-
미해결[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
별거 아니긴 한데 nest-cli 로 만들때
nest cli로 resource 만들때 경로를 / 넣어주면 아래에 바로 생성 됩니다.nest g resource posts/comments이렇게 하면 posts폴더 아래에 comments가 생깁니다!
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
회원가입 중복관련 질문있습니다.
회원가입을 성공시키고 나서 다시들어가면 라우팅이 메인화면에 가져서 회원가입을 하면 signUpDone이 true가 되었다가 false로 변경시켯는데 여기서 같은 아이디로 가입을 하게되면 제로초님이 403에러 뜨게 하신거 처럼 백엔드 작업을 해놓고 같은 아이디로 가입을 햇는데 403에러까지는 정상적으로 나오는데 403에러면 rejected가 실행이 되야 되는거 같은데 fulfilled가 실행이 됩니다. 콘솔 화면에는 정상적으로 에러가 낫다라는게 나오는데도요... 이유를 알수 잇을까 싶습니다.콘솔에 나오는 것은 아래 이미지구제 리덕스툴킷 코드는 아래와 같습니다.import { createAsyncThunk,createSlice } from "@reduxjs/toolkit"; import * as I from "types" import { authAxios, baseAxios } from "utils/instance"; interface UserInitialState { // 회원가입 signUpLoding: boolean; signUpDone: boolean; signUpError: null | undefined | string; resetSignUpDone: boolean; } const initialState: UserInitialState = { // 회원가입 signUpLoding: false, signUpDone: false, signUpError: null, resetSignUpDone: false, }; // 회원가입 export const signUp = createAsyncThunk("user/signup", async (data:I.SignUp) => { const response = await baseAxios.post("/user", data); return response; }); const UserReducer = createSlice({ name: "user", initialState, reducers: { resetSignUpDone:(state)=>{ state.signUpDone = false } }, extraReducers: (builder) => builder // 회원가입 .addCase(signUp.pending, (draft) => { draft.signUpLoding = true; draft.signUpError = null; draft.signUpDone = false; }) .addCase(signUp.fulfilled, (draft) => { draft.signUpLoding = false; draft.signUpDone = true; }) .addCase(signUp.rejected, (draft, action) => { draft.signUpLoding = false; draft.signUpDone = false; draft.signUpError = action.error.message; }), }); export const { resetSignUpDone } = UserReducer.actions; export default UserReducer
-
해결됨이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
22분 52초까지 진행하던 중 Faild to Find 오류가 나왔습니다
분명 파일에 있는 경로를 참조하여 붙여넣기 했는데 왜 이러는걸까요? #include "Character/ABCharacter.h" #include "Components/CapsuleComponent.h" #include "GameFramework/CharacterMovementComponent.h" // Sets default values AABCharacter::AABCharacter() { // Pawn bUseControllerRotationPitch = false; bUseControllerRotationYaw = false; bUseControllerRotationRoll = false; // Capsule GetCapsuleComponent()->InitCapsuleSize(42.f, 96.0f); GetCapsuleComponent()->SetCollisionProfileName(TEXT("Pawn")); // Movement GetCharacterMovement()->bOrientRotationToMovement = true; GetCharacterMovement()->RotationRate = FRotator(0.0f, 500.0f, 0.0f); GetCharacterMovement()->JumpZVelocity = 700.f; GetCharacterMovement()->AirControl = 0.35f; GetCharacterMovement()->MaxWalkSpeed = 500.f; GetCharacterMovement()->MinAnalogWalkSpeed = 20.f; GetCharacterMovement()->BrakingDecelerationWalking = 2000.f; // Mesh GetMesh()->SetRelativeLocationAndRotation(FVector(0.0f, 0.0f, -100.0f), FRotator(0.0f, -90.0f, 0.0f)); GetMesh()->SetAnimationMode(EAnimationMode::AnimationBlueprint); GetMesh()->SetCollisionProfileName(TEXT("CharacterMesh")); static ConstructorHelpers::FObjectFinder<USkeletalMesh> CharacterMeshRef(TEXT("/Script/Engine.SkeletalMesh'/Game/Characters/Mannequins/Meshes/SKM_Quinn_Simple.SKM_Quinn_Simple'")); if (CharacterMeshRef.Object) { GetMesh()->SetSkeletalMesh(CharacterMeshRef.Object); } static ConstructorHelpers::FClassFinder<UAnimInstance> AnimInstanceClassRef(TEXT("/Game/Characters/Mannequins/Animations/ABP_Quinn.ABP_Quinn")); if (AnimInstanceClassRef.Class) { GetMesh()->SetAnimInstanceClass(AnimInstanceClassRef.Class); } }
-
미해결CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조
#4 .CRUD 실습 강의가 조인의 설명으로 나옵니다.
저만 그런가요? ;ㅁ;