안녕하세요. 워크벤치로 하다보니 동일한 쿼리문에 에러가 나는 경우가 더러 있네요. 구글링으로 보완해가면서 테스트 중입니다. 카페 사용관련 가상데이터 설명 (21:06분) 내용 중에 '1일2회 이상 등록된 전화번호 및 결제일자를 삭제 하는 쿼리문 실행시, " " 요런 메시지가 나와서, 구글링을 해보니, 삭제시 자기 테이블을 조회할 수 없기 때문이라고 나와서 수정을 했는데요. 요렇게 하면 제대로 수행이 되는 것 같습니다. 근데 궁금한 건... 강의내용의 쿼리문은 고객의 해당일자 전체를 삭제하는 것 같은데요. 하루 최초 또는 마지막 건수를 남기고 나머지를 삭제하는 쿼리문을 좀 알 수 있을까요?
안녕하세요 프로젝트 생성 시 이렇게 오류가 뜨는데, 어떤 문제인지 모르겠어서 글 올립니다. 현재 jdk17 버전 사용중이고, 그래서 3버전으로 바꿨는데 jdk 11버전 다운로드와 2점대로 버전을 낮춰야하는건지 여쭤보려구요! build.gradle 사진도 첨부합니다. 추가 간단하게 web,devtools로도 테스트 프로젝트 생성해봤는데 똑같은 에러가 납니다ㅠㅠ 강사님 repo에 있는걸 clone 해서 연결해봐도 같습니다ㅠㅠ
========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 코드 실행 했을 때 local8080 입력해서 들어가면 ok라고 뜨고 잘 실행 되긴 하는데 debug가 많이 뜨고 이런 것들이 많이 나옵니다. 이렇게 뜨는 걸 보면 제대로 RUN 된 것 같지 않은데 실행은 잘 되는 것 같아요 어떻게 고쳐야 하는 건가요
질문 답변을 제공하지만, 강의 비용에는 Q&A는 포함되어 있지 않습니다. 다만 실습이 안되거나, 잘못된 내용의 경우는 알려주시면 가능한 빠르게 조치하겠습니다! [질문 전 답변] 1. 강의에서 다룬 내용과 관련된 질문인가요? [예 | 아니요 ] 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? [ 예 | 아니요] 3. 질문 잘하기 법을 읽어보셨나요? [예 | 아니요 ] ( https://www.inflearn.com/blogs/1719 ) 4. 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. [질문 하기] 혹시.. istio 도 추후 강의 계획에 있으신지 궁금합니다
카일님 안녕하세요! 구글 스프레드시트에 데이터 로그 설계 연습 문제를 풀이 해봤습니다 😀 풀이하는 과정에서 몇 가지 질문사항이 생겨 함께 남깁니다. #1. 이전에 '이런 음식 어때요' 지표를 정의와 멘탈 시뮬레이션 과정에서 크게 2가지 지표를 정의했습니다. 이런 음식 어때요 상품 클릭률(CTR) = 이런 음식 어때요 상품 클릭수 / 홈 화면 조회수 상품 주문 전환율(CVR) = 이런 음식 어때요로 진입한 사용자의 상품 주문수 / 이런 음식 어때요 상품 클릭수 이때 2번 지표처럼 '~로 진입한 사용자의 상품 주문수'가 필요한 경우에 데이터 로그 설계를 어떻게 해야 적절할까요? 클라이언트에서 '상품 주문 완료'까지의 경로를 가지고 있다해도 어떤 이벤트에 어디까지 기록해야 할지 궁금합니다. #2. 검색 결과 페이지에서 검색방식별 사용도를 파악하고 싶을 때 source 관련 데이터는 어떻게 수집하면 좋을까요? '검색하다'라는 사용자 액션이 검색버튼을 통해, 키보드의 검색키를 통해, 최근검색어 태그 등 다양한 경로를 통해 이루어질 수 있는 것 같아 궁금합니다. 처음에는 전체 검색 API 호출수, 검색 버튼 클릭수, 최근 검색어 태그 클릭수, 키보드 검색 이벤트수를 수집하고자 생각했는데 이벤트수가 너무 많아지는 것을 방지하고자 Tracking Plan에는 검색 버튼 클릭수만 포함했습니다. API 호출이 이벤트를 트리거하는 경우에는 어떤 네이밍 컨벤션이 있는지 궁금합니다! 클릭률 및 전환율을 구할 용도로 검색 결과 페이지 조회수를 수집하고 싶을 때 전체 검색 발생 건수(API 호출 횟수)와 검색 결과 페이지 조회수, 이 두 데이터를 유사하다고 봐도 될까요? 검색 퍼널을 만들 때 설계한 이벤트들이 동일한 흐름에 있다는 것을 알고 하나의 퍼널로 해석하기 위해서는 session_id와 search_keyword를 활용하면 될까요? 그런 용도로 각 이벤트마다 해당 event parameter를 넣어야 하는지 궁금합니다. 좋은 강의 항상 감사합니다!
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 해당 강의 3분 45~50초 경, 영한쌤께서 Configuration 어노테이션이 붙어있는 클래스를 제외시키기 위해 classes=Configuration.class 이러한 코드를 Filter에 적용하신 것을 확인했습니다. 그런데 AutoAppConfig 클래스도 @Configuration이 적용되어 있는 클래스가 아닌가요?? 해당 클래스는 어떤 과정으로 인해서 제외되지 않는지 궁금합니다! 감사합니다:-)
vagrant 설치 스크립트에 보면 이 부분이 있는데 꼭 해줘야 하는 건지요? yum install -y cloud-utils-growpart growpart /dev/sda 4 xfs_growfs /dev/sda4 echo 0 > /proc/sys/kernel/hung_task_timeout_secs echo "kernel.watchdog_thresh = 20" >> /etc/sysctl.conf
안녕하세요 '빌드하고 실행하기' 강의를 듣다가 궁금한 점이 생겨서 질문 남겨봅니다. 강의를 듣다가 java -jar 실행 과정에 궁금증이 들었는데요.. 제가 war 파일 배포를 경험해본 적이 있었는데, war 파일을 배포할 때는 빌드 후 생성된 war 파일을 서버의 특정 경로에 올려두고 서버 시작을 했었습니다. 그래서 jar 파일을 실행한다는 것이 서버를 어떤 의미인가... 조금 헷갈리기도 하고 물음표가 생기더라고요. 구글링을 해봤는데 jar는 톰캣 서버 자체가 이미 내장 되어 있는 파일인 것 같더라고요.. 그래서 jar를 배포할 때, war처럼 특정 경로에 jar를 옮기는 과정 자체가 필요하지 않고 jar 자체를 실행하면 jar 안에 있는 서버가 같이 말린 프로젝트 소스까지 알아서 배포하는 그런 원리 일까요....? 그리고 제가 과거 프로젝트를 하면서 빌드를 했을 때는 war 파일 생성되었는데, 강의 실습의 빌드 결과물은 jar 파일인데 빌드 시 어떤 조건에 의해 war, jar가 생성되는지도 궁금합니다.. 확실한 지식이 없다 보니 질문이 조금 횡설수설한 점 죄송합니다..ㅜ
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 이전부터 이랬는데 별 다른 문제 없이 강의를 들을 수 있어서 그냥 냅뒀습니다. 그런데 점점 이유가 궁금해지더군요ㅠㅠ 13:37 쯤 영한쌤은 테스트가 완료된 뒤 콘솔 출력창에 로그가 쭉 뜨는데, 저는 테스트가 완료되어도 빈 화면으로만 뜨네요..
항상 감사드립니다! 강의를 들으면서 제가 이해한대로 내용의 핵심만 정리 해보았는데요. 제가 이해한게 맞는지 확인 해주시면 정말로 감사드리겠습니다! 1. 이렇게 이해한게 맞을까요? u... v... w... 들은 A좌표계의 단위 벡터들을 B좌표계 기준으로 분해한 성분들을 의미한다. 만약 A좌표계가 원점(0, 0, 0)이면, 단위 벡터 u = [1, 0, 0], v = [0, 1, 0], w = [0, 0, 1]일 텐데 이런 기준이 되는 단위 벡터를 B좌표계의 시점에서 자신의 단위 벡터를 기준으로 표현하면 각각 U = [ux, uy, uz], V = [vx, vy, vz], W= [wx, wy, wz]라는 말이다. 이때 ux, uy, uz같은 성분들은 B좌표계를 기준으로 A 좌표계의 단위 벡터 u의 각각의 성분으로 표현한 값이다. 그리고 Qx, Qy, Qz는 B좌표계 중심점을 기준으로한 A좌표계의 중심점의 위치를 의미한다. 진짜 최종적으로 정리해서... 우리는 B좌표계 기준의 단위 벡터들 U, V, W를 A 좌표계의 단위 벡터로 표현한 성분 정보(ux, u...)들만 있으면 A 좌표계의 어떤 위치들이라도 B 좌표계 기준의 위치 정보를 얻어내는게 가능하게 된다. Qx, Qy, Qz는 얻기가 쉽다. (다른 좌표계면 당연히 해당 좌표계의 위치 정보를 알고 있을테니) ----------------------------------------- 2. 만약 마지막 원소를 1이 아닌 0으로 바꿀 경우 강사님께서 "A좌표계의 방향 벡터가 B좌표계에서는 어떤 값으로 표시되는지 알고 싶을 때 사용한다"라고 말씀하셨는데 마지막 원소가 날아가버린다면 계산시 Qx, Qy, Qz정보가 날아가버린다는 의미이므로. A 좌표계에서의 방향 벡터를 B기준에서의 방향 벡터로 변환한다라고 봐도 무방할까요?
자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
14강 유저 업데이트 부분에서 PATCH가 아닌 PUT을 사용하는 이유가 궁금합니다!! 제가 알기로는 PATCH는 일부 수정이 가능하고, PUT은 완전 덮어쓰기라고 알고 있는데, PATCH가 아닌 PUT을 사용하는 이유가 무엇인가요?? 만약 PATCH 사용이 불가능한게 아니라 가능할 경우 코드가 어떻게 되는지도 궁금합니다! 항상 감사합니다!!
안녕하세요! 좋은 강의 잘 듣고 있습니다. 😄 5강 수강 중인데, 여기에서 fun lec05Example2(): Unit = runBlocking { val job = CoroutineScope(Dispatchers.Default).launch { throw IllegalArgumentException() } delay(1_000L) } delay(1_000L) 부분이 없으면 위의 예외 던지는 코루틴을 실행을 안 하던데 왜 그런지 이유를 잘 모르겠습니다.
3분 40초경의 교수님 설명을 듣고 void swap(char** xp, char** yp) { char* temp = *xp; xp = yp; *yp = temp; } void selectionSort(char* arr[], int n) { int i, j, min_idx; for (i = 0; i < n - 1; i++) // Note n - 1 { min_idx = i; for (j = i + 1; j < n; j++) // Note i + 1 { if (strcmp(arr[min_idx], arr[j]) == 1) //if (arr[min_idx] > arr[j]) min_idx = j; } swap(&arr[i], &arr[min_idx]); } } 를 void swap(char* xp, char* yp) { char* temp = xp; xp = yp; yp = temp; } void selectionSort(char* arr[], int n) { int i, j, min_idx; for (i = 0; i < n - 1; i++) // Note n - 1 { min_idx = i; for (j = i + 1; j < n; j++) // Note i + 1 { if (strcmp(arr[min_idx], arr[j]) == 1) //if (arr[min_idx] > arr[j]) min_idx = j; } swap(arr[i], arr[min_idx]); } } 예제를 이렇게 바꿔봤습니다. 포인터 변수의 주소를 넘겨주는 대신에 포인터 자체를 넘겨주고 swap 함수 안의 xp나 yp에 *를 때주면 첫 번째 예제와 두 번째 예제가 같아지는 것 아닌가요? 뭐가 잘못된건지 이해가 가질 않습니다. 추가로 swap 함수에 대해서 설명을 해봤는데 제 설명이 맞는건지 알려주시면 감사하겠습니다. swap의 매개변수를 char**로 적은 이유는 넘겨줄 게 포인터 변수의 주소라 char에 **를 붙여줬기 때문이다. 그리고 swap 함수 안에서 xp나 yp에 *를 붙인 이유는 매개변수로 넘겨준 건 arr[i], arr[min_idx]라는 포인터의 주소이고 스왑 해줘야 할 건 그 포인터의 메모리 공간에 있는 주소값이기 때문이다.