따라하며 배우는 노드, 리액트 시리즈 - 레딧 사이트 만들기(NextJS)(Pages Router)
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 81강을 수강중입니다. src/pages/r/[slug]/[identifier]/[slug].tsx 작성중 {post.voteScore} 를 콘솔로 찍어보면 undefined가 나와서 페이지에 노출되지 않습니다. 타입을 voteScore? : number 로 한게 문제인가해서 ?를 지워보았지만, 증상은 동일했고 api를 불러오면서 voteScore는 0으로 초기화되지 않은채 받는것 같아요. 그러던 중 백엔드의 Post.ts를 살펴보았더니 get voteScore()를 get V oteScore()로 오타 아닌 오타를 가져가서 초기화 되지 않았단걸 알아내었습니다. 누군가에게 도움이 되시길 바라며
전 항상 강의 듣기전 설명, 입력, 출력만 보고 시간이 얾마나 걸리던 풀고 강의를 보는데, 입력 란에 첫 줄에 길이 100을 넘지 않는 '공백이 없는 문자열이 주어집니다.' 라고 되어있어서 당연하게 next()를 사용했는데, 아무리 채점사이트 돌려봐도 오답이라길래 찾다 찾다 못 찾아서 보니, 바로 nextLine()을 사용하셨네요ㅠㅠ 결론은 공백이 있는 문자열이 존재합니다.. 부디 이걸보고 저 같은분 없길 바라며 남겨봅니다.
안녕하세요 선생님, 정말 좋은 강의 감사합니다. 선생님이 설명해주신 폰트 사이즈 줄이기 (Unicode Range) 를 테스트 해보려고 했습니다. 제가 진행한 Nextjs, React 두가지 프로젝트 환경에서 Unicode range없이 네트워크를 살펴보았는데요, 알아서 그 페이지에서 사용하는 폰트만 불러오는 것을 확인했습니다. 혹시 react 프로젝트는 Unicode-range 를 해주지도 않았는데 알아서 최적화를 해주는 것인가요...??.....
html에서 form 데이터를 받는 것에 대한 질문입니다. html form 에서 보내는 데이터를 Controller에서 ModelForm으로 받고 있는데 여기에 대한 질문입니다. 저 ModelForm으로 값을 받을수 있는 이유가 form태그 안에 name값을 넣어준 input태그들과 매칭되어서 값을 받아 올수 있는건가요? 아니면 form 태그에 명시한 th:object에 의해서 memberForm형태로 넘길 수 있는건가요?
안녕하세요. 이번 이미지 사이즈 최적화 강의를 보고 질문 드립니다. 강의에서 제공되는 이미지 데이터로는 getParametersForUnsplash()함수가 적용이 되는데 이미지 데이터를 다른 링크에 있는 이미지 주소 같은 거로 변경을 해서 진행을 해보면 변경이 안되는데 혹시 이런 경우에는 다른 방법을 사용해서 진행을 해야 하는 부분인가요?? 이미지 링크 주소 https:// t1.daumcdn.net/cfile/tistory/2408DD3658A648B12C
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 안녕하세요. 강의 내용을 보면 영한님께서 직접 html을 작성하지는 않지만, html 내용이 종종 나오는데 그럼 스프링 강의를 학습하기전에 html도 먼저 학습을 한후에 진행해야할까요??
항상 강의 잘듣고 있습니다. 회원의 이름과 팀 이름이 같은 회원을 조회하라는 예제를 듣고 조인 없이 직관적으로 다음과 같은 쿼리를 생각하였는데요. 테스트시 빈 결과값이 반환되는것으로 추측됩니다. @Test void theta_join() { em.persist(new Member("teamA")); em.persist(new Member("teamB")); em.persist(new Member("teamC")); List<Member> result = queryFactory .select(member) .from(member) .where(member.username.eq(member.team.name)) .fetch(); System.out.println("result = " + result); // => result = [] assertThat(result).extracting("username").containsExactly("teamA","teamB"); } //----------console log---------- Expecting actual: [] to contain exactly (and in same order): ["teamA", "teamB"] but could not find the following elements: ["teamA", "teamB"] //----------------------------------- 혹시나.. Fetch타입이 LAZY로 되어있어서 그런가 싶어서 EAGER로 바꿔봤는데도, 결과가 나오지 않습니다..... 그렇다면... 이 쿼리는 왜 작동하지 않는지 궁금합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] (멤버와 팀이 다대일 관계) "select t.members From Team t" t.members가 Member 객체가 아니라 Member컬렉션 자체라서 탐색이 허용안된다고 하셨는데요. 영한님께서 size 메서드를 쓰시는걸 보고 의문이 생겼습니다. 앞서 경로 표현식에서는 객체 탐색이 상태 필드, 단일값 연관필드, 컬렉션 값 연관필드만 허용이 된다고 하셨는데 size()는 왜 허용이 되는건가요? size가 허용되면 t.members.get(...)이런 식으로 컬렉션 메서드도 사용가능한거 아닌가요? 감사합니다
/Library/Java/JavaVirtualMachines/zulu-11.jdk/Contents/Home/bin/java -javaagent:/Applications/IntelliJ IDEA.app/Contents/lib/idea_rt.jar=60512:/Applications/IntelliJ IDEA.app/Contents/bin -Dfile.encoding=UTF-8 -classpath /Users/jeong-yeongmin/Downloads/study/JPA/jpa-basic/target/classes:/Users/jeong-yeongmin/.m2/repository/org/hibernate/hibernate-entitymanager/5.3.10.Final/hibernate-entitymanager-5.3.10.Final.jar:/Users/jeong-yeongmin/.m2/repository/org/jboss/logging/jboss-logging/3.3.2.Final/jboss-logging-3.3.2.Final.jar:/Users/jeong-yeongmin/.m2/repository/org/hibernate/hibernate-core/5.3.10.Final/hibernate-core-5.3.10.Final.jar:/Users/jeong-yeongmin/.m2/repository/org/javassist/javassist/3.23.2-GA/javassist-3.23.2-GA.jar:/Users/jeong-yeongmin/.m2/repository/antlr/antlr/2.7.7/antlr-2.7.7.jar:/Users/jeong-yeongmin/.m2/repository/org/jboss/jandex/2.0.5.Final/jandex-2.0.5.Final.jar:/Users/jeong-yeongmin/.m2/repository/com/fasterxml/classmate/1.3.4/classmate-1.3.4.jar:/Users/jeong-yeongmin/.m2/repository/javax/activation/javax.activation-api/1.2.0/javax.activation-api-1.2.0.jar:/Users/jeong-yeongmin/.m2/repository/org/dom4j/dom4j/2.1.1/dom4j-2.1.1.jar:/Users/jeong-yeongmin/.m2/repository/org/hibernate/common/hibernate-commons-annotations/5.0.4.Final/hibernate-commons-annotations-5.0.4.Final.jar:/Users/jeong-yeongmin/.m2/repository/javax/persistence/javax.persistence-api/2.2/javax.persistence-api-2.2.jar:/Users/jeong-yeongmin/.m2/repository/net/bytebuddy/byte-buddy/1.9.5/byte-buddy-1.9.5.jar:/Users/jeong-yeongmin/.m2/repository/org/jboss/spec/javax/transaction/jboss-transaction-api_1.2_spec/1.1.1.Final/jboss-transaction-api_1.2_spec-1.1.1.Final.jar:/Users/jeong-yeongmin/.m2/repository/com/h2database/h2/1.4.200/h2-1.4.200.jar hellojpa.JpaMain 10월 09, 2022 4:58:00 오전 org.hibernate.jpa.internal.util.LogHelper logPersistenceUnitInformation INFO: HHH000204: Processing PersistenceUnitInfo [ name: hello ...] 10월 09, 2022 4:58:00 오전 org.hibernate.Version logVersion INFO: HHH000412: Hibernate Core {5.3.10.Final} 10월 09, 2022 4:58:00 오전 org.hibernate.cfg.Environment <clinit> INFO: HHH000206: hibernate.properties not found Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException at org.hibernate.boot.spi.XmlMappingBinderAccess.<init>(XmlMappingBinderAccess.java:43) at org.hibernate.boot.MetadataSources.<init>(MetadataSources.java:86) at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.<init>(EntityManagerFactoryBuilderImpl.java:212) at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.<init>(EntityManagerFactoryBuilderImpl.java:174) at org.hibernate.jpa.boot.spi.Bootstrap.getEntityManagerFactoryBuilder(Bootstrap.java:76) at org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilder(HibernatePersistenceProvider.java:171) at org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilderOrNull(HibernatePersistenceProvider.java:119) at org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilderOrNull(HibernatePersistenceProvider.java:61) at org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:50) at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:79) at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:54) at hellojpa.JpaMain.main(JpaMain.java:10) Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBException at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522) ... 12 more Process finished with exit code 1 안녕하세요. 원래 gradle을 사용하다가 강의를 보면서 maven을 사용중인데 원래 설치했던 환경이 달라 그런지 계속 오류가 뜹니다. pom.xml도 아예 초기 세팅이 <properties>까지 포함하게끔 나와서 디폴트로 주는 거는 그냥 두고 강의 코드를 복사 붙여넣기 했는데 어떤식으로 바꿔야 되는지 모르겠습니다. 아래는 pom.xml코드입니다. <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.example</groupId> <artifactId>jpa-basic</artifactId> <version>1.0-SNAPSHOT</version> <properties> <maven.compiler.source>11</maven.compiler.source> <maven.compiler.target>11</maven.compiler.target> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> <dependencies> <!-- JPA 하이버네이트 --> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-entitymanager</artifactId> <version>5.3.10.Final</version> </dependency> <!-- H2 데이터베이스 --> <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <version>1.4.200</version> </dependency> </dependencies> </project>
========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 안녕하세요 혼자 프로젝트를 만들다가 특정 Type 별로 정렬을 수행해야 하는 경우가 생겨 검색하다 QueryDSL을 이용하여 orderBy Case 구문을 사용하는 방법이 궁금하여 질문을 남기게 되었습니다. 정확하게는 OneToMany 관계인 경우, Many 쪽의 요소를 정렬하고자 할 때의 방법을 잘 모르겠어서 질문드려요! Store < === > Menu 위의 두 엔티티가 OneToMany 관계로 연관되어 있고, 매장 상세 정보에서 메뉴를 출력하는 경우, Menu의 Type 필드( MAIN, DESSERT, DRINK, BEVERAGE)를 기준으로 orderBy를 수행하려고 합니다. 현재 제가 구현한 방식은 < 특정 매장에 속한 메뉴 조회하는 로직 > < 매장의 정보를 조회하는 코드 > 매장을 조회하는 로직에서 한 번에 처리하려고 하니 방법이 생각나지 않아 두 쿼리를 분리하여 메뉴는 위의 코드에서 조회하고, 아래에서는 매장의 나머지 정보만 불러오는 형식으로 구현돼있습니다. 또한 매장 정보 조회 시, DTO에선 순수 매장 정보만을 불러오는 형식이라 메뉴를 조회하는 쿼리가 중복으로 나가진 않습니다! 연관 관계에 놓여 있는 엔티티를 별도의 조회 쿼리를 작성하여 불러오는 것이 이런 경우 맞는 방법인지 아니면 제가 아직 부족하여 놓친 하나로 합쳐서 조회할 수 있는 좋은 방법이 있는지 궁금합니다!! 긴 글 읽어주셔서 감사합니다!
영한님께서 일대다[1:N]강의에서 1:40 ~ 1:50초 사이에 DB설계관점에서 보면 외래키가 다쪽에 외래키가 들어가는것이 좋으며, team쪽에 memberId가 있으면 team을 계속 insert해야하며, team이 중복이 되어 1이 아닌 N이 된다고 하셨는데 이 부분들이 이해하기가 어려웠습니다. 외래키가 "다"쪽에 있으면 좋은 이유들과 이 부분들의 이해가 부족할 때 어떤 것들을 공부하면 좋을것 같을지도 알려주시면 감사하겠습니다. 영한님의 좋은 강의 덕분에 처음 듣는 내용들인데도, 이해가 잘돼서 너무 좋네요. 좋은 강의 감사합니다