묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[기초스피치] 14년차 아나운서에게 배우는 말 잘하는 방법!
복식호흡
안녕하세요복식호흡 말은 많이 들어 봤는데 실제 어떤 것인지 잘 감이 안옵니다.그동안 흉부로만 쉼을셔서 그런지 숨을 들어마시면 가슴은 부불어 오르고 배는 들어가는 느낌입니다. 그럼 복식호흡은 이걸 반대로 해야 하는 건가요?인위적으로 배가 나오게 힘을주는게 맞는 연습방법인지요?
-
해결됨[리뉴얼] React로 NodeBird SNS 만들기
Cannot read properties of null (reading 'useRef') 오류 질문
강의에서 진행 된 요소 추가 전까진 정상 작동 되는 것 확인 했습니다. Menu 추가 후 아래와 같은 오류가 출력 됩니다. Warning: Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:1. You might have mismatching versions of React and the renderer (such as React DOM)2. You might be breaking the Rules of Hooks3. You might have more than one copy of React in the same appSee https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem. TypeError: Cannot read properties of null (reading 'useRef') at useRef (C:\Users\sion\node_modules\react\cjs\react.development.js:1630:21) at Object.render (C:\Users\sion\node_modules\antd\lib\menu\index.js:19:37) at ReactDOMServerRenderer.render (C:\Users\sion\Documents\prepare\front\node_modules\react-dom\cjs\react-dom-server.node.development.js:3535:44) at ReactDOMServerRenderer.read (C:\Users\sion\Documents\prepare\front\node_modules\react-dom\cjs\react-dom-server.node.development.js:3373:29) at renderToString (C:\Users\sion\Documents\prepare\front\node_modules\react-dom\cjs\react-dom-server.node.development.js:3988:27) at Object.renderPage (C:\Users\sion\Documents\prepare\front\node_modules\next\dist\next-server\server\render.js:50:851) at Document.getInitialProps (C:\Users\sion\Documents\prepare\front\.next\server\pages\_document.js:264:19) at loadGetInitialProps (C:\Users\sion\Documents\prepare\front\node_modules\next\dist\next-server\lib\utils.js:5:101) at renderToHTML (C:\Users\sion\Documents\prepare\front\node_modules\next\dist\next-server\server\render.js:50:1142) at process.processTicksAndRejections (node:internal/process/task_queues:95:5) 터미널에 찍힌 로그입니다.react/react dom 버전은 동일함을 확인했고 16.14.0 버전 사용 중입니다. 구글링 중 react hook form을 인스톨 하라는 검색 결과가 있어 해당 패키지 설치 했습니다. 버전은 7.49.2 사용 중 입니다. 로컬에서 실행 된 화면입니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
expected 옵션이 적용되지 않아 질문드립니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. junit4 적용된걸 확인했는데도 test에서 적용이 안돼 질문드립니다 orderServiceTest 상품주문_재고수량초과 @TEST에서 expeced 오류로 뜹니다. @Test(expeced = NotEnoughStockException.class); public void 상품주문_재고수량초과() throws Exception{ //given Member member = createMember(); Item item = createBook("시골 JPA", 10000, 10); int orderCount =11; //when //Assertions.assertThatThrownBy(()->orderService.order(member.getId(), createBook().getId(). orderCount)) // .isInstanceOf(NotEnoughStockException.class); orderService.order(member.getId(), item.getId(), orderCount); //then fail("재고 수량 부족 예외가 발생해야한다"); build.gradledependencies { 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' implementation("com.github.gavlyukovskiy:p6spy-spring-boot-starter:1.5.6") testImplementation 'junit:junit:4.13.1' compileOnly 'org.projectlombok:lombok' runtimeOnly 'com.h2database:h2' annotationProcessor 'org.projectlombok:lombok' testImplementation 'org.springframework.boot:spring-boot-starter-test' testImplementation("org.junit.vintage:junit-vintage-engine") { exclude group: "org.hamcrest", module: "hamcrest-core" } }
-
미해결
docker image 공유하는 방법
안녕하세요 docker 관련 공부를 하는 중에 질문이 생겨서 글 남깁니다 우선 A서버, B서버가 있습니다.B서버에서 따로 image pull 없이 docker의 기본 경로를 A서버를 바라보게 하고A서버의 docker image를 B서버에서도 run이 가능하도록 설정이 가능할까요?그리고 A서버의 image를 B 또는 C에서 commit하고 다른 곳에서 다시 image를 run해도 그 이미지가 그대로 commit 된 채로 남아 있는 것이 가능할까요? 이해를 돕고자 그림 첨부합니다.설정하는 방법 중 tar, local repository 사용 없이 하고자 합니다. /etc/docker/daemon.json 파일도 수정해보면서 시도해봤는데 실패하고 있어제가 모르는 방법이 있는건지 아니면 이렇게 설정을 하는 것이 불가능한 것인지 모르겠네요
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
My-Second-Project 빌드 에러
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요.My-Second-Project 빌드를 하면 아래와 같은 Error 가 발생합니다....[INFO] Downloading from central: https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-clean-plugin/3.2.0/maven-clean-plugin-3.2.0.pom [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 1.993 s [INFO] Finished at: 2023-12-22T06:19:54Z [INFO] ------------------------------------------------------------------------ [ERROR] Plugin org.apache.maven.plugins:maven-clean-plugin:3.2.0 or one of its dependencies could not be resolved: Failed to read artifact descriptor for org.apache.maven.plugins:maven-clean-plugin:jar:3.2.0: The following artifacts could not be resolved: org.apache.maven.plugins:maven-clean-plugin:pom:3.2.0 (absent): Could not transfer artifact org.apache.maven.plugins:maven-clean-plugin:pom:3.2.0 from/to central (https://repo.maven.apache.org/maven2): repo.maven.apache.org: Name or service not known: Unknown host repo.maven.apache.org: Name or service not known -> [Help 1] [ERROR] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. [ERROR] Re-run Maven using the -X switch to enable full debug logging. [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginResolutionException [JENKINS] Archiving /var/jenkins_home/workspace/My-Second-Project/pom.xml to com.njonecompany.web/web/1.0/web-1.0.pom Finished: FAILURE해결 할 수 있는 방법이 있을까요 ?
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
영속쿠키: 로그아웃 vs 브라우저 닫기
안녕하세요, 김영한 강사님이해한 내용이 맞는지 확인부탁드립니다 ㅎㅎㅎ 만약에 만료날짜를 대충 1년뒤 2024년 12/22 이라고 정해놓은 영속쿠키를 설정한다면 브라우저를 꺼도 1년동안 자동로그인이 된 상태로 유지되는 원리인가요? 그런데 영속쿠키를 설정해놓았더라도 브라우저를 끄는것이 아닌 로그아웃을 누르게 되면 서버측으로 "로그아웃 요청"을 직접적으로 한것이라 서버측에서는 쿠키 max-age 같은 설정을 0으로 초기화하여 로그인이 풀릴수 있는것이죠? 즉, 영속쿠키는 아무리 만료날짜까지 쿠키가 삭제되지 않는다해도 그 날짜 사이에 로그아웃을 하면 로그인이 풀리는것이죠?
-
미해결스프링 핵심 원리 - 기본편
학습 순서 및 방법에 대해 질문있습니다.
이해가 되지 않아도 일단 먼저 듣고 복습을 하는 방식으로 학습을 하고 있습니다. 1.강의 들으며 손코딩 및 필기(이해 안돼도 진도빼는 위주로)2.(강의 전체 한바퀴 돈 후)강의자료 보며 복습3.혼자 해보다가 막히면 강의자료 참고 이런 식으로 학습중인데영한님께서 올려주신 최신 로드맵 영상에서 '실전! 스프링 부트와 JPA 활용 1' 은 복습할 것을 권장해주셨는데문제는 그냥 순서대로 들으라고 하신 강의도1,2 단계까지 해도 이해가 안돼서 3까지 하고있는 중입니다.. 지금처럼 진도 나가는 것이 더디더라도 한 강의(각 챕터 말고 통째로 하나의 강의)를 제대로 이해하고 다음 강의로 넘어가는 식으로 해야할지아니면 이해가 되지 않아도 로드맵의 진도 나가는 것을 우선으로 하는 것이 좋을지 고민입니다
-
미해결스프링 핵심 원리 - 기본편
학습 방법에 관해서 질문드립니다.
영한님 커리큘럼을 타고 있는데 효율적인 학습 방법이 있을까요? 현재 공부하고 있는 방법은 강의를 듣고 난 후 자료를 보면서 복습하고, 모르는 것이 있으면 질문하고 있습니다.강의를 듣거나 복습하는 과정에서 이해는 되는데, 안보고 코드를 치면서 구현을 한다고 하면 못할거 같다는 생각이 들더라고요. 영한님이 설명해주시는 강의 흐름은 이해가 되는데, 회원, 서비스, 주문 도메인 구현 과정이나 그 안에 어떤 메소드를 만들어야 하는지, 또 어떤 자료형을 사용할지에 대한 실력이 많이 부족한거 같습니다. 이 부분들은 강의를 복습한다고 해서 실력이 늘거같지도 않고, 시간이 많이 소요될거 같아서요. 혼자 프로젝트를 진행하면서 많이 써보면 되지 않을까 싶긴한데 이제 기본강의를 듣는 입장이라.. 아직은 부족해보입니다. 어떤식으로 공부하는게 좋을지 조언을 주셨으면 좋겠습니다. 추가로, 혼자 프로젝트를 하기 위해서는 로드맵 어느 강의까지 봐야 할까요? 현재 가지고 있는 지식은 자바 기초문법+스프링 입문+ 스프링 기초강의1 입니다.
-
미해결
react 모바일 삼성인터넷으로 사이트 접속시 크롬 연결 팝업
안녕하세요react로 웹 페이지를 만들었는데만든 사이트를 모바일로 삼성인터넷 앱을 통해 접속하니깐 크롬 연결 팝업이 자동으로 계속 나오게 되더라구요혹시 코드상으로 크롬 연결 팝업이 뜨는걸 막을수있는 방법이 있을까요 ?
-
미해결스프링 핵심 원리 - 기본편
회원 도메인 설계에서 회원 도메인 협력 협력관계에서 클라이언트에 관해 질문있습니다.
MemberRepositoy가 회원저장소, MemberService가 회원서비스의 역할인 것은 알겠습니다. 그렇다면 클라이언트는 MemberApp OrderApp같은 Application인가요? 아니면 CoreApplication 인가요? 어떤것이 클라이언트를 의미하는지 잘 모르겠습니다.
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
인텔리제이 폰트 색상 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요 강의를 수강중인 사람입니다. 인텔리제이 2023을 써도 저는 영한님처럼 코드 색상이 안나오네요.. 혹시 맥과 윈도우의 차이일까요? 아니면 다른 설정이 필요한건가요?
-
해결됨날씨를 알려주는 나만의 SlackBot 만들기 (파이썬)
아래와 똑같은 질문입니다.
bot에 대한 토큰을 입력하는 과정에서 key error가 뜹니다. 말씀하신 apps?new_classic_app=1에 들어가서 생성했습니다. rtm = RTMClient(token=os.environ[token])에서 오류가 나는데, 뭐가 잘못된 걸까요?
-
미해결
강의 도중 오류 질문
김영한 강사님 강의를 들으면서 공부하다가 이렇게 빨간줄이 뜨면서 라는데 저는 package hello.hellospring.repository; import hello.hellospring.domain.Member; import java.util.*; public class MemoryMemberRepository implements MemberRepository { private static Map<Long, Member> store = new HashMap<>(); private static long sequence = 0L; @Override public Member save(Member member) { member.setId(++sequence); store.put(member.getId(), member); return member; } @Override public Optional<Member> findById(Long id) { return Optional.ofNullable(store.get(id)); } @Override public List<Member> findAll() { return new ArrayList<>(store.values()); } @Override public Optional<Member> findByName(String name) { return store.values().stream() .filter(member -> member.getName().equals(name)) .findAny(); } }이렇게 교수님 강의 들으면서 쓰다가 오류가 나서 일단 복붙을 해봤는데도 저렇게 오류가 뜨는데 왜 이런건가요 ?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
감사합니다!
선생님 안녕하세요! 이번에 수강한 학생입니다. 작업1: 20 (1문제 틀림) 작업2: 20 작업3: 15 (1문제 틀림) 너무나 아깝게 탈락했어요 ㅠㅠ 다음 시험에 열심히 할게요. 작업형 1유형은 너무고민해서 틀린듯 합니다. 상관계수만 확인하면 될 것을 회귀방적식의 계수가 가장 높은 것의 상관계수를 골랐네요. 작업형2에서 object형을 레이블인코딩 하고, 렌덤포레스트(회귀) 진행했는데 뭔가 잘 안되었나봐요. 20점 받은 것으로 보아 실기 방법이나 제출에 문제는 없었던 것 같고, 무언가 잘 안맞았나 봅니다. 다음 시험에는 잘 할게요 ^^ 아참, 이번 3유형 풀면서 로지스틱회귀분석이 나왔는데, 이 부분은 안 다루어주신 듯 해서요. 다음에도 혹시 나올 수 있어서 그런데 강의 추가해 주실 수 있으신가요? (아직 10월까지 수강도 남아서... ㅋ) 감사합니다 ^^ 새해 복 많이 받으시고요.
-
미해결Next + React Query로 SNS 서비스 만들기
섹션3 마지막 강의. suspense 관련 간단 질문입니다.
안녕하세요 강의 잘 듣고있습니다 제로초님! 질문 한 가지 있습니다!섹션3 마지막 강의 suspense 관련 간단 질문입니다.검색 엔진이 로딩화면을 긁어가서 SEO가 안 좋아지는 것을 막기위해서 preFetchInfiniteQuery를 통해 SSR를 구현해야한다고 하셨는데, 마지막에 알려주신 post 목록에 suspense로 따로 로딩을 구현한 부분은 검색 엔진에 감지 되나요? 만약에 감지가 되지 않는다면 가장 중요한 게시물의 내용이 안보이게되는 셈이 될텐데 괜찮나요?
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
상품수정 API 질문
상품 수정 api 질문합니다. 지금 보시면 update에는 async,await가 붙어있는데 데이터베이스를 거쳐 resolver로 가져오면 굳이 안붙어도 된다고 하셨는데 왜 붙어있는지 궁금합니다async update( {product,updateProductsService }:IProductsServiceUpdate):promise<Product> { const product=await this.findOne({productId}) this.checkSoldout({product}) }
-
미해결김영한의 실전 자바 - 기본편
블로그 혹은 깃허브에 코드 업로드가 가능한가요?
안녕하세요.강의에서 사용되는 코드와 덧붙여 제가 공부하며 추가로 작성한 내용들을 개인 블로그 혹은 깃허브에 업로드하는 것이 가능할까요?김영한 선생님의 다른 강의들에도 동일하게 적용되는지 궁금합니다.어렵다면 프라이빗으로 작성하겠습니다!
-
해결됨손에 익는 Next.js - 공식 문서 훑어보기
비동기 호출, fetch, 라우트 핸들러 관련 질문입니다.
안녕하세요! revalidateTag 함수 관련 코드를 보다가 궁금한 점이 생겨서 질문 드립니다!우선 fetch를 통해 데이터를 받아오는 비동기 호출은 서버 컴포넌트에서만 호출할 수 있다고 해서 날씨API나 시간API를 서버 컴포넌트에서 fetch를 이용해 받아오는 것 까지는 이해가 갔습니다.그런데 아래와 같이 캐시를 비우는 버튼을 만들 때는 클라이언트 컴포넌트에서 fetch가 사용되었습니다. 'use client' type Props = { tag : string } export default function RevalidateButton({tag} : Props) { const handleClick = async () => { const res = await fetch(`/api/revalidate?tag=${tag}`, { method : 'POST' }) console.log(res) } return <button onClick={handleClick}>캐시 비우기</button> }일단 이벤트 핸들러는 클라이언트 컴포넌트에서 사용 해야 되서 'use client'를 작성하는 것도 이해가 갔습니다. 그리고 revalidateTag 함수는 서버 컴포넌트에서 호출되야 하니깐 'api요청을 보내야 되서 fetch를 사용해야 한다' 라고 이해를 했는데요.. 그럼 혼란 스러운게..'fetch비동기 호출은 서버 컴포넌트에서 하라고 되어 있는데 revalidateTag같이 서버 컴포넌트에서 동작하는 함수를 호출하기 위해서는 어쩔 수 없이 fetch를 클라이언트 컴포넌트에서 사용해야한다' 라고 이해 하는게 맞을까요??그리고 위의 코드에서 method : 'POST' 라고 세팅하여 주셨는데 보내는 방식은 POST로 정해져 있는 것인지, 다른 메서드 (get, update, delete)로 사용하면 안되는 것인지 궁금합니다!아래는 핸드북(3. Next.js 손에 익히기 / 7.날씨데이터 조회하기 / 데이터 재검증하기 )에 설명해주신 내용인데요! revalidateTag는 서버 사이드에서 호출 가능합니다. 하지만 캐시를 풀어달라는 요청은 클라이언트(브라우저)에서 만들어집니다. 때문에 API 형태로 revalidateTag를 호출할 수 있도록 만들어야 합니다. Next.js에서의 API는 라우트 핸들러를 통해 만들 수 있습니다."캐시를 풀어달라는 요청은 클라이언트(브라우저)에서 만들어집니다." 라는 말이 RevalidateButton 버튼을 클릭했을 때 handleClick 함수가 호출되는 때를 말씀하신 것인지 궁금합니다. 아래는 revalidateTag가 호출되는 서버 컴포넌트 코드입니다. import { revalidateTag } from "next/cache"; import { NextRequest, NextResponse } from "next/server"; export async function POST(req:NextRequest) { const tag = req.nextUrl.searchParams.get('tag'); if(!tag) throw new Error('태그는 필수!!') revalidateTag(tag) return NextResponse.json({message : '재검증에 성공했습니다', tag}) }revalidateTag 함수는 호출시 에러가 발생하는 경우는 없는건가요?? 제 생각에는 revalidateTag도 제대로 작동을 안할 수도 있으니깐 try catch 문으로 감싸서 호출하는게 맞지 않을까? 생각이 들었는데 그렇게 안해도 되는 것인지 궁금합니다!
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
Didupdatewidget
didupdatewidget과 setstate의 차이점을 알려주실 수 있나요? Setstate는 stateful위젯 안에서 변수를 변경하고 싶을때 사용하는건 알겠는데, didupdatewidget은 언재 사용하는지 잘 모르겠어요ㅜㅠ
-
미해결[실전]텍스톰 TEXTOM 실전 강의: 빅데이터 논문 작성을 위한 텍스트 분석/텍스트마이닝
섹션4 연구논문 작성 관련 참고논문 출처
선생님 안녕하세요. 수업 재밋게 잘 듣고 있습니다. 덕분에 쉽게 따라할 수 있을 것 같아요. 궁금한게 있어서요. 강의 섹션4 연구논문 관련 작성 강의에 사용한 "영어 인공지능 앱 리뷰"와 관련된 논문을 사용하셔서 강의를 진행해 주셨는데요, 해당 논문의 출처를 알 수 있을까요?