묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
맛비님 Sec2. CH5 질문있습니다!
- 강의 내용외의 개인 질문은 받지 않아요. (개인 과제, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..)- 저 포함, 다른 수강생 분들이 함께보는 공간입니다. 보기좋게 남겨주시면 좋은 QnA 문화가 될 것 같아요. (글쓰기는 현업에서 중요한 능력입니다!)- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 앗 우선 강의에서 문법은 다루지 않는다고 했는데 혹시 문법 관련 질문도 금지라면 빠르게 글 삭제하겠습니다!추천해주신 교재를 구매했지만 아직 도착하지 않아서, 이렇게 문의글을 남깁니다ㅠㅠ위 사진에서 빨간 동그라미친 부분에 1'b0은 무슨 의미인가요?각 자리마다 format이 있는 것 같은데 자리별 역할?(의미)가 궁금합니다. ex) 1의자리: 비트크기'의자리: `timescale처럼 그냥 지켜야할 형식?b: 비트?0:0 or 1 (true or false) 처럼 자리마다 형식이 있는건가요? 아니면 제가 생각하지 못한 다른 문법인지 궁금합니다 ㅠㅠ
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
limit에 대해 질문드립니다.
const profilePosts = await User.findOne({ where: { id: userId }, attributes: [], include: [ { model: Post, include: [ { model: User, attributes: ["id", "nickname", "department", "avatar"], }, { model: User, as: "PostLikeUsers", attributes: ["id"], }, { model: Comment, attributes: ["id"], }, ], }, ], });include 안에서 Post model에 limit을 두고 싶습니다.예를 들어, Post model에 16개의 게시글이 저장되어 있으면 5개만 불러오고 싶습니다.어떻게 하면 될까요?시도했던 방법1. include: [ { model: Post, limit: 5, subQuery: false, include: [ { model: User, attributes: ["id", "nickname", "department", "avatar"], }, { model: User, as: "PostLikeUsers", attributes: ["id"], }, { model: Comment, attributes: ["id"], }, ], }, ], 2.include: [ { model: Post, attributes: ["id", "UserId"], separate: true, limit: 5, include: [ { model: User, attributes: ["id", "nickname", "department", "avatar"], }, { model: User, as: "PostLikeUsers", attributes: ["id"], }, { model: Comment, attributes: ["id"], }, ], }, ],
-
미해결Node.js의 모든 것
설정이 잘 안 되는데, 전체 소스코드 한 번 알려주실 수 있을까요?
올려주신 대로 작성하고 있는데 잘 설정이 안되네요 ㅎㅎ 혹시 가능하다면 전체 소스코드나 혹은, 패키지 버전을 알고 싶습니다!
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
Kafka sink connector를 통해서 단일 데이터베이스 저장을 했을 때 장점?
안녕하세요.Kafka Connect 를 활용한 단일 데이터베이스를 사용 파트를 듣고 있는데요.Multiple Order Service가 같은 DB URL을 가지고, JPA를 통해서 데이터 저장을 하면 될 것 같은데, 굳이 Kafka Sink Connector를 통해서 데이터 저장을 하는 이유가 따로 있을까요?JPA를 쓰면 Persistence Manager가 제공하는 여러 장점을 이용할 수 있을 것 같은데, Kafka sink connector는 그런 장점을 이용할 수 없을 것 같아서요.. 실제 현업에서 많이 사용되는 테크닉인지 궁금하고, 만약 사용한다면 장점은 무엇인지 궁금합니다!
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
기본키매핑-24:30
아래와 같이 에러가납니다.테이블 drop 치고 실행했을 때 입니다.사진과 같이 에러나는 이유가 뭐죠?Caused by: org.h2.jdbc.JdbcSQLIntegrityConstraintViolationException: NULL not allowed for column "ID"; SQL statement:
-
미해결아이폰 앱 개발 입문 2편
open static func ...
"프레임워크 만들기" 강의에서 open class Logger 함수에서 Open static func .. 으로 선언하니까 에러가 발생하는 데요. 강의상에는 에러가 나지 않는 것으로 보여서요. 뭔가 변경된 걸까요?(강의중)(실습중)
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
웹뷰 프로젝트 관련 질문입니다.
휴대폰에서는 웹뷰가 잘 작동합니다.구글 크롬으로 빌드를 하니, 에러창이 다음과 같이 뜹니다.내용을 보니까 "플랫폼에 대하여 윈도우로 설정된 값을 사용하려 했고 그에 해당하는 디폴트는 없다"라고 이해를 했는데..TargetPlatform.Windows를 보니 Enum값으로 해당 플랫폼에 대해서 설정할 수 있도록 만든 것 같아요.해결 방법이 있는지 궁금합니다.
-
미해결스프링 시큐리티
addlogouthandler에서요 ~
안녕하세요 선생님 !! addlogouthandler여기서 세션무효화, 토큰 삭제 외에 추가작업을 한다고 하셨는데 여기서 제가 만들 핸들러를 집어넣으면 1)세션 무효화 ,토큰 삭제 + 알파로 제가 만든 기능이 추가된다는 건가요?? 2)그냥 제가 만든 기능만 추가된다는 것인가요?? 그래서 따로 무효화와 토큰을 구현해줘야 한다는 ....? 1번과 2번중에 어떤거죠??
-
미해결스프링과 JPA 기반 웹 애플리케이션 개발
M1 mac 에서 gradle로 빌드하시려는 분들께 공유 하고싶어 글을 남겨요!
Requirementsstatic/node_module로 package.json에 선언된 의존성을 다운로드 받아야한다gradle build 시 package.json에 선언된 의존성을 확인하고 다시 다운로드 받아야 한다.뭔가 간단하게 끝내고 싶다 !!!Actionhttps://github.com/node-gradle/gradle-node-plugin/blob/master/docs/usage.md다양한 관련 플러그인 들이 있지만, 위의 플러그인을 설치 했습니다.2번의 요구사항은 gradle의 증분 컴파일(?)이 해주는 것 같습니다. (정확하지 않음 추측이에요)3번은 관련 자료를 찾던 도중 processResources 를 발견했고, Copies production resources into the production resources directory. 라고 설명 되어 있습니다.(공식 홈페이지)따라서, npm install 시 node_module 파일을 static 이하로 떨어 뜨리면 되겠구나!그리고 processResources를 "npm install 동작을하는 " Task를 의존하게 하면 되겠구나!-- 주석이 많아 가독성이 떨어지지만, 한번 읽어보시면 더 도움이 될거라 생각해서 위의 깃헙에 있는 주석 그대로 복사 붙여넣기 합니다. 수정한 부분은 nodeProjectDir 부분과processResources.dependsOn 부분 입니다.추가로 package.json 도 아래분이 잘 정리 해주셔서 함께 복사 붙여넣기 합니다.(고맙습니다!!)-인텔리제이 빌드시(gradle로 설정안했을 경우 동작안해요!)-gradle 탭 누르셔서 npm Task 들어오는지 확인해주세요!{ "name": "static", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "author": "", "license": "ISC", "dependencies": { "@yaireo/tagify": "^3.5.1", "bootstrap": "^4.4.1", "cropper": "^4.1.0", "font-awesome": "^4.7.0", "jdenticon": "^2.2.0", "jquery": "^3.4.1", "jquery-cropper": "^1.0.1", "mark.js": "^8.11.1", "moment": "^2.24.0", "summernote": "^0.8.16" } }plugins { id "com.github.node-gradle.node" version "3.5.0" id 'org.springframework.boot' version '2.7.5' id 'io.spring.dependency-management' version '1.0.15.RELEASE' id 'java' } group = 'me.studyOlle' version = '0.0.1-SNAPSHOT' sourceCompatibility = '17' configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } node { // Whether to download and install a specific Node.js version or not // If false, it will use the globally installed Node.js // If true, it will download node using above parameters // Note that npm is bundled with Node.js download = true // Version of node to download and install (only used if download is true) // It will be unpacked in the workDir version = "16.14.0" // Version of npm to use // If specified, installs it in the npmWorkDir // If empty, the plugin will use the npm command bundled with Node.js npmVersion = "" // Version of Yarn to use // Any Yarn task first installs Yarn in the yarnWorkDir // It uses the specified version if defined and the latest version otherwise (by default) yarnVersion = "" // Base URL for fetching node distributions // Only used if download is true // Change it if you want to use a mirror // Or set to null if you want to add the repository on your own. distBaseUrl = "https://nodejs.org/dist" // Specifies whether it is acceptable to communicate with the Node.js repository over an insecure HTTP connection. // Only used if download is true // Change it to true if you use a mirror that uses HTTP rather than HTTPS // Or set to null if you want to use Gradle's default behaviour. allowInsecureProtocol = null // The npm command executed by the npmInstall task // By default it is install but it can be changed to ci npmInstallCommand = "install" // The directory where Node.js is unpacked (when download is true) workDir = file("${project.projectDir}/.gradle/nodejs") // The directory where npm is installed (when a specific version is defined) npmWorkDir = file("${project.projectDir}/.gradle/npm") // The directory where yarn is installed (when a Yarn task is used) yarnWorkDir = file("${project.projectDir}/.gradle/yarn") // The Node.js project directory location // This is where the package.json file and node_modules directory are located // By default it is at the root of the current project nodeProjectDir = file("${project.projectDir}/src/main/resources/static") // Whether the plugin automatically should add the proxy configuration to npm and yarn commands // according the proxy configuration defined for Gradle // Disable this option if you want to configure the proxy for npm or yarn on your own // (in the .npmrc file for instance) nodeProxySettings = ProxySettings.SMART } dependencies { // View Template Engine implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' // Security implementation 'org.springframework.boot:spring-boot-starter-security' implementation 'org.thymeleaf.extras:thymeleaf-extras-springsecurity5' //Web implementation 'org.springframework.boot:spring-boot-starter-mail' implementation 'org.springframework.boot:spring-boot-starter-web' implementation group: 'org.springframework.boot', name: 'spring-boot-starter-validation', version: '2.7.5' //Persistence implementation 'org.springframework.boot:spring-boot-starter-data-jpa' runtimeOnly 'com.h2database:h2' runtimeOnly 'com.mysql:mysql-connector-j' // LomBok compileOnly 'org.projectlombok:lombok' annotationProcessor 'org.projectlombok:lombok' // Dev developmentOnly 'org.springframework.boot:spring-boot-devtools' annotationProcessor 'org.springframework.boot:spring-boot-configuration-processor' //Test Implementation testImplementation 'org.springframework.boot:spring-boot-starter-test' testImplementation 'org.springframework.security:spring-security-test' } tasks.named('test') { useJUnitPlatform() } processResources.dependsOn('npmInstall')
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
그래프 최단거리 (BFS) 질문
안녕하세요 강사님. 저 혼자 level로 풀었을땐 답이 잘 나왔는데 선생님의 div[]를 이용한 코드를 분명히 똑같이 작성했는데 div[] 값들이 0에서 바뀌질 않습니다. 디버깅을 해봤더니 이런 오류? 가 뜹니다. 제가 뭘 놓친걸까요?
-
미해결스프링 핵심 원리 - 기본편
getBean의 타입에 대해 질문드립니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]스프링 컨테이너에있는 스프링 빈을 찾아올때, getBean() 메서드를 통해 찾을수있다고 이해했는데요.메서드를 호출할때 getBean(이름, 타입) 의 형식으로 사용한다고 되어있는데1. 여기서 타입은 어떤 타입을 파라미터로 넣어줘야하는건가요? 예를들면 MemberService memberService = applicationContext.getBean("memberService", MemberService.class); 로 사용할수도있고, MemberServiceImpl memberService = applicationContext.getBean("memberService", MemberServiceImpl.class); 로 사용할수도있는데,어떤 타입을 파라미터로 넣어줘야하는건지 궁금합니다. 스프링빈의 타입인 객체타입(MemberServiceImpl)을 넣어줄수도있고, AppConfig 클래스에있는 memberService메서드의 리턴타입(MemberService) 을 넣어줄수도있는건가요? 일반메소드의 리턴타입처럼 getBean()을 통해서 얻은 객체를 어떤타입으로 받고자한다를 클래스타입으로 적어줘야하는건가요? 2. 그리고 타입을 파라미터로 넣어줄때 .class를 쓰는 이유가 궁급합니다. 예를들면 MemberService의 경우에는 인터페이스라서 MemberService.interface형식으로 넣어줘야할거같은데 .class를 붙여서 넣어주는 이유가 궁급합니다. 3. 1,2번의 질문들을 생각하면서 정리해봤는데, 타입부분에서 파라미터로 넘겨준 MemberService.class는 클래스타입=메서드의 리턴타입 = 역할타입 = 인터페이스타입 이고,MemberServiceImpl.class는 구체타입=객체타입=스프링빈타입이다. 이렇게 정리해봤는데 맞는건가요? 구글링도해보고, 게시판에 비슷한 글이 있나 찾아보기도 했는데 원하는 답변이 없어서 질문드립니다..
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
수정되지않는 데이터에 대한 검증
1. editForm.html의 id처럼 화면엔 보여주지만 실제로 변경하지않는 값들이 여러개 존재한다고 할때 이 값들에 대한 검증도 필수인가요? id같은 경우는 중요한 정보이고 http요청을 조작해서 삭제나 변경등의 위험이 있기때문에 검증해야하지만 상대적으로 덜 중요한 정보 또한 검증이 필수인지 궁금합니다. 2. 위의 상황에서 변경하지않는 값들을 폼전송객체의 필드로 만들지 않으면 검증 실패시 뷰템플릿으로 리턴할때 변경하지않는 값들에 대한 데이터가 모델에 담겨있지 않아 에러가 나는것을 확인했습니다. 이때 뷰템플릿으로 리턴 대신 /{itemId}/edit 으로 리다이렉트 시키고 redirectattributes의 addflashattribute를 사용하여 bindingResult 객체를 model에 담아서 전송하는 것도 방법이 될 수 있을까요?
-
미해결자바스크립트로 알아보는 함수형 프로그래밍 (ES5)
FP 함수 표준이 있는지 궁금합니다.
FP 함수 표준이 있는지 궁금합니다.pipe, map, filter, some, every 등등 일반적으로 사용하는 함수명칭이고 그 기능또한 일반적으로 생각하는 것과 같은데,혹시 이러한 대표적인 FP 함수들이 무엇이 있고 그 시그니처는 어때야 하는지 표준이 있나요?
-
해결됨파이썬 동시성 프로그래밍 : 데이터 수집부터 웹 개발까지 (feat. FastAPI, async, await)
local 에서 웹사이트 뜨는 것을 확인하였는데, aws lightsail 에서 프로그램 실행 시키고 ㅡ 제 local 에서 접속하려 하니 응답이 없습니다;
어떤 정보를 포함해서 질문을 올리면 좋을까요??
-
미해결따라하며 배우는 NestJS
typeorm 버젼 0.3.x 문제로 인한 deperaciated 문제 쉽지 않네여
이거 강의 다시 찍어주시면 안되나여 인터넷 자료만 보고 따라 하기 넘 어렵 ; stackover flow 에서 뭐라는건지 잘몰겠습니다 ㅋㅋ; https://stackoverflow.com/questions/71557301/how-to-workraound-this-typeorm-error-entityrepository-is-deprecated-use-repo
-
미해결홍정모의 따라하며 배우는 C++
strcat질문 드립니다.
교수님의 강의대로 strcat를 똑같이 진행하였는데 c4996이라는 에러가 발생하였습니다. 그런데 교수님 강의에선 바로 출력이 되었는데 제 컴퓨터는 에러로 나오네요... 코드를 변경 하라고 하는데 맞는건가요?
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
쓰로틀링에 대해 질문드립니다.
아래와 같이 코드를 작성하면 request가 여러 번 일어나는데 loadPostsRequest의 상태가 바뀌는 도중에 스크롤링이 일어나서 dispatch가 되는 건가요?이거 안 일어나려면 공지사항에 적어주신 인터섹션 옵저버 말곤 방법이 없나요? const { hasMorePosts, loadPostsRequest } = useSelector((state) => state.board); useEffect(() => { const loadBoard = async () => { if ( window.scrollY + document.documentElement.clientHeight > document.documentElement.scrollHeight - 300 ) { if (hasMorePosts && !loadPostsRequest ) { const lastId = lists[lists.length - 1]?.id; dispatch({ type: actionType, data: { ...dispatchData, lastId }, }); } } }; ... }, []);
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
강의 자료 요청드립니다
안녕하세요 선생님 강의 자료 요청 드립니다. kiby1039@hanmail.net 입니다
-
해결됨실전! 스프링 데이터 JPA
실무에서 다대일 관계일 때 다 쪽에 접근이 부자연스러운 경우
안녕하세요. 강의를 들으며 실무에 적용 중인데 궁금한 것이 있어서 질문 드립니다.현재 메뉴 테이블과 메뉴권한 테이블 두개를 생성하였고 메뉴 : 메뉴 접근 권한= 1 : n 의 연관관계를 가지고 있습니다.(메뉴 권한 테이블이 주인이고 양방향이며, 하나의 메뉴에는 여러 접근 권한이 들어갈 수 있습니다.)이 상황에서 해당 테이블을 통해 작업 되는 기능은 아래와 같습니다.메뉴 명을 변경할 수 있다. (메뉴 테이블 update)이럴 경우 Spring Data JPA를 적용한다면, 상기 기능을 처리 할 때마다 메뉴Repository가 아닌 메뉴권한Repository를 호출하여 메뉴권한 객체를 통해 메뉴를 수정해야 하는데 이 부분이 좀 부자연스럽게 느껴집니다.이럴 경우 어떻게 처리 하는 것이 좀 더 나을까요? 제 생각에는테이블을 다시 짜서 메뉴가 다대일 관계로 구성 되겠끔 처리한다(지만 쉽지 않은 상황이네요)메뉴-메뉴권한 관계를 일대다 관계로 처리한다. (단방향)연관관계는 그대로 두고 저장/수정 시에만 JdbcTemplate 등으로 처리 한다.등이 있는데 더 나은 방안이 있을까요? 맨날 SQL로 작업 하다 ORM을 해보려고하는데 참 쉽지 않네요.
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
궁금점
안녕하세요, 궁금한 점이 있어서 글을 작성해봅니다. for (int i = 0; i < _size; i++) new_data[i] = _data[i];부분과new_data = data;는 다른 건가요?? 강의 내용처럼 데이터 복사 후 기존의 데이터를 날리고 new_data를 data에 다시 저장하는 건 돌아가는 작업 같다고 생각하는데.. 제가 놓치고 있는 부분이 어딘지 궁금해서 글을 써봅니다.알려주시면 감사하겠습니다!