묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨실전! Querydsl
상속 구조 내에서 Querydsl로 특정 타입의 엔티티에만 조인
안녕하세요, 질문이 있어서 글 남기게 되었습니다.이런식으로 지점(branch)명에 맞는 공간(space)중 미팅룸 리스트를 보여주고해당 미팅룸의 해당 날짜의 예약들도 보여주는 기능을 구현하고자 @Override public List<Reservation> findReservationListByDateAndBranchName(LocalDateTime startDatetime, LocalDateTime endDateTime, String branchName) { return queryFactory .select(reservation) .from(reservation) .join(reservation.space, space).fetchJoin() .join(space.branch, branch) .where(branch.branchName.eq(branchName), reservation.reservationStartDateTime.between(startDatetime, endDateTime), space.dtype.eq("MeetingRoom") ) .fetch(); }이런 코드를 작성하였는데 아래와 같은 연관관계 때문에Reservation Entity@Getter @Entity @NoArgsConstructor(access = AccessLevel.PROTECTED) @Table(name = "reservation") public class Reservation extends BaseEntity { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "reservation_id") private Long reservationId; @Column(name = "reservation_start_date_time") private LocalDateTime reservationStartDateTime; @Column(name = "reservation_end_date_time") private LocalDateTime reservationEndDateTime; @OneToMany(mappedBy = "reservation") private List<MemberReservation> memberReservations = new ArrayList<>(); @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "space_id") private Space space; }Space Entity@Getter @Entity @NoArgsConstructor(access = AccessLevel.PROTECTED) @Inheritance(strategy = InheritanceType.JOINED) @Table(name = "space") @DiscriminatorColumn public abstract class Space { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "space_id") private Long spaceId; @NotNull @Column(name = "space_name") private String spaceName; @NotNull @Column(name = "space_floor") private int spaceFloor; @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "branch_id") private Branch branch; @OneToMany(mappedBy = "space") private List<Reservation> reservations = new ArrayList<>(); @NotNull @Column(name = "dtype", insertable = false, updatable = false) private String dtype; }Space를 상속받는 FocusDesk, MeetingRoom, RechargingRoom@Getter @Entity @NoArgsConstructor(access = AccessLevel.PROTECTED) @Table(name = "focus_desk") public class FocusDesk extends Space { //추후에 해당 엔티티에 맞는 필드들 추가 } @Getter @Entity @NoArgsConstructor(access = AccessLevel.PROTECTED) @Table(name = "meeting_room") public class MeetingRoom extends Space { @Column(name = "meeting_room_capacity") @Positive private int meetingRoomCapacity; } @Getter @Entity @NoArgsConstructor(access = AccessLevel.PROTECTED) @Table(name = "recharging_room") public class RechargingRoom extends Space { //추후에 해당 엔티티에 맞는 필드들 추가 } select r1_0.reservation_id, r1_0.created_date, r1_0.last_modified_date, r1_0.reservation_end_date_time, r1_0.reservation_start_date_time, s1_0.space_id, s1_0.dtype, s1_0.branch_id, s1_0.space_floor, s1_0.space_name, s1_2.meeting_room_capacity from reservation r1_0 join (space s1_0 left join focus_desk s1_1 on s1_0.space_id=s1_1.space_id left join meeting_room s1_2 on s1_0.space_id=s1_2.space_id left join recharging_room s1_3 on s1_0.space_id=s1_3.space_id) on s1_0.space_id=r1_0.space_id join branch b1_0 on b1_0.branch_id=s1_0.branch_id where b1_0.branch_name=? and r1_0.reservation_start_date_time between ? and ? and s1_0.dtype=?이런 쿼리가 나가게 됩니다.처음에는 dtype 없이 MeetingRoom 만 join 하고 싶었지만reservation.meetingRoom 이불가능하여(reservation은 space랑 매핑 되어있으니까)불가능하여 이방법 밖에는 떠오르지 않았습니다. 문제는 위의 쿼리처럼 쓸모없는 테이블들을 강제로 조인한 후에 다시 where절의 dtype으로 구분을 해야한다는 것입니다. @Query("SELECT new com.example.sabujak.reservation.dto.ReservationQueryDto(r.reservationStartDateTime, r.reservationEndDateTime, s.spaceId, s.spaceFloor, s.spaceName, m.meetingRoomCapacity) " + "FROM Reservation r " + "JOIN r.space s " + "JOIN MeetingRoom m ON m.spaceId = s.spaceId " + "JOIN s.branch b " + "WHERE b.branchName = :branchName " + "AND r.reservationStartDateTime BETWEEN :startDateTime AND :endDateTime")이런식의 jpql로는 해결이 가능하지만추후에 정렬조건을 동적으로 받아야 하기에 querydsl을 사용해서 최대한 좋은 방향으로 사용하고 싶은데어떻게 해야할지 잘 모르겠습니다
-
해결됨김영한의 실전 자바 - 중급 1편
섹션6 날짜와 시간 - 문제와 풀이2 질문.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. 섹션6 날짜와 시간 문제풀이2번째에서 막혀서 질문을 드립니다.현재 저의 코드 상태가그림으로 보시는 봐와 같이 이런 상태이고,지금 이 상태 에서, 월요일이 첫 시작 일 때(2024년 1월 1일기준),월요일에서 날짜를 넣는 방법을 모르겠더라고요. 이럴 때 에는 문제와 풀이2 해석을 보는게 나은지? 아니면 검색을 해서 라도 푸는게 나은지 알고 싶습니다.답변 부탁 드립니다.참조한 클래스는 TestLoopPlus, TestAdjusters 이 두개를 참조 했습니다.(클래스 이름 +import는 pdf에서 봄)
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
갑자기 개념이 혼동됩니다..ㅠ
@RestController JSON형식으로 응답본문에 나오는것도 알겠고 @RequesyBody은 요청본문은 자바객체로 매핑하는것도 알고있습니다.근데 @Controller로 진행하면서 모델에담고 return을 뷰로 전달하는 형식으로하다가 갑자기 REST API?형식으로 진행하게되서 뭔가 갑자기 햇갈려졌는데..이유를모르겠습니다
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
머신러닝 학습중에 결과값이 다르게 나옴+ROC_AUC스코어 오류
안녕하세요! 머신러닝 학습 중에 DT,RF,XGBOOST 모두 선생님이 하신 것과 동일하게 코드 작성하고 실행했는데 모두 결과값이 다르게 나와서요. 제가 무언가를 잘못 한 걸까요??이게 DT랑 RF는 결과값이 똑같이 나왔습니다.from sklearn.ensemble import RandomForestClassifier rf = RandomForestClassifier() rf.fit(X_tr[cols], y_tr) pred = rf.predict_proba(X_val[cols]) pred[:10]array([[1.], [1.], [1.], [1.], [1.], [1.], [1.], [1.], [1.], [1.]])이게 XGB입니다.from xgboost import XGBClassifier xgb = XGBClassifier() xgb.fit(X_tr[cols], y_tr) pred = xgb.predict_proba(X_val[cols]) pred[:10]array([[9.999634e-01, 3.657642e-05], [9.999634e-01, 3.657642e-05], [9.999634e-01, 3.657642e-05], [9.999634e-01, 3.657642e-05], [9.999634e-01, 3.657642e-05], [9.999634e-01, 3.657642e-05], [9.999634e-01, 3.657642e-05], [9.999634e-01, 3.657642e-05], [9.999634e-01, 3.657642e-05], [9.999634e-01, 3.657642e-05]], dtype=float32)그리고 이 예측데이터로 roc_auc 스코어를 뽑아내려고 하니 이런 오류가 뜨면서 안된다고 해서요. 무엇이 문제인지 궁금합니다ㅠㅠfrom sklearn.metrics import roc_auc_score roc_auc_score(y_val,pred[:,1])/usr/local/lib/python3.10/dist-packages/sklearn/metrics/_ranking.py in _binary_roc_auc_score(y_true, y_score, sample_weight, max_fpr) 337 """Binary roc auc score.""" 338 if len(np.unique(y_true)) != 2: --> 339 raise ValueError( 340 "Only one class present in y_true. ROC AUC score " 341 "is not defined in that case." ValueError: Only one class present in y_true. ROC AUC score is not defined in that case.
-
미해결CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조
세션스토리지
세션스토리지 설명 중 다음의 내용이 있습니다.오리진이 같은 브라우저 내에서 공유된다.그러나, 제가 테스트 해본 결과 세션 스토리지는 같은 오리진에서 데이터가 공유되지 않는 것으로 보입니다. 제가 오해한 부분이 있는건가요? 확인해주시면 감사하겠습니다.
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-P 연구소 solve()>fill() 함수에서 전역변수 vector<> v가 초기화 될 수 있나요?
제가 코드안되는 부분 찾다가 solve()>fill(visited) 함수에서 전역변수 vector<> v의 크기가 0으로 초기화 되는 문제를 겪었습니다https://www.acmicpc.net/source/78783272상세한 문제는 위 코드링크에 주석 달아놓았습니다무언가 잘못한 거같은데 모르겠네요// 개요 vector<pair<int, int>> v; int solve(){ // 여기서 visited 아니라 v가 초기화됨 fill(&visited,,) } int main(){ max(ret,solve()); }
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
실습 프로젝트 기판 질문
실습 프로젝트 영상을 보면 zybo z7-20로 진행한다고 하였습니다. 다른 기판으로도 수업 그대로 따라가는거 가능할지요?
-
미해결스프링 DB 2편 - 데이터 접근 활용 기술
적용2 테스트시 ItemMapper의 Bean을 찾지 못하는 문제.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 본 강좌 커뮤니티의 다른 분들 해결사례처럼 build.gradle의 mybatis 부트스타터 버전을 2.3.2로다운 그레이드하여 당장의 오류는 해결했습니다.근데 왜 이런 오류가 터진건지 원인에 대한 궁금증은 남네요.스프링부트3 이후로 어떤 이유로 더이상 동적 프록시 객체 생성을 해주지 않는건지, 아니면 아직 mybatis-스프링 연동 모듈의 업데이트가 늦어진게 이유인건지, 궁금합니다.@Mapper조회가 잘되지 않은건지 하여, MyBatisConfig에 @MapperScan("hello.itemservice.repository.mybatis") 어노테이션까지 넣어봤는데도 잘 안되었습니다.
-
미해결김영한의 실전 자바 - 중급 2편
LinkedHashSet 구조에 관해 질문이 있습니다
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]LinkedHashSet은 HashSet과 같은데 Node를 추가해서 입력 순서를 유지한다 들었습니다.그럼 만약에 HashIndex가 같은 경우(해시 충돌) Node도 HashSet과 같이 List 형식으로 저장이 되는게 맞을까요?
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
mongoDB 데이터 확인하는 법
강사님께서 mongoDB Clusters 카테고리 들어가면 데이터 확인하실 수 있는데, 저는 따로 뜨는게 없고 이런 화면이 나오네요. 어디서 볼 수 있나요?
-
미해결홍정모의 따라하며 배우는 C++
[10:25] AutoPtr 포인터의 메모리 위치 질문
AutoPtr을 사용 시, 함수?가 끝나게 되면 자동으로 delete를 해주는 것은 이해했습니다. 그렇다면 res1이라는 포인터는 스택 메모리에 저장이 되어 있다고 생각하면 될까요?
-
해결됨TensorFlow 2.0으로 배우는 딥러닝 입문
colab에서 구동 가능한 char-rnn 코드 관련 질문
안녕하세요. 강사님다른 분의 질문에서 확인 colab향 char-rnn 코드를 보다가 질문 사항이 생겼습니다. colab향 코드와 강의에서 설명한 python 코드의 차이를 보면 app.run과 같은 absl 라이브러리 관련 코드가 colab향 코드에는 없는데, 이게 colab에서는 absl 라이브러리를 import 할 수 없기 때문이지 궁금합니다. 신기한게 강의에서는 구글에서 absl 라이브러리를 만든 것으로 제가 들은 것 같은데, 정작 google의 colab 환경에서는 해당 라이브러리를 사용할 수 없다는 사실이 신기 합니다. P.S 혹시 colab 환경에서 실행 가능한 char-rnn 코드 URL주소https://colab.research.google.com/drive/1Lr-tdAWh6sJdmAcOCmimHOIaK54idw-t?usp=sharing
-
미해결Next + React Query로 SNS 서비스 만들기
로그인후 replace가 안되는 이유?
지금 로그인 후 핸들러에서 값을 잘 주는것을 확인했고auth.ts의콘솔 부분에 값이 잘 나오는것을 확인했습니다여기서 result에서도 성공했다고 나오는데 replace가 안되네요이유가 뭘까요
-
미해결재고시스템으로 알아보는 동시성이슈 해결방법
Pessimitic Lock 과 Optimitic Lock 질문
안녕하세요, 강의를 듣다가 몇가지 질문이 생겼습니다.1. Pessimitic Lock와 Optimitic Lock 는 select 구문(@Query("select ...) 나 find 쿼리메서드)에서만 @Lock을 적용하는거라고 이해하면 될까요?2. Pessimitic Lock 과 Optimitic Lock 의 벌크 수정 쿼리는 어떻게 처리가 되는건가요? 2-1. Pessimitic Lock 은 select 절로 데이터를 가져오지 않는다면 어떻게 벌크 수정이 되는건가요?2-2. Optimitic Lock 은 벌크 연산에서 직접 버전을 수정하는게 맞을까요?좋은 강의 감사합니다.
-
미해결[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
NestJS, 섹션35. 모듈 네스팅. Paginate Comments API 만들기 강의 잘림
안녕하세요.강의: NestJS REST API 백엔드 완전 정복섹션: 35 모듈 네스팅동영상: Paginate Comments API 만들기위에 적은 강의 동영상의 끝부분이, 의도치 않게 잘린 것 같습니다. 마지막인 5:56 시간에서, 말씀하는 도중에 강의가 끝나버립니다. 확인해 주시면 감사하겠습니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
다운로드
자바중급편끝내고 스프링 다운 받으려고 하는데주의 사항보고 다운받고있는데 다운받기전에 패키지 이름 바꿔야한다는 소리인가요?? 혹시 주의 사항 더 알려주실만한게 있나요 ?환경구축하는게 어렵네요 ㅠ
-
미해결[자동화 완전 정복] 인스타그램 휴대폰, 웹 자동화 프로그램 개발
weditor에서
위디터에서 인스타그램 앱화면 스크린샷찍었을때요.다른곳들은 정상적으로 네모칸들이 쳐져있는데요.하단 홈이나 검색창등등이 분할이 안되어있고 1가지로 통째로 통합되어있습니다. 이것을 어떻게해야할까요?추가로 방금 다시 실행해보는데..Unsupported deviceId: Android:06157df6f3285a38 [Finished 0s]어느정도됬었는데 이제 이게 발생합니다 빠른답변좀 부탁드려요..강의가 예전꺼라 뭐하나 해결하려하면 사소한것이나 바뀐부분에서 너무많은시간을 소요합니다 ㅜㅜ
-
미해결[초중급편] 안드로이드 데이팅 앱 만들기(Android Kotlin)
섹션 1 CardStackView의 Implement members 질문있습니다.
7:16Implement members를 하려고 하는데 어떻게 해야되나요? 여담으로 아직 섹션 1 끝내지도 않았는데 옛날 버전이라 그런지 진도 나가기가 너무 힘들어요... 강의 최신 버전으로 업데이트는 안되나요? 프로젝트 생성부터 Gradle 추가까지 지금 7분밖에 못 들었는데 두시간을 넘게 찾고있는거 같습니다.
-
미해결실전! Querydsl
QueryDsl의 ON절에 대해 질문드립니다.
SQL의 ON절과 QueryDsl의 ON절 간에 차이가 있어보여 질문드립니다. SQL의 ON절에서는 테이블과 테이블 간에 어떤 컬럼을 기준으로 조인될 것인가를 명시하는 기능을 하는데 비해, QueryDsl에서는 join메서드가 그 기능을 포함하고 on메서드가 마치 sql의 where절의 역할을 하는 것(그렇기 때문에 QueryDsl에서는 SQL과 달리 on 메서드와 where 메서드를 함께 사용할 수 없음)으로 보이는데 맞을까요?
-
미해결대세는 쿠버네티스 (초급~중급편)
베이그런트 설치후 Xshell로 cat join.sh 할때입니다
k8s-master와 node2 까지는 join.sh가 잘됩니다만node1은 -bash: kubeadm: command not found 라고나오면서 마스터 서버에 조인이 불가능합니다 Xshell에서 node1을 지우고 새로 생성해봐도 똑같이 뜨는데 아무래도 커버네티스가 Node1에서 제대로 설치가 안된것같은데Vagrant 파일안에 있는 명령문들로 개별적으로 설치중이긴한데상관없을까요?