묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
뭘해도 에러날때 Uncaught Error: useNavigate() may be used only in the context of a <Router> component.
App.js에 있는 <BrowserRouter>태그를 Index.js의 Provider위로 감싸주세요 그러니 Loginpage.js등에서 navigate가 정상작동하네요참고하세요.
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
Ansible 컨테이너에서 docker 컨테이너로 ssh 접속중 에러가 발생합니다.
안녕하세요 강사님 유익한 강의 고맙습니다!실습 중 Ansible 컨테이너에서 docker 컨테이너로 ssh 접속 중 에러가 발생합니다.강의 내용대로 ssh-keygen 명령을 입력하고아래 명령과 같이 docker 컨테이너에(172.17.0.4) ssh 키페어를 복사 후 접속하였습니다.ssh -i .ssh/id_rsa root@172.17.0.4공개키가 정상적으로 적용이 되었다면 패스워드를 입력하지 않아도 되는걸로 알고 있었는데 패스워드를 입력해야 합니다.이후로 ansible의 ping 테스트를 해봤으나 Permission denied 에러가 발생합니다.[root@2dec73dfb74a ~]# ansible all -m ping 172.17.0.4 | UNREACHABLE! => { "changed": false, "msg": "Failed to connect to the host via ssh: root@172.17.0.4: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).", "unreachable": true }관련 에러는 어떻게 조치해야 하는지 문의 드립니다.감사합니다.
-
미해결[라이브 멘토링] 유니티 뱀파이어 서바이벌 장르 모작
섹션2 매니저 강의 중 프로퍼티로 인스턴스 리턴하는 부분 질문
싱글턴 구현을 위해 public static Managers Instance 프로퍼티를 만들고 Managers로 리턴하는것 까진 이해했습니다.근데, 다른 매니저 구현하는 부분에서DataManager _data = new DataManager(); 로인스턴스화 한 후,public static DataManager Data { get return Instance?._data;}}프로퍼티를 통해 리턴하는 부분이 이해가 안됩니다.강의에서는 싱글턴으로 구현된 매니저에 다른 매니저들을 붙이는 거라고 말씀하셨는데, 리턴문이 이해가 안되네요.?. 는 널체크고 사실상 Instance._data; 로 해도 실행은 잘되는것 같아서 저것만 가지고 질문을 드리자면Data 프로퍼티를 호출하면 Instance 프로퍼티에 _data 에 담긴 인스턴스를 입력(set)하고 리턴을 한다는건지..(근데 그와중에 Instance 프로퍼티에 set은 또 없고..)Instance 프로퍼티에서 get해서 가져오고 뭔가?를 해서 인스턴스를 리턴하는거같은데, 구문이 이해가 안가네요.. (문법실력이 부족한거같아서 구글링을 아무리해도 찾을수도 없네요 ㅜㅜ)보통 이렇게 점을 찍어서 하는건 클래스 내부 요소를 요청하거나 메서드 체이닝을 하거나 할 때 쓰는거 아닌가 싶은데,Instance라는 프로퍼티에 점을 찍은후 생성한 _data 인스턴스를 이어서 코딩하는건 도저히 이해가 안가네요 ㅠㅠ어떤부분을 제가 공부하면 이해가 잘될까요. 아 그리고 추가 질문 하나더 드리자면.. Data 프로퍼티를 통해 Instance를 거쳐 리턴되는 값은 DataManager 형식일텐데, Instance는 Managers 형식인데 어떻게 저렇게 리턴이 가능한건가요? 그냥 클래스 인스턴스끼리는 된다고 생각하면되나요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
윈도우 빌드가 안돼요
윈도우 빌드가 안돼요 제발 도움좀요파일 이름은 Spring으로 했고 나머지는 다 강사님과 맞췄습니다.
-
미해결C로 배우는 자료구조 및 여러가지 예제 실습
search_song함수의 ptr_snode = ptr_snode;의 의미가 궁금합니다
void search_song(char* artist, char* title) { Artist* ptr_artist = find_artist(artist); if (ptr_artist == NULL) { printf("No Such artist exists."); return; } SNode* ptr_snode = ptr_artist->head; while (ptr_snode != NULL && strcmp(ptr_snode->song->title, title) < 0) // 없음 ptr_snode = ptr_snode; if (ptr_snode != NULL && strcmp(ptr_snode->song->title, title) == 0) {// 존재 printf("Found:\n"); print_song(ptr_snode->song); } else { printf("No such song exists.\n"); return; } } 다음의 코드에서 while문의 ptr_snode = ptr_snode;의 의미 설명을 부탁드려도 될까요 ?? 어떤 역할을 하는 코드인지 모르겠네요 ㅠ
-
해결됨넓고 얕게 외워서 컴공 전공자 되기
동시성 ? 병렬성 ?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.안녕하세요 제작자님 추천을 받아서 강의를 보고 있었는데요.동시성과 병렬성에 대해서 의문이 생겨서 질문을 남깁니다.해당강의에서 병렬성에 대해 '같은 일을' 여러주체가 함께 동시에 진행하는 것이라고 설명해주셨는데요 예를들어 철수와 영희가 있을 때 철수는 밥을 짓고, 영희는 세탁기를 돌립니다. 이 말은 둘이 병렬적으로 처리가 되고 있는 것인데, 꼭 같은 일에 대해서만 병렬성이 있다고 하나요 ?
-
해결됨스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
new-form.jsp 404 에러 도와주세요!
new-form.jsp 파일에서 계속 404 에러가 뜹니다.강의 영상대로 진행하였고, 강의 자료 파일로 적용해보아도 해결되지 않았습니다.도움이 필요합니다.스프링 부트는 2.6 으로 만들었습니다. https://drive.google.com/file/d/1qjHK8LSMmQcBbh2bLGNK7coLZ_F1g1HB/view?usp=sharing
-
해결됨자바 ORM 표준 JPA 프로그래밍 - 기본편
블로그 기술
김영한 님의 강좌를 쭉 따라 공부중인데 뭔가 강의 소스를 블로그에 정리해도 될지 몰라서 노션에만 정리해놨는데요,..! 이직 준비하면서 꾸준함을 나타내고 싶어서 블로그에 차근차근 올려보려는데 어느정도 까지 올려도 되는지 궁금합니다
-
미해결앨런 iOS 앱 개발 (15개의 앱을 만들면서 근본원리부터 배우는 UIKit) - MVVM까지
섹션 15 동기와 비동기의 개념 질문있습니다
강의를 듣던 도중 동기 , 비동기, 직렬, 동시 에 개념에 대해서 질문이 생겼습니다.직렬의 경우 그림으로 표현해 주셨던 것처럼다른 하나의 쓰레드에서 task를 순서에 따라 전부 다 처리한다고 이해했는데,제가 이해한 것이 맞다면, 동기 방식으로 직렬 테스크를 처리했을 때 굳이 다른쓰레드로 테스크를 넘기는 것이 의미가 있나요? 비동기라면 해당 테스크를 직렬로 처리하더라도 동시에 다른 테스크를 진행할 수 있다고 생각하지만 동기처리의 경우 결국 메인쓰레드에서 진행하는 것과 같은 수준의 처리시간이 들고 오히려 쓰레드를 바꾸는데에 대한 리소스만 더 사용하게 되는것은 아닌가요??라는 의문이 들었습니다..!
-
미해결[초급편] 안드로이드 커뮤니티 앱 만들기(Android Kotlin)
시작 activity 변경이 안되고 오류가 납니다
오류코드는 Android resource linking failedC:\Users\samsung\AndroidStudioProjects-Kotlin\MySoloLife\app\build\intermediates\packaged_manifests\debug\AndroidManifest.xml:34: error: unexpected element <intent-filter> found in <manifest><application>.강의는 안드로이드코틀린 초급편 안드로이드 커뮤니티앱만들기 섹션1회원가입 레이아웃꾸미기 첫강 프로젝트제작및스프래시화면만들기입니다
-
미해결스프링 핵심 원리 - 고급편
api 결과에 대한 질문
restapi로 댓글 crud를 할때에 대한 질문입니다. (crud 모두 restapi로 구현하였습니다.) create, update, delete에 대한 결과값으로 return new ResponseEntity<>(200); 을 하게 만들었습니다. 그리고 성공하면 클라이언트가 댓글리스트를 가져오는 api를 요청하도록 만들었습니다. 이렇게 만드는 게 맞는 건가요? ResponseEntity를 리턴하는 컨트롤러의 경우 @RestController말고 @Controller를 달아도 되던데, @RestController로 명시적으로 해주는 게 맞을가요? 자신이 쓴 댓글에는 수정 및 삭제를 보이게 하고 싶습니다. 다양한 방식이 있던데 일반적으로는 어떤 방식으로 하는지 궁금합니다.
-
미해결비전공 기획자 및 관리자를 위한 IT 필수 지식
안녕하세요.강의자료부탁드립니다.
안녕하세요. 학습에 도움이 많이 되고 있습니다. 강의자료 요청 부탁 드려요.cashbay@naver.com 감사합니다~
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
로그인시 /api/users/login,~~/login 404에러 뜨시는분들
/client/src/user_action.js에 const request = axios.post('/api/users/login', dataToSubmit) // DB (server/index.js)주소와 /sever/index.js에 app.post('/api/users/login',(req, res) =>{주소를 같게 맞춰 주시면 될듯합니다. 참고해주세요.
-
미해결그림으로 배우는 쿠버네티스(v1.30) - {{ x86-64, arm64 }}
POD 간 API 통신
POD 간 REST API 호출을 하기 위해서는 API 호출 URL 도메인을 어떻게 설정하고 호출 하나요? POD 는 사실 어떤 노드에 있는지 불확실 하기 때문에 어떤 식으로 내부적으로 REST API 호출을 할 수 있는지 궁금합니다.
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
yolov3 , yolov5를 DenseNet 으로 변경할 수 있나요? 한다면 어떻게 해야 하나요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 강의 내용을 질문할 경우 몇분 몇초의 내용에 대한 것인지 반드시 기재 부탁드립니다. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
-
해결됨
scanf 관련 질문 드립니다.
1/int num;char str1[100];scanf("%[^,],%d",str1,num);이렇게 했을 때 %[^,]는 ,가 나오기 전까지 입력 받는 것으로 알고 있습니다.그래서 human,3으로 입력 했을 때 str1에는 human이 num에는 3이 오류 없이 들어가는 걸 확인 했었습니다.%[^,]와 %d 사이에 있는 ,는 정확하게 어떤 역할을 하는지 궁금합니다.,가 입력되었을 때 ,를 무시하는 역할을 하는 것인지? 아니면 다른 무언가인지그리고 human 3으로 입력 했을때 쓰래기 값이 나오는데 어디에서부터 나온 쓰래기 값인지 궁금합니다.
-
미해결비전공자의 전공자 따라잡기 - 네트워크, HTTP
what is my ip
시스템설정 -> 네트워크탭 -> 이더넷에 나와있는 IP 주소 192.168 ~ 은 공유기에서 사용하는 사설 IP이고, Google 에서 what is my ip 라고 치면 나오는 IP 가, 내 공인 IP라고 보면 되는걸까요??
-
해결됨실전! Querydsl
계층구조로 join이 일어나는 경우에 대한 질문입니다..
@Table(name = "a") @Entity @Getter public class AEntity { @Id @Column(name = "a_id") private Long aId; @OneToMany(mappedBy = "aEntity") List<BEntity> bList; public void initializeClist() { bList.stream().map(BEntity::getCList).forEach(Hibernate::initialize); } }@Table(name = "b") @Entity @Getter public class BEntity { @Id @Column(name = "b_id") private Long bId; @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "a_id") private AEntity aEntity; @OneToMany(mappedBy = "bEntity") List<CEntity> cList; }@Table(name = "c") @Entity @Getter public class CEntity { @Id @Column(name = "c_id") private Long cId; @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "b_id") private BEntity bEntity; }안녕하세요. 수업을 아직 수강중인 학생입니다.위와같이 A -> B -> C 아래로 OneToMany 관계로 LeftJoin을 해야한다고 하면어떤식으로 코드를 짜야하는 걸까요?displayRwdbJpaQueryFactory .selectFrom(QAEntity.aEntity) .leftJoin(QAEntity.aEntity.bList, QBEntity.bEntity) .fetchJoin().fetch();.fetchJoin을 써봤는데.. 한번은 되는데 두번은 안되더라구요..bList.stream().map(BEntity::getCList).forEach(Hibernate::initialize);@BatchSize 주고 위처럼 initialize 해봤는데..테이블 계층구조가 여기서 끝나는게 아니라서.. 이런식으로 처리 되기에는 조금 무리가 있을것 같습니다.장고끝에 조언을 구합니다.. 도와주세요.. ㅠㅠ
-
해결됨따라하며 배우는 리액트 네이티브 기초
BottomTabScreen 관련 질문입니다.
import {createBottomTabNavigator} from '@react-navigation/bottom-tabs'; import {createNativeStackNavigator} from '@react-navigation/native-stack'; import React from 'react'; import Home from './src/screens/Home'; import Search from './src/screens/Search'; import Profile from './src/screens/Profile'; import Activity from './src/screens/Activity'; import {NavigationContainer} from '@react-navigation/native'; import Status from './src/screens/Status'; import FriendProfile from './src/screens/FriendProfile'; import EditProfile from './src/screens/EditProfile'; const App = () => { const Stack = createNativeStackNavigator(); const Tab = createBottomTabNavigator(); const BottomTabScreen = () => { return ( <Tab.Navigator screenOptions={() => ({ tabBarHideOnKeyboard: true, // tabBarShowLabel: false, headerShown: false, tabBarStyle: { height: 70, }, })}> <Tab.Screen name="Home" component={Home} /> <Tab.Screen name="Search" component={Search} /> <Tab.Screen name="Activity" component={Activity} /> <Tab.Screen name="Profile" component={Profile} /> </Tab.Navigator> ); }; return ( <NavigationContainer> <Stack.Navigator screenOptions={{headerShown: false}}> <Stack.Screen name="Bottom" component={BottomTabScreen} /> <Stack.Screen name="Status" component={Status} /> <Stack.Screen name="FriendProfile" component={FriendProfile} /> <Stack.Screen name="EditProfile" component={EditProfile} /> </Stack.Navigator> </NavigationContainer> ); }; export default App; 강의 내용과 같이 App 컴포넌트 안에서BottomTabScreen 컴포넌트를 선언하면 "Do not define components during render." 라는경고문이 뜹니다. 그래서 아래와 같이 코드를 수정하였는데App 컴포넌트 바깥에서 이렇게 선언해도 문제가 없는건가요?import {createBottomTabNavigator} from '@react-navigation/bottom-tabs'; import {createNativeStackNavigator} from '@react-navigation/native-stack'; import React from 'react'; import Home from './src/screens/Home'; import Search from './src/screens/Search'; import Profile from './src/screens/Profile'; import Activity from './src/screens/Activity'; import {NavigationContainer} from '@react-navigation/native'; import Status from './src/screens/Status'; import FriendProfile from './src/screens/FriendProfile'; import EditProfile from './src/screens/EditProfile'; const Stack = createNativeStackNavigator(); const Tab = createBottomTabNavigator(); const BottomTabScreen = () => { return ( <Tab.Navigator screenOptions={() => ({ tabBarHideOnKeyboard: true, // tabBarShowLabel: false, headerShown: false, tabBarStyle: { height: 70, }, })}> <Tab.Screen name="Home" component={Home} /> <Tab.Screen name="Search" component={Search} /> <Tab.Screen name="Activity" component={Activity} /> <Tab.Screen name="Profile" component={Profile} /> </Tab.Navigator> ); }; const App = () => { return ( <NavigationContainer> <Stack.Navigator screenOptions={{headerShown: false}}> <Stack.Screen name="Bottom" component={BottomTabScreen} /> <Stack.Screen name="Status" component={Status} /> <Stack.Screen name="FriendProfile" component={FriendProfile} /> <Stack.Screen name="EditProfile" component={EditProfile} /> </Stack.Navigator> </NavigationContainer> ); }; export default App;
-
해결됨스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
HttpSession에서 쿠키를 Response에 넣어주기
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요, SessionManager와 HttpSession을 비교하다 의문점이 들어 질문 드립니다.SessionManager를 구현할 땐 Cookie를 생성한 후 이를 response에 넣주도록 했습니다. 그래서 이를 사용할 때 파라미터로 response를 넣어줬구요.public void createSession(Object value, HttpServletResponse response) { // 세션 ID 생성하고 값을 세션에 저장 String sessionId = UUID.randomUUID().toString(); sessionStore.put(sessionId, value); // 쿠키 생성 Cookie mySessionCookie = new Cookie(SESSION_COOKIE_NAME, sessionId); response.addCookie(mySessionCookie); }그런데 서블릿에서 구현한 HttpSession을 사용했을 땐 Session을 생성한 후HttpSession session = request.getSession(true);setAttribute로 값을 넣어준 후 (이 때 쿠키가 생성된다고 이해했습니다.)session.setAttribute(SessionConst.LOGIN_MEMBER, loginMember);따로 response에 쿠키를 넣어주지 않았는데도 클라이언트에 쿠키가 저장되는것 같습니다. HttpSession이 이를 가능하게 해주는 걸까요?