안녕하세요 6.5)에러 핸들링(error.tsx) 강의의 18:34초에서 startTransition을 사용했는데 궁금한 것이 있어서 QA올립니다. startTransition이라고 함은 공식문서에서 ``` action: 하나 이상의 set 함수를 호출하여 일부 상태를 업데이트하는 함수입니다. React는 매개변수 없이 즉시 action을 호출하고 action 함수 호출 중에 동기적으로 예약된 모든 상태 업데이트를 Transitions으로 표시합니다. action에서 await된 비동기 호출은 Transition에 포함되지만, 현재로서는 await 이후의 set 함수 호출을 추가적인 startTransition으로 감싸야 합니다(문제 해결 참조). Transitions으로 표시된 상태 업데이트는 non-blocking 방식으로 처리되며, ``` 불필요한 로딩 표시가 나타나지 않습니다. 이렇게 나와있는데 어떻게 onClick={()=> { router.refresh(); reset(); }} onClickHandler가 의도하지 않게 작동할 때, startTransition을 사용하려는 생각을 가지게 되었는지가 궁금합니다. 그리고 강의 내용에서 router.refresh() 가 비동기라고 이야기 해주셔서 비동기인지도 확인해보려고 공식문서등을 확인했는데 안보여서 링크 공유등을 해주시면 감사합니다.
강사님 풀이대로하고 코딩채첨을 했더니 런타임 에러가 뜨네요 import java.util.Scanner; public class Main { public int solution(int n) { int answer = 0; int[] isPrime = new int[n + 1]; for (int i = 2; i <= n; i++) { if (isPrime[i] == 0) { answer++; for (int j = i * i; j <= n; j += i) { isPrime[j] = 1; } } } return answer; } public static void main(String[] args) { Main m = new Main(); Scanner sc = new Scanner(System.in); int n = sc.nextInt(); System.out.println(m.solution(n)); } } 이렇게 하고 그대로 복붙했더니 런타임 에러가 뜹니다.
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 강의 첫 영상에서 build 할 때 Build and run using : Gradle Run tests using : Gradle 하셨는데 주문서비스Test 돌릴 때 인텔리제이로 돌리면 위 사친 처럼 나오고 gradle 로 해서 돌리면 위 사진 처럼 나오는데 강의 영상에선 인텥리제이로 해서 돌리신 것 같은데 인텥리제이로 해서 돌려도 괜찮은 것인가요? 문제 발생할 수 있다고 해서 궁금해서 여쭤봅니당..
안녕하세요 질문있습니다. 만약 게시글 전체 조회할 때 게시글 마다 좋아요 수도 함께 기재하려고 하면 게시글 조회 할 때 마다 articleId에 맞는 좋아요 수 정보도 함께 필요하잖아요? 현재 게시글 서버와 좋아요 서버가 다른 환경을 고려할 때 그러면 게시글 조회할 때 마다 좋아요 서버로의 api요청이 불가피할 거 같은데 이 경우 조회 성능이 당연히 안좋게 나올 수 밖에 없다고 생각합니다. 비정규화로 좋아요수를 게시글 테이블에 붙여서 단일 서버로의 요청을 만들어줄려고 해도 말씀하신 한계 때문에 안될 거 같구요. 만약 게시글 전체 조회 시에 게시글과 게시글의 좋아요수가 반드시 제공되어야 한다면 제가 생각한 성능 저하 포인트가 타당한가요? 만약 타당하다면 어떻게 개선할 수 있을까요? 인기게시글만 따로 추려서 레디스로 메모리를 활용해야할까요?
파사드 패턴은 다수의 서브시스템을 하나로 묶는 패턴으로 이해했습니다. 클라이언트의 클래스의 함수에서 서브시스템에 해당하는 개체들의 함수를 호출하여 구현하는 거 같은데요, 어떻게 보면 템플릿 메서드 패턴과 사실상 똑같은거 아닌가요? 두 패턴의 뚜렷한 차이가 있는데 제가 이해를 잘 못한건지 질문드립니다.
자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
다 정상적으로 동작하는데 이름 수정 로직이 제대로 동작하지 않고 서버 내부 오류라는 메시지가 자꾸 출력됩니다. 제가 혼자 해결해보려고 해보았는데 Hibernate가 id로 조회한 결과가 없어서 Optional이 비어서 orElseThrow가 예외를 던진거라고 하는데요... Postman 이용해서 제 실제 DB에 있는 데이터 값으로 전송해도 sql은 실행이 되는데 뭐가 문제인지 잘 모르겠습니다 ㅜㅜ 도와주세요 ㅜㅜㅜㅜ
안녕하세요. application.properties 에 logging.level.org.apache.coyote.http11=debug 를 추가해도 강사님과 같은 결과가 나오지 않는데 뭔가 잘못된 부분이 있을까요? 추가로, IntelliJ Community 버전에서는 application.properties 자동 완성을 사용할 수 있는 플러그인이 따로 없나요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 문제 2. 값 매개변수화 - 다양한 단위를 매개변수로 받기 ( 2. 람다 자료 25page) 예시코드 부분에서 다른 문제에서는 패키지가 import 되어 있는 방면 25 page에 있는 예시문제에서는 package lambda.ex1; 없어서 이렇게 남기게 되었습니다!
몇몇 코드들은 강의 중에 바로 복사해 붙여넣어 사용하시는 것 같던데, 혹시 따로 제공되는 코드 파일이 있을까요? 제가 기존에 제공받은 수업 자료 PDF에서 코드를 복사해 붙여넣어 보니 줄바꿈이 이상하게 되거나, 정상적으로 붙여넣기가 되지 않는 경우가 있어서 문의드립니다.
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 대상] 영상 기준: 03:00 ~ pdf 기준: 6.스프링 MVC - 기본 기능.pdf 의 p.48 RequestMappingHandlerAdapter 동작 방식 그림 [질문 내용] 안녕하세요, 영한님. 제가 가진 '호출' 이라는 행위의 동작 방식과 강의(영상 또는 pdf)에서 설명해주신 방식에 괴리가 있어 둘 중 어떤 방식이 적절한 것인지 질문드립니다. 제가 이해한 방식(방식1) RequestMappingHandlerAdapter (이하 핸들러 어댑터)는 Controller (이하 컨트롤러)를 실행(호출)해야 한다. 그런데 클라이언트에게 받은 데이터를 그대로 넘기면 컨트롤러가 받아야 되는 파라미터에 맞지 않는다. 따라서 ArgumentResolver (이하 리졸버)를 호출해서 파라미터에 맞게 변환(빨강, 파랑)해달라고 한다. 핸들러 어댑터는 리졸버로부터 변환된 빨강, 파랑을 받았다. 핸들러 어댑터는 빨강, 파랑을 넘기며 컨트롤러를 호출한다. 강의에서 설명한 방식(방식2) 핸들러 어댑터는 컨트롤러를 호출하기 전, 리졸버에게 빨강, 파랑 파라미터를 요청한다. (리졸버가 작업 모두 완료했다고 가정) 핸들러 어댑터가 컨트롤러를 호출한다. 이때 리졸버가 빨강, 파랑을 컨트롤러에게 넘겨준다. -> 이 부분이 '컨트롤러 호출은 핸들러 어댑터가 하는데 중간에 리졸버가 껴서 파라미터만 넘겨준다'로 받아들여지는데 제가 기존에 알고 있던 '호출' 메커니즘과는 다르다고 생각되어서요. 제가 영한님이 말씀하신 흐름 자체를 잘못 이해한 건지, 아니면 방식1이 적절한 것인지 질문드립니다! 관련 그림
MSA기반 주문 서비스 에서 동기식으로 호출할때 재고 차감 - 쿠폰 사용 - 주문 완료 이런식으로 구성되어 있을때 쿠폰 사용 실패일때는 바로 사용자에게 응답이 가능하다고 생각을 하고 있습니다. 하지만 EDA기반으로 재고 차감 - 쿠폰 사용 - 주문 완료를 구현하면 주문이 완료되고 쿠폰사용에 실패가 되어 사용자는 주문이 완료되었지만 다시 실패메시지가 가고 그때서야 이유를 알수 있다고 생각을 하고 있습니다. 그래서 사용자 경험 상 동기식이 맞다고 판단되는데 제가 잘못 생각을 하고 있는걸까요? MSA 기반 EDA 주문 구조에서 재고가 부족하여 실패한다면 사용자에게 바로 응답을 해줄수 있을까욤?.