묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
BatchSize 조회 관련건
안녕하세요. 먼저 항상 좋은 강의 감사드립니다.realworld라는 프로젝트를 JPA로 구현하는 도중에 궁금한 점이 생겨서 질문 드립니다.@OneToMany List<ArticleTagEntity> articleTagsArticleEntity는 위의 ArticleTagEntity를 갖고 있습니다. (Lazy 설정 되어있습니다.) 저는 application.yml에 default_batch_fetch_size를 500으로 설정해놓고... ArticleEntity 조회 로직 ... List<ArticleTagEntity> articleTagList = articleEntity.getArticleTags(); articleTagList.forEach(articleTag -> ....);다음 부분에서 WHERE IN 절 쿼리가 나가는데요, ArticleEntity 조회 로직에서 조회된 ArticleEntity의 개수는 총 12개입니다. 그렇다면 batch_size를 500으로 설정해놨으니 WHERE IN 절에서 article_id가 12개가 모두 바인딩되서 나가는 것을 기대했는데 실제로는 그렇지 않고 10개 나간뒤 반복문을 돌다가 2개가 다시 나가는 쿼리가 발생했습니다.Hibernate: select articletag0_.article_id as article_4_1_1_, articletag0_.uid as uid1_1_1_, articletag0_.uid as uid1_1_0_, articletag0_.created_at as created_2_1_0_, articletag0_.updated_at as updated_3_1_0_, articletag0_.article_id as article_4_1_0_, articletag0_.tag_id as tag_id5_1_0_ from article_tag articletag0_ where articletag0_.article_id in ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) .... .... ... for문을 쭉 돌다가... Hibernate: select articletag0_.article_id as article_4_1_1_, articletag0_.uid as uid1_1_1_, articletag0_.uid as uid1_1_0_, articletag0_.created_at as created_2_1_0_, articletag0_.updated_at as updated_3_1_0_, articletag0_.article_id as article_4_1_0_, articletag0_.tag_id as tag_id5_1_0_ from article_tag articletag0_ where articletag0_.article_id in ( ?, ? )구글링을 해보니 batch_size를 큰 값으로 설정했어도 반드시 그 사이즈로 WHERE IN절에 데이터가 바인딩 되는 것이 아니라 하이버네이트 내부적으로 조정할 수도 있다고 하는데 해당 말이 맞는건지, 제가 무언가를 잘못한건지 궁금합니다. TRACE 로그를 확인해봤는데 ArticleEntity 조회 로직에서2022-09-17 22:38:32.511 TRACE 8458 --- [ Test worker] org.hibernate.type.CollectionType : Created collection wrapper: [springboot.domain.entity.ArticleEntity.articleTagEntities#88] .......................................... .......................................... 2022-09-17 22:38:32.515 TRACE 8458 --- [ Test worker] org.hibernate.type.CollectionType : Created collection wrapper: [springboot.domain.entity.ArticleEntity.articleTagEntities#1]이러한 로그가 총 12개 찍혔는걸로 봐서는 조회 시점에 프록시 객체는 모두 정상적으로 만들어 진 것으로 보입니다. 이전 질문을 찾아보니 요분과 테이블 구조는 거의 같다고 보시면 될 것 같습니다. (https://www.inflearn.com/questions/591443) 감사합니다.
-
미해결Slack 클론 코딩[백엔드 with NestJS + TypeORM]
typeorm createQueryBuilder Boolean type 관련
안녕하십니까. 강의 정말 잘 듣고 있습니다.다름이 아니라 강사님의 강의를 듣고 연습을 하고 있습니다.maria db를 사용하고 있으며nestjs에서 entity에 @Column type은 bool로 선언했고 해당 db 컬럼도 tinyint(1)로 선언했습니다.하지만 createQueryBuilder로 select해보니 False는 0 True는 1이 나오던데 혹시 true 또는 False로 나오는 방법이 따로 있을까요?
-
미해결실전! 코틀린과 스프링 부트로 도서관리 애플리케이션 개발하기 (Java 프로젝트 리팩토링)
안녕하세요! 질문드립니다!
자바 개발도 하였지만 부끄럽게도 stream 과 lambda 는 등한시 하여 잘 사용을 못했네요..후회막심하네요..다름아니라, 코틀린에서는 stream 을 잘 사용을 안하나요?stream 을 대체할 수 있는 문법이 있어서 일까요?실무에서는 stream 과 lambda 를 대부분 사용할까요?9:43 초 returnBook 을 코틀린으로 변경할때 갑자기 드는 의문이였습니다.(제가 아무것도 모르는 상태였으면 코틀린에서 stream().filter 식으로 구성하였을것같은..!!)
-
미해결냉동코더의 알기 쉬운 Modern Android Development 입문
progressScaled 질문
app:progressScaled는 자동완성이 안되는데 어떻게 이게;; 오류가안나고 작성이 되는건가요..!!?또, 전체적인 소스 즉 MyViewModelFactory 어노테이션이나 코드가 잘 이해가 안되는 부분들이 종종있는데, 강의를 들으면서 실습 코드를 완벽 숙지하고 다음 강의로 넘어가야하나요?
-
미해결[NarP Series] MVC 프레임워크는 내 손에 [나프1탄]
member.sql 질문
강사님db를 연결하고 sql문을 작성해서 테스트 해볼려고하니select * from member; << 이것만 작성하면select * from memberNo database selectedElapsed Time: 0 hr, 0 min, 0 sec, 0 ms.라는 오류가 뜹니다 mysql 버전을 8. 대를 쓰고있는데connection profile >> type에서 MySql_5.1 을 사용해서 그런가요 ???
-
미해결[리뉴얼] 처음하는 파이썬 백엔드와 웹기술 입문 (파이썬 중급, flask[플라스크] 로 이해하는 백엔드 및 웹기술 기본) [풀스택 Part1-1]
04_flask_ABTest 404에러, 500에러
안녕하세요! 유익한 강의 열심히 수강하고 있는 수강생입니다.실전 블로그 풀스택으로 구현하기: flask 로그인 기능과 라이브러리에서 04_flask_ABTest 폴더를 blog_abtest.py 파일을 통해서 서버를 띄우는 과정에서 http://127.0.0.1:8080/blog/blog1 주소로 접속하려고 하니, 처음에는 404에러가 뜨다가 나중에는raise ServerSelectionTimeoutError(pymongo.errors.ServerSelectionTimeoutError: localhost:27017: [Errno 61] Connection refused, Timeout: 30s, Topology Description: <TopologyDescription id: 632764f602f64f58bd63bf5c, topology_type: Unknown, servers: [<ServerDescription ('localhost', 27017) server_type: Unknown, rtt: None, error=AutoReconnect('localhost:27017: [Errno 61] Connection refused')>]>127.0.0.1 - - [19/Sep/2022 03:36:04] "GET /blog/blog1 HTTP/1.1" 500 -이와 같은 500에러가 발생하는 것을 확인했습니다.http://127.0.0.1:8080/blog/auth -> 해당 주소는 접속이 문제 없이 잘 되는 것을 확인할 수 있습니다.선생님께서 올려주신 flask_ABTest 폴더를 그대로 실행해봐도 다음과 같은 에러가 발생하는데, 혹시 해결할 수 있는 방법이 있을까요?감사드립니다.
-
미해결MERN STACK 커뮤니티 : 시작부터 배포까지 알려주는 React
에러가 뜨는데 이유를 모르겠습니다..
강의 해주신 그대로 하고있는데 갑자기 이런 에러가 뜹니다ㅠㅠ지금 회원가입쪽이 문제인거 같은데..회원가입하면 로그인화면으로 가게 설정해놨는데 메인으로 가버리고 몽고디비랑 파이어베이스에 데이터는 들어오는데 로그인하면 504에러가 뜹니다ㅜㅜ그전까지는 잘되다가 몽고디비 데이터 한번 지우라고 하셔서 counter까지 실수로 다 지웠다가 다시 만들었는데 그 이후로 안되는데 혹시 연관있을까요..??
-
미해결설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
Vitis launch문제
안녕하세요. 영상보면서 VITIS 2020.2 까지 설치를 완료하였습니다. 그런데 Vitis Project open 시 계속 아래 첨부된 화면에만 머물러 있고 더 이상 진행이 안됩니다. Vitis를 삭제 후 다시 깔아도 같은 현상인데.. 도움 부탁드리겠습니다
-
미해결실전! Querydsl
No default constructor found;
안녕하세요!김영한 강사님의 강의를 들으며 제 프로젝트에 맞춰서 강사님 코드를 클론 코딩해서 공부를 하던 중 하단과 같은 오류가 떠서 문의드립니다. Error creating bean with name 'likeApiController' defined in file [/Users/gimnayeon/Desktop/GreenProject/GrinGreen/out/production/classes/com/grin/GrinGreen/api/LikeApiController.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'likeService' defined in file [/Users/gimnayeon/Desktop/GreenProject/GrinGreen/out/production/classes/com/grin/GrinGreen/service/LikeService.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'businessRepository' defined in file [/Users/gimnayeon/Desktop/GreenProject/GrinGreen/out/production/classes/com/grin/GrinGreen/repository/BusinessRepository.class]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.grin.GrinGreen.repository.BusinessRepository]: No default constructor found; nested exception is java.lang.NoSuchMethodException: com.grin.GrinGreen.repository.BusinessRepository.<init>() 오류 그대로 기본 생성자가 없다는 거 같은데 제가 아직 부족해서 그런지 아무리 찾아봐도 어디서 문제인지 모르겠어서요.. 도움 부탁드립니다.. 저는 멤버 가입 후 그 멤버로 업체를 만들어서 업체 목록을 조회를 하려고 했습니다!BusinessSearchCondition@Data public class BusinessSearchCondition { private String businessName; }BusinessDto@Data public class BusinessDto { private Long business_id; private String businessName; @QueryProjection public BusinessDto(Long business_id, String businessName) { this.business_id = business_id; this.businessName = businessName; } }InitBusiness@Profile("local") @Component @RequiredArgsConstructor public class InitBusiness { private final InitBusinessService initBusinessService; @PostConstruct public void init() { initBusinessService.init(); } @Component static class InitBusinessService { @PersistenceContext EntityManager em; private final MemberService memberService; private final BusinessService businessService; InitBusinessService(MemberService memberService, BusinessService businessService) { this.memberService = memberService; this.businessService = businessService; } @Transactional public void init() { Member member = new Member(); member.setNickname("test"); member.setMail("test@test.com"); member.setPassword("test1234!"); member.setMember_type("B"); member.setMember_status("J"); member.setHint_password("hint_01"); member.setAnswer_password("answer"); member.setUpdated_at(now()); member.setCreated_at(now()); String memberJoin = memberService.join(member); for (int i = 0; i < 100; i++) { Business business = new Business(); business.setBusinessName("테스트밥집"+i); business.setHomepage("test" + i + ".com"); business.setPhone("010-1234-5678"); business.setAddress("제주특별자치도 제주시 첨단로 242"); business.setLng((float) 33.450701); business.setLat((float) 126.570667); business.setCreated_at(now()); business.setUpdated_at(now()); business.setMember(member); String businessJoin = businessService.join(business); } } } }MemberService@Transactional public String join(Member member){ //비밀번호 암호화 후 레포지토리에 넘기기 String encodedPassword = passwordEncoder.encode(member.getPassword()); member.setPassword(encodedPassword); validateDuplicateMember(member);//중복회원검증 memberRepository.save(member); return member.getMail(); }BusinessService/** 업체생성 **/ @Transactional public String join(Business business){ validateDuplicateBusiness(business);//중복회원검증 log.info("business {}", business); businessRepository.save(business); return business.getBusinessName(); }BusinessRepository@Repository @RequiredArgsConstructor public class BusinessRepository { private final EntityManager em; private final JPAQueryFactory queryFactory; public BusinessRepository(EntityManager em) { this.em = em; this.queryFactory = new JPAQueryFactory(em); } public List<BusinessDto> search(BusinessSearchCondition condition){ return queryFactory .select(new QBusinessDto( business.id, business.businessName)) .from(business) .where(businessNameEq(condition.getBusinessName())) .fetch(); } private BooleanExpression businessNameEq(String businessName) { return isEmpty(businessName) ? null : business.businessName.eq(businessName); } }
-
미해결홍정모의 따라하며 배우는 C언어
21분
소수점 이하 자리를 계산하려면 won이나 dollar의 자료형도 float을 사용해야 한다고 하셨는데 won과 같은경우에는 굳이 float 을 사용해야하나요?? 그냥 int 사용해도 같은 값이 나오는데 왜그런가요?
-
미해결웹 게임을 만들며 배우는 React
렌더링 차이
안녕하세요.늘 재밌고 쉽게 배우고 있는데 궁금한 것이 생겨질문 납깁니다. 아래처럼 Ball 컴포넌트를 렌더링 할 때<div> {winBalls.map((v) => <Ball key={v} number={v} />)} </div> {winBalls.map((v) => <Ball key={v} number={v} />)}위와 같이 결과가 나오는데요.div로 감싸지 않았을 때 재렌더링 되는 이유가 있나요?어떤 이유로 재렌더링 되는지 궁급합니다.감사합니다.
-
미해결실전! 스프링 데이터 JPA
@EntityGraph는 ToMany에는 사실상 사용불가?
질문글에 저랑 비슷한 고민글들을 많이 봤는데요.그 질문글들을 보고 질문남겨봅니다.@EnitityGraph는 중복된 데이터들을 Distinct할 수 없으니,ToMany 에는 사실상 사용불가하고.ToOne 에만 사용가능하다고 생각하는게 맞나요?ToMany는 BatchSize를 이용한 최적화가 제일 낫다고 앞선 강의에서 그러셨긴 한데, 쓰는 상황을 가정하고 질문해봅니다.사용가능한지 안한지. 가능성의 문제차원에서 궁금합니다.
-
해결됨스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
강의 소스 코드 다운로드 하면 되는거 아닌가요?
제가 이전 기초 강의를 안들어서 이번에 처음 InteliJ IDEA 프로그램을 다운로드 받았습니다. 1. JVM 및 Android 개발용 무료다운로드해서 받았는데 이거 사용해도 되는건가요?강의 소스 코드에 다운로드해서 사용하는 것 아닌가요..build.gradle 저는 아무리 찾아봐도 보이지 않습니다. 혹시 몰라서 이메일 주소 남김니다. tpgus8120@naver.com
-
미해결앨런 iOS 앱 개발 (15개의 앱을 만들면서 근본원리부터 배우는 UIKit) - MVVM까지
(기초-5) 업다운 앱 만들기 오류 질문입니다.
제목의 강의 5:20초 부분의 코드를 따라 친 후 컴파일을 해보니 아래와 같은 오류가 납니다.Thread 1: "-[UpDownGame.ViewController BtnTapped:]: unrecognized selector sent to instance 0x152e06270"(AppDelegate 의 @main 에서 오류메시지가 발생합니다.) @IBAction func btnTapped(_ sender: UIButton) { //1) 버튼의 숫자를 가져와야함 guard let numString = sender.currentTitle else {return} //2) 숫자레이블이 변하도록(숫자에 따라) 만들어야함 numberLabel.text = numString //3) 선택한 숫자를 변수에다가 저장(선택) }오류가 발생된다고 생각되는? 부분인데 numString에 String이 들어가있는것 확인하였습니다.컴파일을 하면 실행은 정상적으로 되는데 1~10 까지의 button을 누르면 위의 오류가 나옵니다.어떤 문제인지 궁금합니다.
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
혹시 강의에서 Next Image를 안쓰는 이유가 있을까요 ??
혹시 강의에서 Next Image를 안쓰는 이유가 있을까요 ??
-
미해결[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
크롤링 하는데 자꾸 오류가 떠요
import requestsfrom bs4 import BeautifulSoupres = requests.get("https://n.news.naver.com/mnews/article/215/0001054638?sid=101")soup = BeautifulSoup(res.content, "html.parser")mydata = soup.find("h2", "media_end_head_headline")mydata.get_text()코드는 영상에 나온 그대로 따라 했는데 자꾸 오류가 떠요. 오류는 'NoneType' object has no attribute 'get_text' 이렇게 뜨는데 오류가 왜 뜨는건가요??
-
미해결스파크 머신러닝 완벽 가이드 - Part 1
크기가 큰 파일 업로드
5gb 정도 되는 파일을 DBFS에 업로드를 하려고하는데, 파일이 크다는 이유로 에러가 나면서 올라가질 않습니다..혹시 다른 해결방법이나, 해결하기 위하여 검색할 수 있는 키워드가 있을까요??
-
미해결디지털 포렌식 전문가 2급 실기 과정
강의 자료 다운로드
강의 자료는 어디서 다운로드 하나요?
-
미해결[신규 개정판] 이것이 진짜 크롤링이다 - 기본편
책 출판이 되었나요?
책 출판이 되었나요?
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
char 배열 질문있습니다!
우선 선생님의 너무 질 좋은 강의에 시간 가는 줄 모르고 재밌게 배우고 있어서 감사말씀 드리고 싶습니다!배열이름이 해당 배열의 첫번째 인덱스의 주소값이라면 char 배열도 주소값이 나와야 하는게 아닌가요? 왜 int와 다르게 주소값이 아닌 그 주소 안에 있는 Data가 나오는건지 궁금합니다