묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결데이터 분석 SQL Fundamentals
두 테이블 간의 관계가 궁금합니다.
안녕하세요~아래와 같은 경우에 주문상세와 상품가격 테이블 간의 관계 차수가 어떻게 되는 지 궁금하여 질문드립니다.주문: 주문번호(PK), 주문일자, 주문고객번호주문상세: 주문번호(PK,FK), 상품코드(PK,FK), 주문수량상품: 상품코드(PK), 상품명상품가격: 상품코드(PK, FK), 시작일자(PK), 종료일자, 가격주문과 주문상세 테이블이 1:M, 주문상세와 상품이 M:1, 상품과 상품가격 테이블이 1:M 관계를 가지는 건 이해를 했는데요.주문상세와 상품가격 테이블 간에도 관계 차수가 존재하는 건가요?주문상세와 상품가격 테이블을 상품코드를 기준으로 조인시켜주고 싶은데 두 테이블은 관계가 없다고 표현하는게 맞는건지 아니면 N:M의 관계를 가지는건지(?) 궁금합니다. 그리고 좋은 강의해주셔서 감사합니다.
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part2: 게임 수학과 DirectX12
장치 초기화 nullptr이 자꾸 발견 되네요.
Engine.cpp 파일에서_device->Init();cmdQueue->Init(device->GetDevice(), swapChain, descHeap);swapChain->Init(info, device->GetDXGI(), _cmdQueue->GetCmdQueue());descHeap->Init(device->GetDevice(), swapChain);이부분에서 자꾸 하나씩 nullptr이 발견되네요. 처음엔 제가 틀리게 작성한 부분이 있겠지해서 swapChin에서 nullptr이 나와서 찾아보다가 나중엔 그냥 자료파일로 덮어쓰기를 했는데도 이번엔descHeap->rtvHeap이 nullptr이라는 오류 메시지가 나오네요. 강의자료를 복붙해도 나오는nullptr은 어떻게 해결해야 할까요 ㅠ
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
Broadcast에서 질문 있습니다.
Broadcast에서 lock을 거는 이유가 공유하는 자원이기 때문이라고 말씀하셨는데, _sessions를 공유하기는 하지만 _sessions를 순회하는 용도로만 사용하니까 딱히 lock을 걸지 않아도 되는 거 아닌가요?
-
해결됨제미니의 개발실무 - 지속 성장 가능한 소프트웨어를 만들어가는 방법
Business Logic!
좋은강의 정말 감사드립니다!말씀하신 비즈니스 로직이 정말 보기에도 좋고 깔끔하다고 생각되서 저도 똑같이 구현해보고 싶다고 생각하는데요외부에서 주입받도록 분리한 로직들은 어느 레이어에 위치시켜야 하는지 궁금합니다. 아직 비즈니스 로직강의만 듣고 질문을 남겨서 혹시 뒷 강의에서 이에 대한 해답이 나온다면 답변해주지 않으셔도 괜찮습니다!감사합니다!
-
해결됨Practical Testing: 실용적인 테스트 가이드
외부API 연동 mocking시 json구조가 복잡하다면 어떻게해야하나요?
학습 관련 질문을 남겨주세요. 어떤 부분이 고민인지, 무엇이 문제인지 상세히 작성하면 더 좋아요!먼저 유사한 질문이 있었는지 검색해 보세요.서로 예의를 지키며 존중하는 문화를 만들어가요. 안녕하세요! 이번 강의 편에서 외부 API mocking에 대해서 다뤄주셔서 감사합니다!궁금한점이 현재 메일을 보내는 sendEmail의 경우 반환타입이 boolean이라 쉽게 테스트가 가능한것 같은데, 만일 RestTemplate/RestClient 와 같이 외부 API 연동한걸 mockito사용해서 가짜 객체로 테스트한다고 했을때, 실제 응답으로 받은 Json의 구조가 복잡할 경우에 어떻게 할지 궁금합니다.thenReturn() 메서드에 해당 응답의 Json구조를 반영한 DTO를 넣어주면 될까 싶었는데, 결국에는 외부 API 응답 구조를 알고 있어야 되는 거라 의존적이라고 생각이 들거든요! 만약 외부 API 응답의 Json 구조가 달라지면 테스트가 깨지게 되는건데, 외부 응답 구조를 몰라야 mocking의 의미가 있는게 아닌지 헷갈립니다.
-
해결됨자동차 SW - UDS 진단통신 정복하기
강의자료 수정요청
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.섹션4 DTC Status Byte 개념(DTC Status mask) 강의내용은 수정되었는데 강의자료가 이전자료로 등록되어있는것 같은데 수정해주시면 감사드리겠습니다
-
해결됨자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
mysql connector ? 오류 ㅠㅠ
communications link failure 오류가 나는데 mysql 재설치를 몇 번해도 연결이 안되네요 어떻게 해결해야할까요..?
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
함수와 재귀함수 하노이의 탑 부분 질문
안녕하세요 선생님코드 관련 궁금한 부분이 있어서 질문드립니다.하노이의 탑 코드를 보면#include <stdio.h>void hanoi(int n, char from, char to, char aux) { if (n==1) { printf("디스크 1을 %c에서 %c로 이동\n", from, to); return; hanoi(n-1, from, aux, to); printf("디스크 %d을(를) %c에서 %c로 이동\n", n, from, to); hanoi(n-1, aux, to, from); }int main() { int num = 3; hanoi(num, 'A', 'C', 'B'); return 0;}으로 되어있는데요. void hanoi로 함수를 호출하게 되면 n이 1이라면void hanoi(int n, char from, char to, char aux) { if (n==1) { printf("디스크 1을 %c에서 %c로 이동\n", from, to); return;첫번째 if 조건 절로 호출하게 되지만 만약 1이 아니면 아래 함수를 호출하는 거라면else 등의 함수가 있어야 아래 함수로 내려갈 수 있는것이 아닌가 궁금한데요.void 함수에서는 요런부분이 생략이 가능한건지 아니면 제가 놓치고 있는 부분이 있는지 궁금합니다.
-
미해결Practical Testing: 실용적인 테스트 가이드
34:40초 부분에서 단축키 어떻게 사용하시나욤
학습 관련 질문을 남겨주세요. 어떤 부분이 고민인지, 무엇이 문제인지 상세히 작성하면 더 좋아요!먼저 유사한 질문이 있었는지 검색해 보세요.서로 예의를 지키며 존중하는 문화를 만들어가요. 안녕하세요! 좋은 강의 감사합니다.영상 중에 34분 쪽에서 타입 이름 변경하실때 왼쪽과 오른쪽 타입의 이름을 동시에 변경하시던데 단축키 어떤거 사용하시는건지 궁금합니당!
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
clock 신호 발생 질문 있습니다.
[1. 질문 챕터] : HDL 1장 clock 생성하기 부분 입니다[2. 질문 내용] : 강의 내용만으로 보았을 때에는 always를 통해서 clock을 무한정으로 생성을 한다음 initial begin을 통해 clock 신호가 시작하는 지점을 설정하고, 내가 보고싶은 구간만큼 잘라다가 쓰는것으로 이해했습니다만약, 무한정으로 클락신호를 발생시키는것을 보고싶다면, 어떤식으로 변경이되어야하는지 알고싶습니다[3. 시도했던 내용, 그렇게 생각하는 이유] : 실습을 하면서 문득 들었던 생각이 always가 무한으로 반복하는 구문이라면, 이후의 initial begin구문이 빠지게 되면 clock이 무한정으로 생성되지 않을까? 하는 생각이 들어서 시도해보았습니다. 결과적으로는 그렇게 생성되지 않더라구요 (하기 이미지 참고)#2.5 clk = ~clk로 설정하였으니 주기는 5ns가 되어야 할겁니다.. 근데 반전이 되는시점도 없고 그냥 clock신호가 1에만 머물러 있더라구요clock의 시작점을 0이나 1로 지정하지 않아서 발생한것인가? 해서 clk=0;만을 추가해 보았더니 compile이되지 않더라구요
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
em.clear()의 기능?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.package jpabook.jpashop; import jakarta.persistence.EntityManager; import jakarta.persistence.EntityManagerFactory; import jakarta.persistence.EntityTransaction; import jakarta.persistence.Persistence; import jpabook.jpashop.domain.*; import org.hibernate.boot.model.source.spi.IdentifierSource; import javax.swing.text.html.parser.Entity; import java.time.LocalDateTime; import java.util.ArrayList; import java.util.List; 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{ Address address = new Address("city1", "street1", "10000"); Member member = new Member(); Order order = new Order(); Delivery delivery = new Delivery(); List<Order> orders = new ArrayList<>(); member.setName("raewoo"); member.setAddress(address); order.setMember(member); order.setDelivery(delivery); orders.add(order); member.setOrders(orders); delivery.setOrder(order); delivery.setAddress(address); em.persist(member); em.persist(order); em.persist(delivery); em.flush(); em.clear(); System.out.println("================================"); Address address2 = new Address("city2", "street2", "10000"); Member findMember = em.find(Member.class, member.getId()); Order findOrder = em.find(Order.class, order.getId()); findMember.setAddress(address2); em.flush(); em.clear(); //여기!! System.out.println(findMember.getAddress().getCity()); System.out.println("================================"); System.out.println(findMember.getOrders().getFirst().getDelivery().getAddress().getCity()); tx.commit(); }catch (Exception e){ tx.rollback(); } finally { em.close(); } emf.close(); } }이렇게 메인 메서드를 작성했습니다.//여기!! 라고 주석처리 해놓은 em.clear()가 있으면 콘솔에 아래와 같이 결과가 나오고요,Hibernate: select m1_0.MEMBER_ID, m1_0.city, m1_0.street, m1_0.zipcode, m1_0.CREATED_DATE_TIME, m1_0.name, m1_0.UPDATED_DATE_TIME from Member m1_0 where m1_0.MEMBER_ID=?Hibernate: select o1_0.ORDER_ID, o1_0.CREATED_DATE_TIME, o1_0.DELIVERY_ID, o1_0.MEMBER_ID, o1_0.orderDate, o1_0.status, o1_0.UPDATED_DATE_TIME from ORDERS o1_0 where o1_0.ORDER_ID=?Hibernate: /* update for jpabook.jpashop.domain.Member */update Member set city=?, street=?, zipcode=?, CREATED_DATE_TIME=?, name=?, UPDATED_DATE_TIME=? where MEMBER_ID=?city2================================보시는 바와 같이 마지막 =======을 기준으로 system.out.println() 문이 하나 더 출력되어야하는데, 출력되지 않습니다.하지만 em.clear()를 없애면 ================================Hibernate: select m1_0.MEMBER_ID, m1_0.city, m1_0.street, m1_0.zipcode, m1_0.CREATED_DATE_TIME, m1_0.name, m1_0.UPDATED_DATE_TIME from Member m1_0 where m1_0.MEMBER_ID=?Hibernate: select o1_0.ORDER_ID, o1_0.CREATED_DATE_TIME, o1_0.DELIVERY_ID, o1_0.MEMBER_ID, o1_0.orderDate, o1_0.status, o1_0.UPDATED_DATE_TIME from ORDERS o1_0 where o1_0.ORDER_ID=?Hibernate: /* update for jpabook.jpashop.domain.Member */update Member set city=?, street=?, zipcode=?, CREATED_DATE_TIME=?, name=?, UPDATED_DATE_TIME=? where MEMBER_ID=?city2================================Hibernate: select o1_0.MEMBER_ID, o1_0.ORDER_ID, o1_0.CREATED_DATE_TIME, o1_0.DELIVERY_ID, o1_0.orderDate, o1_0.status, o1_0.UPDATED_DATE_TIME from ORDERS o1_0 where o1_0.MEMBER_ID=?Hibernate: select d1_0.DELIVERY_ID, d1_0.city, d1_0.street, d1_0.zipcode, d1_0.CREATED_DATE_TIME, d1_0.status, d1_0.UPDATED_DATE_TIME from Delivery d1_0 where d1_0.DELIVERY_ID=?Hibernate: select o1_0.ORDER_ID, o1_0.CREATED_DATE_TIME, o1_0.DELIVERY_ID, o1_0.MEMBER_ID, o1_0.orderDate, o1_0.status, o1_0.UPDATED_DATE_TIME from ORDERS o1_0 where o1_0.DELIVERY_ID=?city1이렇게 ORDERS를 조회하는 쿼리문이 나오고, city1이 정상적으로 출력됩니다.em.clear()가 있고 없고에 왜 이런 차이가 발생하는 건가요?쿼리가 나가지 않는다던가, 어떤 null 값을 읽어온다던가 하면 예외가 나오거나, null로 나와야 할텐데, System.out.println()문 자체가 씹히는 건 어떤 경우인가요? 왜 이런건가요?
-
미해결모던 안드로이드 - Jetpack Compose 입문
Navigation수업에서 string대신 bitmap을 인자로 넘겨주는 방법?
네비게이션 수업도중 궁금한 점이 있어서 질문드립니다.ThirdScreen으로 Bitmap데이터를 인자로 넘기고 싶습니다. 어떻게 해야 할지 모르겠습니다.예를들어, 카메라 캡쳐해서 다음 스크린으로 캡쳐한 사진을 보내서 이미지를 보여주고 싶을 때, 어떻게 해야 하나요?
-
미해결실습으로 배우는 그라파나 - {{ x86-64, arm64 }}
Tabby 실행이 안됩니다.
환경은 윈도우입니다.ch2/2.3으로 작업하였고207은 설치가 안되어 1.0.208로 설치하였습니다.config.yaml파일을 %APPDATA% 경로에 "tabby" 라는 파일명으로 복사하는 작업이 맞는건가요?
-
해결됨[ 부트스트랩 5 ] 빠르고 스마트하게 웹 사이트 만들기 | Bootsrap 입문용
css 적용불가
html<!doctype html> <html lang="ko"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Gabie's ART Cook</title> <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH" crossorigin="anonymous"> <link rel="stylesheet" href="style.css"> </head> <body> <!-- 헤더 영역 시작 --> <header> <h1>Gabie's ART Cook</h1> <h4> 요리와 아트의 만남 </h4> <p> 아름다운 한 끼로 삶의 색채를 더하다</p> <button type="button" class="btn btn-outline-warning rounded-pilll"> 요리 보기 </button> </header> <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-YvpcrYf0tY3lHB60NNkmXc5s9fDVZLESaAA55NDzOxhy9GkcIdslK1eN7N6jIeHz" crossorigin="anonymous"></script> </body> </html>cssheader{ background-color: blue; }이미지 파일 적용이 불가하여 background color로 테스트 해보았는데 css 적용이 불가합니다.
-
미해결
Beginner's Guide: +1 909-340-9227 How to Activate Your Cash App Card?
Activating your Cash App card is a straightforward process that allows you to start using your card for purchases, ATM withdrawals, and more. Whether you're new to Cash App or just need a refresher, this guide will walk you through the steps to activate your card quickly and easily.Step 1: Receive Your Cash App CardBefore you can activate your Cash App card, you need to have the card in your possession. If you haven't already ordered one, follow these steps:Open Cash App: Launch the Cash App on your mobile device.Go to the Card Tab: Tap the card icon at the bottom of the screen.Order Your Card: Follow the prompts to order your Cash App card. It will typically take 7-10 business days for your card to arrive.Step 2: Open Cash App and Navigate to the Card Activation SectionOnce you have your Cash App card, you can begin the activation process:Open Cash App: Launch the app on your mobile device.Go to the Card Tab: Tap the card icon at the bottom of the screen.Activate Your Card: Tap "Activate Cash Card" to start the activation process.Step 3: Use the QR CodeThe easiest way to activate your Cash App card is by using the QR code that comes with your card. Follow these steps:Scan the QR Code: When prompted, allow Cash App to access your camera and scan the QR code found on the paperwork included with your card.Follow the Prompts: Complete any additional steps as prompted by the app.Step 4: Manual EntryIf you don't have the QR code or if it doesn't scan properly, you can manually enter the information:Select "Use CVV Instead": If you can't scan the QR code, tap on "Use CVV Instead."Enter Card Details: Input your Cash App card details, including the CVV number and expiration date, as prompted by the app.Step 5: ConfirmationOnce you've scanned the QR code or manually entered your card details, you'll receive a confirmation message that your card has been activated. You can now start using your Cash App card immediately.Troubleshooting TipsEnsure Proper Lighting: When scanning the QR code, make sure you're in a well-lit area.Check Your Connection: A stable internet connection is crucial for the activation process.Update the App: Ensure you have the latest version of Cash App installed on your device.Using Your Cash App CardNow that your Cash App card is activated, you can:Make Purchases: Use your card anywhere Visa is accepted.Withdraw Cash: Access your funds at any ATM that accepts Visa.Manage Your Card: Use the Cash App to manage settings, check your balance, and view transactions.ConclusionActivating your Cash App card is a simple process that can be completed in just a few minutes. By following the steps outlined in this guide, you'll be ready to start using your Cash App card for all your financial needs. Enjoy the convenience and flexibility that comes with your Cash App card!
-
미해결실전 프로젝트로 배우는 타입스크립트
[오류문의] import 에러
안녕하세요.실전프로젝트로 베우는 타입스크립트 강의를 듣고 있습니다.코로나 정보 보여주는 프로젝트에서 질문드립니다.app.js 를 app.ts로 변환하고, 컴파일하면 아래와 같은 에러가 발생합니다.그래서 구글하여서,index.html 파일에 'type: "module" 을 추가했습니다. <<script type="module" src="./built/app.js"></script>그리고 package.json 에도 "type": "module" 을 추가했습니다. "type": "module""type": "module"이렇게 하고 다시 index.html를 live 서버 오픈을 하면 동일한 에러가 나옵니다.axios 와 char.js 모듈 import를 못하는 것 같습니다.구글링하여 이런저런 시도를 많이 해봤는데 해결이 되지 않습니다.그 외의 package.json, tsconfig.json는 강의영상에서 나온 그대로 타이핑 했습니다.어떻게 해야 import 가 정상적으로 될까요?
-
해결됨[임베디드 입문용] 임베디드 개발은 실제로 이렇게 해요.
Bord LED 점등이 안돼요
위 사진처럼 연결하였는데 Board에 LED가 안들어 옵니다.
-
미해결3. 웹개발 코스 [스프링 프레임워크+전자정부 표준프레임워크]
전자정부프레임워크를 다운받지않고 STS 에서 위 강의를 진행하고싶은데 방법이있을까요?
전자정부프레임워크를 다운받지않고 STS 에서 위 강의를 진행하고싶은데 방법이있을까요?
-
해결됨입문자를 위한 Spring Boot with Kotlin - 나만의 포트폴리오 사이트 만들기
프로그램 수정해서 다시 docker에 이미지를 올릴땐 내용처럼 이렇게 하면되나요??
안녕하세요. 이젠 기본적인 spring 기능은 이 강의로 많이 알게 되었습니다.감사합니다. 빨리 강좌 하나 더 내주세요.... 코틀린 & spring 강좌가 너무 없어서 강의 찾아 다니느것도 일이네요 ...====================================Docker로 프로젝트 빌드 하기 . 강좌중에 만약 프로그램 수정하면 아래 처럼 하면 되나요?step 1) Gradle에서 jar 파일을 다시 만든다. ...참고 ) 빌드중에 에러가 없어야함... test 코드에서도 에러가 없어야함step2) docker-compose.yml 파일 새로고침 한다.step3) Dockerfile을 재 실행한다.step4) 도커가 잘 올라갔는지 확인한다.프로그램 수정후엔 위 4개의 절차대로 진행하면 되나요??이걸로 회사의 개인 서버를 가지고 있는곳에 도커 깔고 동작 하면 서버의 기능으로 완벽할꺼 같은데 ....그리고 구글 클라우드에도 프로그램 수정하면 도커에서 push up hub 를 누르고 docker-compose.yml 누르면 되나요??버전 수정 안해줘도 되나요?추가 질문) 이건 뭐 제가 잘 모르고 좀 시간을 두고 확인해봐야 하는거라서 질문드리기 어렵지만 그래도 아시면 답변 부탁 드려용 ^^)))테스트 코드 작성중 아래처럼 DSL로 작성하는 경우를 봤는데 꽤나 직관적이고 편리하게 되어 있더라구요...아래 같은 테스트 코드 많이 사용하나요??비동기 방식에서만 사용하나요??테스트 코드 작성하는 방법이 꽤나 많아서 이걸 다 익혀야하는 생기네요 ㅠ.ㅠ감사합니다. 다음 강의 꼭 내주세요. ^^
-
해결됨Real MySQL 시즌 1 - Part 1
페이징 쿼리 관련해서 질문드립니다.
현재 spring data jpa query + paging 을 사용하고 있습니다. fun findAllFollowing(followerId: Long, pageable: Pageable): List<SnapProfile> = from(snapProfileFollow) .join(snapProfile).on(snapProfile.id.eq(snapProfileFollow.following.id)) .where(snapProfileFollow.follower.id.eq(followerId)) .orderBy(*snapProfile.orderSpecifiers()) .offset(pageable.offset) .limit(pageable.pageSize.toLong()) .fetch() .map { it.following.toModel() }이것을 데이터 개수 기반으로 변경하고 싶은데 혹시 이럴 때 변경해보신 경험이 있으실까요?