학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 영상에선 정렬되서 나오는데 제 DB에서는 price부터 나오네요 코드 에러는 없고 넣으면 들어가는데 보기좋게 정렬되게 만들고 싶은데 어떻게 해야할까요?
안녕하세요 강사님. 강의 잘 보고 있습니다. getServerSideProps 함수와 SSR의 상관관계에 대해 의문점이 생겨 QnA를 찾아보고 있었는데요. 비슷한 질문 이 있어서 해당 답변 참고했는데 이해가 잘 되지 않아서요. 해당 답변에선 getServerSideProps 함수를 선언하지 않으면 SSG로 동작한다고 말씀해주셨습니다. getServerSideProps는 강의에서 말씀하신대로 서버에서 호출되어 미리 데이터를 패칭해주고 props를 주입해주는 용도로 사용된다고 이해했는데요. getServerSideProps 함수를 정의하여 export하면 해당 페이지가 SSR방식으로 동작한다는 내용이 이해가 잘 되지 않습니다. next는 기본적으로 SSR SSG방식으로 동작하는 것으로 알고 있고, 처음 접속하는 페이지는 SSG방식으로, 이후 관련된 Link 등으로 이동시 CSR 방식으로 렌더링 되는 것으로 이해하고 있습니다. 해당 부분에 대해 정확한 동작이 궁금합니다. 또한, getServerSideProps 함수를 정의한 페이지가 만약 현재 접속한 페이지에 Link 컴포넌트로 연결이 되어있다면 관련된 js 코드가 프리패칭 될 것인데요. 이 경우 getServerSideProps 함수를 정의한 페이지가 SSR이 아닌 CSR방식으로 렌더링 되는게 아닌가 질문드립니다. (getServerSideProps 함수는 여전히 서버에서 호출되는 것으로 이해하고 있습니다) 관련하여 클로드 답변 첨부드립니다. (오류가 있다면 정정 부탁드립니다..!) 추가 +) 질문을 하다 보니 다소 난해해졌는데요. 정리하자면 아래와 같이 이해하면 될지 궁금합니다. 기본적으로 접속시 SSG로 렌더링된 사이트를 보여주지만, getServerSideProps 함수를 정의하면 SSR로 요청한다. Link 등으로 연결되어 있는 경우 getServerSideProps 함수를 통해 데이터를 패칭해온다. 이후 페이지 렌더링 자체는 CSR로 진행한다. 항상 좋은 강의 감사합니다.
https://join.slack.com/t/lopun-lecture/shared_invite/zt-2mkxcgt5h-7Bq~fMnMJ8Scle17fzFYCQ next.js 프로젝트 생성 수업노트보기 에러 수정 바랍니다 아래와 같은 것이 나와요 otion.site/Supabase-Next-js-14-a522542541254b7ea54d9e81fdbf5e6a?pvs=4
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 현재 최신 버전인 SpringBoot4 + Hibernate7 을 사용해서 강의를 듣고 있습니다. 이 버전에서는 (Hibernate 모듈 등록 X + 프록시 직접 초기화 X] 상태에서 API 응답으로 엔티티를 곧바로 반환하게 되면, 강의 내용처럼 오류(예외)가 나지 않고, Jackson이 json을 만드는 과정에서 getter 등을 호출해서 프록시 객체들을 자동으로 초기화(로딩)시키는 것처럼 보이네요. 응답 결과에서도 모두 출력되고요 (물론, @JsonIgnore 없으면 무한루프는 발생) 그래서 강의 내용처럼 오류가 나도록 하는 방법을 한참 찾다가 현재 버전에서 Hibernate 모듈을 등록하는 방법을 발견해서 공유해봅니다. (메뉴얼에도 없길래) [등록 방법] 1. 라이브러리 등록 implementation 'tools.jackson.datatype:jackson-datatype-hibernate7' 2. 빈 등록 @Bean public Hibernate7Module hibernate7Module() { Hibernate7Module module = new Hibernate7Module(); // module.configure(Hibernate7Module.Feature.FORCE_LAZY_LOADING, true); return module; }
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. ============================= 안녕하세요. Spring Data JPA에서 연관관계 필드에 대한 exists 메서드 사용 시, 아래 두 방식 중 어떤 방식이 더 적절한지 궁금합니다. ProjectMember 엔티티는 아래처럼 Project , User 와 연관되어 있습니다. public class ProjectMember { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "project_id", nullable = false) private Project project; @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "user_id", nullable = false) private User user; } 사용자가 특정 프로젝트에 포함되어 있는지 확인하려고 할 때, 아래 두 가지 방식을 테스트해봤습니다. 1. 식별자 사용 : boolean existsBy UserId And ProjectId (Long userId, Long projectId) 단점: 이 메서드를 실행하면, project_members 테이블에 user_id , project_id FK가 있음에도 불구하고 users , projects 테이블과 불필요한 left join이 발생 했습니다. 실행 SQL: select pm1_ 0.id from project_members pm1_0 left join users u1_0 on u1_ 0.id = pm1_0.user_id left join projects p1_0 on p1_ 0.id = pm1_0.project_id where u1_ 0.id = ? and p1_ 0.id = ? fetch first ? rows only; 2. 엔티티 사용 : boolean existsBy User And Project (User user, Project project) 장점: 이 경우에는 조인 없이 where 절에서 FK 컬럼으로 조회 되었습니다. 단점: 하지만, 이 메서드를 사용하려면 서비스에서 userId, projectId 를 이용하여 User와 Project를 추가로 조회 해야 한다는 단점이 있습니다. 실행 SQL: select pm1_ 0.id from project_members pm1_0 where pm1_0.user_id = ? and pm1_0.project_id = ? fetch first ? rows only; 결론: 이 경우 두 방식 중 어떤 것을 사용하는 것이 더 좋은 선택인가요?
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] 여기에 질문 내용을 남겨주세요. ============================== 안녕하세요. Spring Data JPA에서 연관관계 필드에 대한 exists 메서드 사용 시, 아래 두 방식 중 어떤 방식이 더 적절한지 궁금합니다. ProjectMember 엔티티는 아래처럼 Project , User 와 연관되어 있습니다. public class ProjectMember { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "project_id", nullable = false) private Project project; @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "user_id", nullable = false) private User user; } 사용자가 특정 프로젝트에 포함되어 있는지 확인하려고 할 때, 아래 두 가지 방식을 테스트해봤습니다. 1. 식별자 사용 : boolean existsBy UserId And ProjectId (Long userId, Long projectId) 단점: 이 메서드를 실행하면, project_members 테이블에 user_id , project_id FK가 있음에도 불구하고 users , projects 테이블과 불필요한 left join이 발생 했습니다. 실행 SQL: select pm1_ 0.id from project_members pm1_0 left join users u1_0 on u1_ 0.id = pm1_0.user_id left join projects p1_0 on p1_ 0.id = pm1_0.project_id where u1_ 0.id = ? and p1_ 0.id = ? fetch first ? rows only; 2. 엔티티 사용 : boolean existsBy User And Project (User user, Project project) 장점: 이 경우에는 조인 없이 where 절에서 FK 컬럼으로 조회 되었습니다. 단점: 하지만, 이 메서드를 사용하려면 서비스에서 userId, projectId 를 이용하여 User와 Project를 추가로 조회 해야 한다는 단점이 있습니다. 실행 SQL: select pm1_ 0.id from project_members pm1_0 where pm1_0.user_id = ? and pm1_0.project_id = ? fetch first ? rows only; 결론: 이 경우 두 방식 중 어떤 것을 사용하는 것이 더 좋은 선택인가요?
(AI 퀀트) 코드 한 줄 안 쓰고 주식 자동 분석 시스템 만들기 feat. Claude CLI
💡 수강생 안내 사항 (커뮤니티 가이드) 학습 관련 질문 : 구체적으로 적을수록 정확한 답변을 받을 수 있습니다. 작성 팁 : 마크다운과 단축키를 활용하면 글을 더 편리하게 작성할 수 있습니다. 사전 검색 : 질문을 남기기 전, 커뮤니티 질문 & 답변에 비슷한 내용이 있었는지 먼저 검색해 보세요. 커뮤니티 매너 : 서로 예의를 지키며 존중하는 분위기를 함께 만들어가요. 서비스 문의 : 인프런 서비스 관련 문의는 1:1 문의하기 를 이용해 주세요. 안녕하세요. 수강생입니다. ^^ 노션에 올려놓으신 예제소스파일들이 상당히 중요한 기준이 되는 자료들인데 윈도우 사용자들은 한글이 들어있는 파일들이 모두 UTF-8문제로 텍스트가 다 깨져서 보입니다. 윈도우환경에서 수강하는 수강생들을 위해 UTF-8 적용된 예제소스파일들을 올려주실 수 있으신지요?
수업 예시에서는 외부 api가 실패할 경우 스케쥴러를 활용해서 후보정 로직을 통하여 결과적 일관성을 맞추고 있습니다. 만약에 자리를 지정하는 콘서트를 위와 같이 처리할 경우 (예약은 성공, 외부 api는 실패), 후보정 로직이 동작하기 전 다른 예약 시스템에서 해당 자리를 예약한 경우 더욱 큰 문제가 발생할 수 있을 것으로 보입니다. 이러한 경우 (좌석처럼 한정된 자원을 예약하는 경우), 외부 API 실패 시 후보정 로직을 통한 비동기 처리 대신 동기적으로 처리하는 것이 올바른 방식인 것 같은데, 강사님은 어떻게 생각하시는지 궁금합니다!
(AI 퀀트) 코드 한 줄 안 쓰고 주식 자동 분석 시스템 만들기 feat. Claude CLI
강의를 수강하다가 멈추고 클로드코드 다음번에 다시 시작하려고할때, 현재 강의를 보고 진행한 내용의 저장?하는 방법과 다음번 강의로 중간부터 다시 클로드코드 켜고, 연속적으로 시작하는 방법 문의드립니다. 감사합니다. 💡 수강생 안내 사항 (커뮤니티 가이드) 학습 관련 질문 : 구체적으로 적을수록 정확한 답변을 받을 수 있습니다. 작성 팁 : 마크다운과 단축키를 활용하면 글을 더 편리하게 작성할 수 있습니다. 사전 검색 : 질문을 남기기 전, 커뮤니티 질문 & 답변에 비슷한 내용이 있었는지 먼저 검색해 보세요. 커뮤니티 매너 : 서로 예의를 지키며 존중하는 분위기를 함께 만들어가요. 서비스 문의 : 인프런 서비스 관련 문의는 1:1 문의하기 를 이용해 주세요.