묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
JPA을 사용하려면protected UserDto(){}을만들어줘야한다고 하셨는데 저는 protected UserDto(){}을 만들어주면 오류가 나네요 이유가 뭘까요? ;
(사진)
-
해결됨Flutter 앱 개발 실전
NotifierProvider 로 변경하고 싶어요
안녕하세요.Riverpod 상태관리에서 StateNotiferProvider 대신에 NotifierProvider를 사용하는 것을 권장하신다고 하셨는데요.StateNotifierProvider 로 작성한 코드를 NotiferProvider 로 변경하고 싶은데 잘 안되어 문의 드립니다. contactStateProvier 코드로는 정상 동작됩니다.이 코드를 NotifierProvider 로 변경해보려고 하는데 잘 안되네요.final contactStateProvider = StateNotifierProvider<ContactStateNotifier, ContactResultBase>( (ref) { final repository = ref.watch(restClientProvider); final notifier = ContactStateNotifier(restClient: repository); return notifier; }, ); class ContactStateNotifier extends StateNotifier<ContactResultBase> { final RestClient restClient; ContactStateNotifier({required this.restClient}) : super(ContactResultLoading()) { postContactList(); } postContactList() async { final resp = await restClient.postContactList( Crypto.AES_encrypt(Crypto.URLkey()), ''); state = resp; } }@RestApi(baseUrl: RetrofitURL.baseUrl) abstract class RestClient { factory RestClient(Dio dio, {String baseUrl}) = _RestClient; @POST(RetrofitURL.mLogin) @FormUrlEncoded() Future<LoginResponse> userLogin( @Field() String keyword, @Field() String userID, @Field() String password, @Field() String uID, @Field() String mfoneNO, ); @POST(RetrofitURL.contactData) @FormUrlEncoded() Future<ContactResult> postContactList( @Field() String keyword, @Field() String search, ); }final secureStorageProvider = Provider<FlutterSecureStorage>((ref) => const FlutterSecureStorage()); final dioProvider = Provider<Dio>((ref) { final dio = Dio(); final storage = ref.watch(secureStorageProvider); dio.interceptors.add(LogInterceptor()); dio.interceptors.add( CustLogInterceptor(storage: storage,), ); return dio; }); final restClientProvider = Provider<RestClient>((ref) { final dio = ref.watch(dioProvider); final repository = RestClient(dio); return repository; }); contactStateProvider 를 변경시도 해보다가 에러가 발생한 코드final contactProvider = NotifierProvider<ContactNotifier, ContactResultBase>( () { final repository = ref.watch(restClientProvider); final notifier = ContactNotifier(restClient: repository); return notifier; }, ); class ContactNotifier extends Notifier<ContactResultBase> { @override ContactResultBase build() => ContactResultLoading(); final RestClient restClient; ContactStateNotifier({required this.restClient}) { postContactList(); } postContactList() async { final resp = await restClient.postContactList( Crypto.AES_encrypt(Crypto.URLkey()), ''); state = resp; } }
-
미해결[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)
데이터바인딩 gradle 오류
(사진)
-
미해결그림으로 쉽게 배우는 운영체제
파일할당 테이블
안녕하세요 파일 할당 시스템에서 파일을 삭제를 하면 헤더가 지워지고 그 지워진 블록은 지워진 블록끼리 연결을 해 메모리에 빈 공간이 어디있는지 스캔할 필요를 줄여주잖아요. 이때 데이터가 지워지는 게 아니라 헤더가 지워져서 나중에 포렌식 복구를 하여 데이터를 복구할 수 있다고 하셨는데, 그럼 새로운 데이터를 거기에 할당하게 될 경우는 어떻게 되는 건가요? 그 데이터만 남은 블록에 새 데이터가 할당되지 않은 부분만 포렌식 복구를 할 수 있는 건가요?
-
미해결스프링 핵심 원리 - 기본편
옵션 처리
안녕하세요.테스트 진행 중 setNoBean1메서드를 required = false로 처리한 경우 호출되지 않아야 하는데저는 호출 된 상태에서 null값이 나오고 Bean2메서드가 호출되지 않았습니다 ㅠㅠ어떤 게 잘못 된걸까요 ㅜㅜ?
-
미해결코드로 배우는 React 19 with 스프링부트 API서버
강의 순서 및 누락 건 확인
안녕하세요 강의 진행 중에[로그인 적용 확인] -> [로그아웃 처리] 를 보다 보니 중간에 쿠키 설정이 다되어 있어서뭔가 순서가 뒤바뀐 건가요...
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
redux-thunk 관련 오류 !!
import React from 'react'; import React from 'react'; import ReactDOM from 'react-dom/client'; import './index.css'; import App from './App'; import reportWebVitals from './reportWebVitals'; import {Provider} from 'react-redux'; //import 'antd/dist/antd.css' import { applyMiddleware,createStore } from 'redux'; import promiseMiddleware from 'redux-promise'; import thunk from 'redux-thunk'; import Reducer from './_reducers' const createStoreWithMiddleware = applyMiddleware(promiseMiddleware,thunk)(createStore) const root = ReactDOM.createRoot(document.getElementById('root')); root.render( <Provider store={createStoreWithMiddleware(Reducer, window.__REDUX_DEVTOOLS_EXTENSION__ && window.__REDUX_DEVTOOLS_EXTENSION__() )}> <App /> </Provider> ); // If you want to start measuring performance in your app, pass a function // to log results (for example: reportWebVitals(console.log)) // or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals reportWebVitals(); 위 코드 실행했더니 export 'default' (imported as 'thunk') was not found in 'redux-thunk' (possible exports: thunk, withExtraArgument) 이란 오류가 떠서 node_modules, package.json 폴더도 삭제하고 다시 npm install을 했음에도 똑같은 오류가 떠요 ㅠ
-
미해결[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
파일에 답이 작성되어 있어요
문제를 풀며 가장 자연스럽게 익숙해지는 파이썬 기본: 문자열,리스트,조건문 활용1강의자료에서 python-question2-web파일에 답이 다 작성되어있는데, 답 작성이 되지 않은 파일은 없나요?- 본 강의 영상 학습 관련 문의에 대해 답변을 드립니다. (어떤 챕터 몇분 몇초를 꼭 기재부탁드립니다)- 이외의 문의등은 평생강의이므로 양해를 부탁드립니다- 현업과 병행하는 관계로 주말/휴가 제외 최대한 3일내로 답변을 드리려 노력하고 있습니다- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
-
해결됨앨런 iOS Concurrency(동시성) - 디스패치큐와 오퍼레이션큐의 이해
[7-3.DispatchBarrier] 예제 코드 질문
아래 예제 코드에서 "threadSafeNameGroup.notify" 가 정상적으로 동작하려면, 그룹의 enter와 leave 를 사용해주어야 하는 것이 아닌가? 라는 생각이 들었습니다.왜냐하면 "barrierThreadSafePerson.changeName" 메소드가 async로 작업을 보내기 때문입니다. 그럼에도 정상적으로 동작하는 이유는 barrier 플래그를 설정했기 때문에, 현재 쓰레드를 블락처리 했기 때문에 정상적으로 동작했는 것이 아닌가하는 추측을 하고 있습니다. 왜 enter 와 leave가 사용이 되지 않았는지 궁금합니다.
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
블루프린트(에디터)에서 지정한 ComboActionData가 null이 되는이유
안녕하세요AI시스템 구현도중 ComboActionData를 불러올수 없는 문제가 생겨서 질문 드립니다.우선 이것저것 바꿔서 실습 해보는 중이라 강의 코드랑 다른부분이 있을순 있습니다만 베이스는 강의코드입니다...void ATLStageGimmick::OnOpponentSpawn() { const FTransform SpawnTransform(GetActorLocation() + FVector::UpVector * 88.0f); ATLCharacterNonPlayer* OpponentCharacter = GetWorld()->SpawnActorDeferred<ATLCharacterNonPlayer>(OpponentClass, SpawnTransform); if (OpponentCharacter) { OpponentCharacter->OnDestroyed.AddDynamic(this, &ATLStageGimmick::OnOpponentDestroyed); OpponentCharacter->SetLevel(CurrentStageNum); OpponentCharacter->FinishSpawning(SpawnTransform); } }우선 기믹 코드쪽에서 이렇게 스폰을 해주는데요,(예제랑 같습니다) CharacterNonPlayer를 상속받아 BP_EliteBoss라는 이름으로 블루프린트를 만든뒤 기믹 엑터에 이렇게 설정을 해줬습니다. 그리고 BP_EliteBoss안에 필요한 몽타주와 ComboActionData를 설정해줬는데요 그래서 게임을 실행해보면 정상적으로 스폰도 되고 이동도 합니다. 그런데 정작 공격을 진행하면 ComboActionData가 없다는것 아니겠습니까..? 저는 분명 블루프린트에서 ComboActionData를 넣었는데 말이죠.. 혹시 SpawnActorDeferred하게되면 에디터에서 지정한 에셋들은 사용할 수 없는건가요??? 해결방법을 찾다 안돼서 질문 드립니다...
-
미해결[개정판 2023-11-27] Spring Boot 3.x 를 이용한 RESTful Web Services 개발
퀴즈 완료 후 질문드립니다
// UserAndCountResponse.java @AllArgsConstructor @ToString @Data public class UsersAndCountResponse { private int count; private List<User> users; } // UserJPAController.java @GetMapping("/usersAndCount") public UsersAndCountResponse retrieveAllUsersAndCount(){ List<User> users = userRepository.findAll(); int count = users.size(); System.out.println(new UsersAndCountResponse(count, users)); return new UsersAndCountResponse(count, users); } UserAndCountResponse.java 파일을 exception 혹은 response 폴더에 생성하여 다음과 같은 코드를 작성하였고, 406 error가 발생하였으나 @Data 어노테이션 추가하자 잘 동작했습니다 그런데 문제의 의도는 ResponseEntity 부분에 두 정보를 포함하는 것 같은데, 관련 키워드로 찾아봐도 복수의 응답을 포함하는 방법을 찾을 수 없었기에 질문드립니다
-
미해결[개정판 2023-11-27] Spring Boot 3.x 를 이용한 RESTful Web Services 개발
퀴즈 해설 질문드립니다
JPA를 이용한 사용자 추가와 삭제 - HTTP POST/DELETE method 강의의 과제 부분의 해설이나 정답지가 있으신가요?새로운 response를 생성하거나, 혹은 ResponseEntity에서 복수 정보를 반환하는 식으로 접근하려 하는데 맞는 접근 방법인지 모르겠습니다
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
실전 예제 1 - 요구사항 분석과 기본 매핑 질문있습니다.
1.7분에서 setter 보다 유지보수 때문에 생성자를 쓰는데 이유 좀 자세하게 알수 있나요?2.9분 53초에서 뒤에 사용될 명령어 나오게 하는 단축키 뭔가요?3.10분 45초에 @Table(name="Orders")//Orders로 한 이유가 에약어로 order은 orderby로 인식된다.(db마다 다름) 가 맞나요?4.14분 10초처럼 아래 문구를 어떻게public void setStockQuantity(int stockQuantity) {this.stockQuantity = stockQuantity;}public void setStockQuantity(int stockQuantity) {this.stockQuantity = stockQuantity;} 이렇게 바꾸나요? 5. 왼쪽화면은 제화면이고 오른쪽 화면은 강의 화면입니다. 빨간색 네모박스처럼 상위 폴더 하위 폴더가 안나뉘어집니다. 이렇게 어떻게 해야 하나요? 시도한 방법:jpabook.jpashop.domain1 을 domain1 이렇게 리팩터 시도를 하면 활성화가 안됩니다.
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
실전 예제 1 - 요구사항 분석과 기본 매핑 강의 세팅 질문있습니다.
jpamain 실행시 아래같이 db에는 잘 붙는거 확인했는데요.h2창은 잘뜹니다.근데 강의 18분<아래 그림 참조>정도에 나오는것처럼 db가 안뜹니다.<jpa 실행문구> memberpackage jpabook.jpashop.domain1; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; @Entity public class Member { @Id @GeneratedValue @Column(name="MEMBER ID") private Long id; private String name; private String city; private String street; private String zipcode; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getCity() { return city; } public void setCity(String city) { this.city = city; } public String getStreet() { return street; } public void setStreet(String street) { this.street = street; } public String getZipcode() { return zipcode; } public void setZipcode(String zipcode) { this.zipcode = zipcode; } } 파일링크 jpamainimport javax.persistence.EntityManager; import javax.persistence.EntityManagerFactory; import javax.persistence.EntityTransaction; import javax.persistence.Persistence; public class JpaMain { public static void main(String[] args) { EntityManagerFactory emf = Persistence.createEntityManagerFactory("hello"); EntityManager em = emf.createEntityManager(); EntityTransaction tx = em.getTransaction(); tx.begin(); try { tx.commit(); } catch (Exception e) { tx.rollback(); } finally { em.close(); } emf.close(); } }
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
husky
D:\coding\codecamp-frontend\class> npx husky install위 내용처럼 허스키를 설치하면 husky - .git can't be found (see https://typicode.github.io/husky/#/?id=custom-directory) 이렇게 .git을 찾을 수 없다고 뜹니다. 저는 작업물을 git으로 버전 관리했는데 찾아보니 package.json과 .git의 경로가 형제관계여야 오류가 안난다는 정보를 찾았습니다. 제 작업물의 폴더 구조가 최상위 폴더에 .git이 있고 저렇게 클래스 / 클래스_퀴즈 / 포폴 폴더에 package.json이 각각 있는 형태인데요.이러한 경우는 어떻게 해결해야 할까요?
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
GetAuthGameMode를 통해 IABGameInterface를 캐스팅하려는 문제
현재 ABStageGimmick.cpp에서 빌드 에러가 납니다.void AABStageGimmick::OnOpponentDestroyed(AActor* DestroyedActor) { IABGameInterface* ABGameMode = Cast<IABGameInterface>(GetWorld()->GetAuthGameMode()); // 에러 SetState(EStageState::REWARD);; } 에러 내용은 아래와 같습니다.1>C:\Program Files\Epic Games\UE_5.3\Engine\Source\Runtime\CoreUObject\Public\Templates\Casts.h(85): error C2027: use of undefined type 'AGameModeBase'1>C:\Program Files\Epic Games\UE_5.3\Engine\Source\Runtime\Engine\Classes\Engine\GameInstance.h(29): note: see declaration of 'AGameModeBase'1>C:\UnrealProject\UE5_GameFrameWork\ArenaBattle\Source\ArenaBattle\Gimmick\ABStageGimmick.cpp(288): note: see reference to function template instantiation 'To Cast<IABGameInterface,AGameModeBase>(From )' being compiled1> with1> [1> To=IABGameInterface,1> From=AGameModeBase1> ] 현재 리서치해본 결과 ABGameMode가 어떤 클래스인지 파악 못해서 GameModeBase.h파일을 추가해줘야 한다고 합니다.아니면 UObject로 형변환 한 뒤에 캐스팅해오라고 되어있습니다. void AABStageGimmick::OnOpponentDestroyed(AActor* DestroyedActor) { IABGameInterface* ABGameMode = Cast<IABGameInterface>((UObject *)(GetWorld()->GetAuthGameMode())); if (ABGameMode) { ABGameMode->OnPlayerScoreChanged(CurrentStageNum); if (ABGameMode->IsGameCleared()) { return; } } SetState(EStageState::REWARD);; } 그래서 이렇게 수정하니 해결이 되었는데 혹시 왜 저는 강사님처럼 코드를 작성하면 되지 않는지 아직 이해가 가지 않습니다.알려주시면 감사하겠습니다!
-
해결됨홍정모의 따라하며 배우는 C언어
mingw-w64 폴더 설치 중 에러
2시간동안 꼼지락 거리다가 이상한 폴더에 mingw-w64가 숨어있는 것을 발견하였습니다!왜인지는 모르겠으나 과거에 C언어 코딩 독학용으로 깔았던 Dev-Cpp(데브씨플플) 폴더 안에 MinGW64라는 이름으로 있는 것 아니겠어요?!그리고 열어본 결과 존재 합디다...그래서 신나서 글을 쓰던 도중 '어? 이거 지우고 다시 깔면 에러가 안 뜨지 않을까?' 해서 지워봤습니다안 되더라구요...다시 방황하던 중 msys2를 설치하라는 답변글을 보고 설치했었던 msys2 폴더에서 자포자기한 심정으로 gcc.exe를 검색해 봤습니다그런데 요녀석이 ucrt64\bin 안에도 숨어있더라구요!그래서 이번에는 실험 그딴거 안하고 바로 연결했습니다
-
미해결readable_code::CMake - Fancy하게 C++ Project 만들기
MATCHES - 특정 패턴 포함
26분 45초에 다른 메시지를 보고 되었다고 오해하신거 같아요^[a-z]{3}.txt$abc.txt도 되지 않고 a3.txt도 되지 않는데 어떨때 True인가요?
-
해결됨스프링 핵심 원리 - 기본편
중복오류
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.중복 오류가 떠서 제가 생각할 때는 AutoAppConfig에서도 빈에 올리고 AppConfig에서도 빈에 올리니까 이중으로 올려서 그런 것 같습니다.그래서 중복으로 올리는 @Bean을 지워봤는데 rateDiscount에서도 오류가 뜹니다 코드에 잘못된 부분이 있을까요..? 코드는 아래에 있습니다.https://drive.google.com/file/d/1bkiOBsAqY9TZ0dZnuh6LmQXizHIcJryx/view?usp=sharing
-
미해결자바 동시성 프로그래밍 [리액티브 프로그래밍 Part.1]
강의 자료가 강의와 불일치 한 것 같습니다.
강의 자료를 받고 있는데 스프링 시큐리티 강의 자료가 받아집니다. 확인 부탁드리겠습니다.