inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

where or 사용 시 in으로 전환 관련 문제

미해결

[백문이불여일타] 데이터 분석을 위한 기초 SQL

웨더 옵저베이션 문제에 대해 이렇게 답을 구했는데 이전 강의에서 말씀해주신대로 where city like 에 in을 삽입해서 간단히 쓸 수는 없는지 궁금합니다. 여러군데에 in을 조합하여 쿼리를 짜봤는데 나오지가 않아서요 ㅜ SELECT DISTINCT CITY FROM STATION WHERE CITY LIKE 'i%' OR CITY LIKE 'e%' OR CITY LIKE 'a%' OR CITY LIKE 'o%' OR CITY LIKE 'u%'

  • sql
David Lee 댓글 1 좋아요 0 조회수 360

에뮬레이터가 창뒤로 안가려지는 방법

미해결

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

화면에서와 같이 동영상 강의중에 보면 화면에 띄워놓은 에뮬레이터가 코드작성시에도 안드로이드 스튜디오 창 뒤로 안가려지고 그대로 유지되고 있는데 어떻게 하는거에요? 저는 가려져서 안스창크기를 조절해서 에뮬레이터를 옆으로 놓고 있어서요...

  • flutter
  • 클론코딩
Rain J 댓글 2 좋아요 1 조회수 454

Execution failed for task ':test'. 오류

미해결

테스트 오류 아래와 같이 발생했습니다. 그런데 인프런에서 동일한 오류 답변을 참조해여 변경했는데도 계속 오류가 납니다. 도와주세요. plugins { id 'java' id 'org.springframework.boot' version '3.1.2' id 'io.spring.dependency-management' version '1.1.2' } group = 'jpabook' version = '0.0.1-SNAPSHOT' java { sourceCompatibility = '17' } configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' implementation 'org.springframework.boot:spring-boot-starter-web' implementation 'org.springframework.boot:spring-boot-devtools:1.5.10.RELEASE' testImplementation 'org.junit.jupiter:junit-jupiter:5.8.1' compileOnly 'org.projectlombok:lombok' runtimeOnly 'com.h2database:h2' annotationProcessor 'org.projectlombok:lombok' testImplementation 'junit:junit:4.13.1' testImplementation 'org.springframework.boot:spring-boot-starter-test' } tasks.named('test') { useJUnitPlatform() }

박창균 댓글 1 좋아요 0 조회수 160

onRemove 원리 질문

미해결

한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지

안녕하세요! useReduce를 사용하고 최적화를 한 단계에서 onReduce() 함수가 어떻게 최적화 되는지 원리에 의문이 생겨 질문 드립니다. const [data, dispatch] = useReducer(reducer, []); //reducer 생략 case "REMOVE": return state.filter((it) => it.id !== action.targetId); 해당 코드에서 REMOVE를 실행하면 data 배열이 새로운 배열로 업데이트가 됨 -> 2. 그러면 data를 prop으로 받고 있는 DiaryList.js에서 이를 감지하고 처음부터 끝까지 DiaryItem.js를 다시 생성함. ->3. 그런데 DiaryItem은 React.memo로 prop를 비교하는데, 얕은 비교를 하기에 data에 새로 생성된 배열과는 주소가 달라 새로운 컴포넌트를 다시 생성. 이 되어야 하지 않을까요? 혹시 저의 논리에서 어디 부분이 잘못되었는지 모르겠어서 질문합니다... ㅠ

  • javascript
  • react
  • node.js
문찬규 댓글 1 좋아요 0 조회수 342

scroll-timeline.js 파일

미해결

웹 애니메이션의 새로운 표준, Web Animations API

안녕하세요! 강의 재밌게 잘 보고 있습니다 :D scroll-timeline.js 파일은 어디서 가져오신 건가요? 세팅부터 혼자서 해보려고 했는데 scroll-timeline 저장소 여기서 아무리 찾아봐도 안 보이네요..! Usage에 보면 import를 dist 폴더에서 scroll-timeline.js를 가져오는 것 같은데 dist 폴더도 안 보이고 src 폴더에 scroll-timeline-base.js도 아닌 것 같아서 질문 남깁니다..! 또, scrollOffsets에 넣는 옵션들은 어떻게 확인하나요? README에는 new CSSUnitValue 이것밖에 안 보이는데 강의에서는 target, edge, threshold 속성들도 쓰셔서 어디서 확인하고 쓰시는지 너무 궁금합니다..!

  • HTML/CSS
  • javascript
  • 인터랙티브-웹
  • frontend
  • web-animations-api
댓글 1 좋아요 0 조회수 567

10 list section 강의 잘린건가요?

미해결

SwiftUI - iOS14 퍼펙트 가이드

26분 24초로 되어있는데, 갑자기 잘린 것 같아서 여쭤봅니다^^ 강의 필요한 부분만 해주셔서 잘 듣고 있습니다. 감사합니다.

  • ios
  • swiftui
조명훈 댓글 2 좋아요 0 조회수 390

databinding gradle 세팅 관련 문의입니다.

해결됨

[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)

인텔리제이로 진행중이고, dataBinding{ enabled = true } 가 오류가나서 buildFeatures { dataBinding=true } 로 진행했는데 상관없는부분일까요? ? 전체소스는 plugins { id(" com.android .application") id(" org.jetbrains.kotlin.android ") } android { namespace = "com.qor0923.databinding_ex" compileSdk = 33 defaultConfig { applicationId = "com.qor0923.databinding_ex" minSdk = 24 targetSdk = 33 versionCode = 1 versionName = "1.0" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" } buildTypes { release { isMinifyEnabled = false proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), " proguard-rules.pro ") } } compileOptions { sourceCompatibility = JavaVersion.VERSION_1_8 targetCompatibility = JavaVersion.VERSION_1_8 } kotlinOptions { jvmTarget = "1.8" } buildFeatures { dataBinding=true } } dependencies { implementation("androidx.core:core-ktx:1.9.0") implementation("androidx.appcompat:appcompat:1.6.1") implementation(" com.google.android .material:material:1.8.0") implementation("androidx.constraintlayout:constraintlayout:2.1.4") testImplementation("junit:junit:4.13.2") androidTestImplementation("androidx.test.ext:junit:1.1.5") androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1") } 입니다.. 감사합니다

  • android
  • kotlin
  • firebase
백근우(qor0923) 댓글 1 좋아요 0 조회수 491

Ubuntu / Network Interface SysConfig 파일 찾는 법

해결됨

시스템엔지니어가 알려주는 리눅스 기초편 Bash Shell Script

실무에서 자주 사용하는 명령어_네트워크 관련 명령어 에서 Network Interface를 확인하는 명령어를 알려주셨습니다. CentOs : /etc/sysconfig/network-scripts/ Ubuntu : /etc/network/interfaces 하지만 AWS EC2 Ubuntu@20.04에서는 netplan 모듈 로 Network Interface 설정이 관리되고 있습니다. 따라서, /etc/netplan 하위에 있는 *.yml 파일을 보면 해당 설정을 볼 수 있습니다! 아래와 같은 이름으로 있습니다. 01-network.yaml 10-wifi.yaml 50-cloud-init.yaml (Linux 배포판 공급사에 따라서 조금 다를 수 있을 것 같습니다...)

  • linux
  • shell-script
unchaptered 댓글 1 좋아요 0 조회수 1490

코드 확인 부탁드립니다.

해결됨

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

package inflearn.ch03; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; /* 5. 연속된 자연수의 합(투 포인터) */ public class Problem_5 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.parseInt(br.readLine()); int[] array = new int[N]; for(int i = 0; i < N; i++){ array[i] = i+1; } solution(N,array); } public static void solution(int N, int[] array){ int start = 0; int end = 0; int sum = 0; int count = 0; while (end < N-1){ sum += array[end++]; if(sum == N){ count++; } while (sum >= N){ sum -= array[start++]; if(sum == N){ count++; } } } System.out.println(count); } } 강의와 다르게 범위를 줄이지 않고 while 문으로 사용해서 정답 통과를 했는데 나중에 범위가 커지면 문제가 발생할 수 있을까요?

  • java
  • 코딩-테스트
JH_DEV77 댓글 1 좋아요 0 조회수 342

window11 / 23.08.09 기준 kafka connect 버전

미해결

Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)

window11 / 23.08.09 기준으로 kafka connect 버전을 7.1 버전으로 사용하시길 바랍니다. 해당 강의의 6.1 버전에서 properties 경로를 못찾아서 버전업을 했더니 해결 했습니다.

  • spring-boot
  • jpa
  • 아키텍처
  • spring-cloud
  • kafka
  • msa
psw 댓글 1 좋아요 1 조회수 995

네이버쇼핑 검색창 클릭

미해결

[신규 개정판] 이것이 진짜 크롤링이다 - 기본편

크롬 버전 15입니다. 네이버 쇼핑 클릭까지는 됩니다. 네이버 쇼핑 접속 후에 쇼핑 검색창 selector을 하고 싶은데 네이버 쇼핑이 많이 바껴 selector이름?이 무엇인지 잘 모르겠어요 ㅠ.. 혹시 현재 네이버 쇼핑의 검색창이 무엇인지 알수 있을 까요? 오른쪽 마우스>copy>copy selector 클릭하면 #gnb-gnb > div._gnb_header_area_150KE > div > div._gnbLogo_gnb_logo_3eIAf > div > div._gnbSearch_gnb_search_3O1L2 > form > div._gnbSearch_inner_2Zksb > div > input 이렇게 나옵니다.

  • python
  • 웹-크롤링
배키 댓글 2 좋아요 0 조회수 638

젠킨스 빌드시 오류 (jdk 관련)

미해결

Jenkins를 이용한 CI/CD Pipeline 구축

안녕하세요. 강의 중에 해결이 되지 않아서 올립니다. 해당 jenkins 컨테이너에 들어가서 jdk 전역변수 위치 확인 및 해당 경로에 jdk가 설치되어있는지 확인하면 잘 되어있는 것을 알 수 있습니다. 위에 비슷한 상황으로 올리신 분이 있어 확인해보니 위와 같이 tools에서 설정 및 해당 경로에 java가 있으면 된다는 분이 있어 시도 해 봤으나 동일하게 아래와 같이 jdk를 찾을 수 없다는 에러가 발생합니다.. Thread.run ( Thread.java:829 ) WARNING: LinkageError while performing UserRequest:hudson.maven.Maven3Builder@40f17c43 java.lang.UnsatisfiedLinkError: /opt/java/openjdk/lib/libawt_xawt.so: libXext.so .6: cannot open shared object file: No such file or directory winodw os를 사용중이라서 해당 컨테이너를 나오면 위와 같이 환경변수 설정이 되어있는데 컨테이너 밖에서도 opt/java/openjdk 위치에 동일한 jdk-11이 깔려있어야 에러가 안나는 건지 궁금하긴한데 강의내용상 자동으로 컨테이너에 jdk가 깔리기때문에 따로 해줄 게 없다고 들었는데 위와 같은 에러가 왜 발생하는지 궁금하네요... 이 부분이 해결되어야 강의진행이 가능할 것 같은데 조언을 부탁드립니다.

  • ansible
  • jenkins
  • kubernetes
  • ci/cd
  • sonarqube
deokgoni 댓글 1 좋아요 0 조회수 849

노션

미해결

[리뉴얼] SQL 베이스캠프

노션 링크는 어디서 찾을 수 있을까요? 처음부터 수강했는데 못찾겠어요ㅜㅜ

  • sql
  • dbms/rdbms
한정수 댓글 1 좋아요 0 조회수 394

VirtualScroll 이 버전 업데이트 되면서 많이 바뀐거 같아요..

미해결

입문강의 타입스크립트부터 ionic6 (앵귤러 기반)

virtualScroll 강의 듣는 중에 에러가 계속 나서 찾아보니 버전 업데이트 되면서 아예 바뀌었더라고요.. 괜찮으시다면 이런 내용은 업데이트가 안될까요..? Docs 보면서 혼자 해보고는 있는데 어렵습니다..

  • 하이브리드-앱
  • IONIC
  • typescript
이설희 댓글 1 좋아요 0 조회수 454

스팟파이어 단축키 문의

미해결

스팟 파이어 단축키가 존재하나요? (예. [계산된 컬럼 추가] 같은 기능의 단축키)

hyoe3166 댓글 1 좋아요 0 조회수 461

교집합 타입 질문있습니다

해결됨

한 입 크기로 잘라먹는 타입스크립트(TypeScript)

dog: name, color person: name, language 이 상태에서 그러면 name, color, language, age 프로퍼티를 갖는 타입도 dog & person의 인터섹션 타입으로 볼 수 있는건가요?

  • typescript
정민교 댓글 1 좋아요 0 조회수 445

115강 5분 10초, model의 타입을 ProductModel로 지정했을 때 발생하는 타입 및 null 에러가 있습니다

해결됨

[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!

class ProductPage extends StatelessWidget { const ProductPage({super.key}); @override Widget build(BuildContext context) { return PaginationListView<ProductModel>( provider: productProvider, itemBuilder: <ProductModel>(_, index, ProductModel model) => GestureDetector( onTap: () => context.goNamed( RestaurantDetailPage.routeName, pathParameters: { 'rid': model.restaurant.id, }, ), child: ProductCard.fromProductModel( model: model, ), ), ); } } 여기서 이상한 에러가 뜹니다. 먼저 'rid': model.restaurant.id 이 부분에서는 아래와 같은 에러가 뜹니다. The property 'restaurant' can't be unconditionally accessed because the receiver can be 'null'. Try making the access conditional (using '?.') or adding a null check to the target ('!').dart unchecked_use_of_nullable_value 그리고 두 번째로, ProductCard.fromProductModel(model: model) 에서는 이런 에러가 뜹니다. The argument type 'ProductModel' can't be assigned to the parameter type 'ProductModel'.dart argument_type_not_assignable 두 에러 모두 이해되지 않습니다. ProductModel 타입을 ProductModel 타입으로 Assign할 수 없다니요? 같은 타입인데 이런 에러가 뜹니다. 또한 첫 번째 에러의 경우에도, 분명히 nullable 타입이 존재하지 않는데 nullable 체크를 하라고 하고 있습니다. 당황스럽습니다. 한편, 강의는 이런 식으로 되어 있습니다. itemBuilder: <ProductModel>(_, index, model) 즉 model 의 타입을 따로 지정해주지 않았습니다. 이렇게 했을경우 model의 타입은 dynamic 이 되며, 자동 완성 기능은 수행할 수 없지만, 결론적으로 잘 작동은 합니다. 그런데 왜 저런 이상한 에러가 발생하는 지 모르겠습니다. 여기 이와 관련된 코드를 덧붙입니다. 그러나 대부분 강의와 동일합니다. @JsonSerializable() class ProductModel implements IModelWithId { @override final String id; /// 상품 이름 final String name; /// 상품 상세 정보 final String detail; /// 상품 이미지 URL @JsonKey(fromJson: DataUtils.pathToUrl) final String imgUrl; /// 상품 가격 final int price; /// 레스토랑 정보 final RestaurantModel restaurant; ProductModel({ required this.id, required this.name, required this.detail, required this.imgUrl, required this.price, required this.restaurant, }); factory ProductModel.fromJson(Map<String, dynamic> json) => _$ProductModelFromJson(json); } typedef PaginationWidgetBuilder<T extends IModelWithId> = Widget Function( BuildContext context, int index, T model, ); 문제가 발생하고 있는 스크린샷:

  • flutter
  • 하이브리드-앱
limazero14 댓글 1 좋아요 0 조회수 370

보안 및 content type 질문

미해결

[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!

Token 발급 과정에서 username:password 값을 base64 로 인코딩 후 authorization 헤더에 Basic $token 형태로 전송하는 것이 정석이라고 말씀해주셨습니다. 질문1. Basic $token 형태는 인증정보가 그대로 base64 형태로 인코딩해줍니다. 그러면 누군가가 이 패킷을 까보기만 하면 데이터를 알 수 있는 것이 아닌가요..? 이 부분이 이해가 잘 안되네요. 설명부탁드립니다.. 질문2. 추가로 챗gpt 에게 질문했을 때, 로그인할 때 content type 을 application/x-www-form-urlencoded 형태로 보내라고 하는데, 대부분은 json 형태로 전송하더라구요.. 설명부탁드립니다...

  • flutter
  • 하이브리드-앱
Seung Min Liang 댓글 1 좋아요 0 조회수 441

html과 css 구문 모두 똑같은데 sub-menu가 슬라이드 뒤에 숨어요ㅠ

해결됨

[2026년 출제기준] 웹디자인개발기능사 실기시험 완벽 가이드

해당 부분 html-<header> <article class="header-logo">로고</article> <article class="navi"> <ul class="menu"> <li> <a href="#none">MENU-1</a> <div class="sub"> <a href="#none">sub-1</a> <a href="#none">sub-2</a> <a href="#none">sub-3</a> <a href="#none">sub-4</a> </div> </li> <li> <a href="#none">MENU-2</a> <div class="sub"> <a href="#none">sub-1</a> <a href="#none">sub-2</a> <a href="#none">sub-3</a> <a href="#none">sub-4</a> </div> </li> <li> <a href="#none">MENU-3</a> <div class="sub"> <a href="#none">sub-1</a> <a href="#none">sub-2</a> <a href="#none">sub-3</a> <a href="#none">sub-4</a> </div> </li> <li> <a href="#none">MENU-4</a> <div class="sub"> <a href="#none">sub-1</a> <a href="#none">sub-2</a> <a href="#none">sub-3</a> <a href="#none">sub-4</a> </div> </li> </ul> </article> </header> 해당 부분 css- .menu { padding: 0; list-style: none; width: 90%; margin: auto; margin-top: 10px; position: relative; } .menu li { text-align: center; } .menu li > a { border: 1px solid #000; display: block; padding: 5px; color: #000; transition: 0.3s; } .menu li:hover > a { background-color: #000; color: #fff; } .sub { border: 1px solid #000; position: absolute; top: 0; left: 100%; width: 100%; height: 200px; background-color: #000; /* display: none; */ } .sub > a { display: block; color: #fff; padding: 5px; transition: 0.3s; } .sub a:hover { background-color: #000; color: #fff; } 인터넷 찾아보고 z-index도 넣어봤는데 소용이 없습니다ㅠㅠ

  • HTML/CSS
  • jquery
  • 웹-디자인
한아 댓글 2 좋아요 1 조회수 458

useMutation에러

해결됨

[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스

Server Error Invariant Violation: Argument of undefined passed to parser was not a valid GraphQL DocumentNode. You may need to use 'graphql-tag' or another method to convert your operation into a document This error happened while generating the page. Any console logs will be displayed in the terminal window. 이러한 에러가 뜨는데 왜 발생하는 걸까요. const [contents, setContents] = useState(""); 18 | > 19 | const [나의함수] = useMutation(나의그래프큐엘셋팅) | ^ 20 | 21 | const onClickSubmit = async () => { 22 | const result = await 나의함수({ import { useState } from "react" import {나의그래프큐엘셋팅} from './BoardWrite.queries' // export는 골라서 가져오기 import BoardWriterUI from "./BoardWrite.presenter"; // export-default로 한 개만 가져오기 import { useMutation } from "@apollo/client"; // import BoardWriterUI from "./BoardWrite.presenter"; // export-default로 한 개만 가져오기 // import BoardWriterUI, {apple} from "./BoardWrite.presenter"; // export-default와 export 함께 가져오기 // import * as S from './BoardWrite.styles' // 모든 export를 가져와줘 // S.BlueButton // S.RedInput export default function BoardWrite() { const [writer, setWriter] = useState(""); const [title, setTitle] = useState(""); const [contents, setContents] = useState(""); const [나의함수] = useMutation(나의그래프큐엘셋팅) const onClickSubmit = async () => { const result = await 나의함수({ variables : { // variables 이게 $ 역활을 함 writer : writer, title : title, contents : contents } }) console.log(result) } const onChangeWriter = (event) => { setWriter(event.target.value) } const onChangeTitle = (event) => { setTitle(event.target.value) } const coChangeContents = (event) => { setContents(event.target.value) } return ( <BoardWriterUI aaa={onClickSubmit} bbb={onChangeWriter} ccc={onChangeTitle} ddd={coChangeContents}/> ) } -컨테이너 import { gql } from "@apollo/client" const 나의그래프큐엘셋팅 = gql` mutation createBoard($writer : String, $title : String, $contents: String) { createBoard(writer : $writer, title : $title, contents : $contents) { _id number message } } ` -쿼리

  • react
  • node.js
  • seo
  • graphql
  • next.js
simple 댓글 1 좋아요 0 조회수 463

인기 태그

인프런 TOP Writers

주간 인기글