inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

172만명의 커뮤니티!! 함께 토론해봐요.

Escape Sequence에서 Tap 결과값에 대해 질문드려요

미해결

나도코딩의 자바 기본편 - 풀코스 (20시간)

강의 영상에서는 \t 한번으로 숫자가 정렬된 것을 볼 수 있었습니다. 하지만 제가 작성하였을때는 정렬이 되지 않습니다. 물론 \t을 2번 진행하게 되면 정상적으로 정렬이 되는 것을 볼 수 있습니다. 강사님 처럼 \t 한번으로 정렬하기 위해서는 어떻게 해야하나요?

  • 객체지향
  • java
  • oop
lunaris0206 댓글 1 좋아요 1 조회수 519

weather observation 6 문제 질문입니다..!

미해결

[백문이불여일타] 데이터 분석을 위한 기초 SQL

WHERE city LIKE 'a%' OR 'e%' OR 'i%' OR 'o%' OR 'u%' 로 작성하는 것은 잘못된 작성법인가요?

  • sql
이지은 댓글 1 좋아요 1 조회수 419

스프링 데이터 jpa delete 최적화

해결됨

실전! 스프링 데이터 JPA

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] 강사님 강의 정말 잘 보고 있다가 의문점이 생겨 이렇게 질문 남깁니다. 일단 간단하게 예시를 만들면 양방향 관계로 묶인 Member와 Team이 있을때 Team을 삭제할때 해당 Team에 있던 Member도 전부 삭제를 원하는 상황입니다. 데이터는 Team 2개 Team 하나당 3개의 Member씩이 있는 상태입니다. Member.java package com.example.demo.entity; import lombok.*; import javax.persistence.*; @Entity @Table(name = "member") @Getter @Setter @Builder @NoArgsConstructor @AllArgsConstructor public class Member { @Id @Column(name = "member_id") @GeneratedValue(strategy = GenerationType.IDENTITY) private Long memberId; @Column(name = "member_name") private String name; @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "team") private Team team; public Member(String name, Team team) { this.name = name; this.team = team; } } Team.java package com.example.demo.entity; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; import javax.persistence.*; import java.util.ArrayList; import java.util.List; @Entity @Getter @Setter @AllArgsConstructor @NoArgsConstructor @Table(name = "team") public class Team { @Id @Column(name = "team_id") @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @OneToMany(mappedBy = "team", cascade = CascadeType.ALL, orphanRemoval = true) List<Member> members = new ArrayList<>(); } controller.java package com.example.demo.entity.controller; import com.example.demo.entity.repository.TeamRepository; import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.DeleteMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @RestController @RequiredArgsConstructor public class Controller { private final TeamRepository teamRepository; @DeleteMapping("/") public void deleteTeam(@RequestParam Long id) { teamRepository.deleteById(id); //deleteById는 JpaRepository에서 제공하는 기본 } } 위의 코드를 실행하고 delete요청을 했을때 Hibernate: select team0_.team_id as team_id1_1_0_ from team team0_ where team0_.team_id=? Hibernate: select members0_.team as team3_0_0_, members0_.member_id as member_i1_0_0_, members0_.member_id as member_i1_0_1_, members0_.member_name as member_n2_0_1_, members0_.team as team3_0_1_ from member members0_ where members0_.team=? Hibernate: delete from member where member_id=? Hibernate: delete from member where member_id=? Hibernate: delete from member where member_id=? Hibernate: delete from team where team_id=? 이렇게 나오고 Team의 members의 fetch type을 eager로 바꾸었을때는 select team0_.team_id as team_id1_1_0_, members1_.team as team3_0_1_, members1_.member_id as member_i1_0_1_, members1_.member_id as member_i1_0_2_, members1_.member_name as member_n2_0_2_, members1_.team as team3_0_2_ from team team0_ left outer join member members1_ on team0_.team_id=members1_.team where team0_.team_id=? Hibernate: delete from member where member_id=? Hibernate: delete from member where member_id=? Hibernate: delete from member where member_id=? Hibernate: delete from team where team_id=? 이러한 쿼리가 발생하는것을 볼 수 있습니다. 여기서 제가 든 궁금점은 (편의상 맨 위의 쿼리를 1번쿼리라 하겠습니다) 지연로딩을 할때 Team의 Member는 프록시이므로 member select 하긴 할텐데 select members0_.team as team3_0_0_, members0_.member_id as member_i1_0_0_, members0_.member_id as member_i1_0_1_, members0_.member_name as member_n2_0_1_, members0_.team as team3_0_1_ 이 쿼리(2번 쿼리)가 어떻게 나오게 된건지 이해가 되질 않습니다. 최대한 쿼리를 최적화 해보려 했지만 지연로딩을 할때 fetch join, entity graph등을 사용할 수 없어 1번과 2번 쿼리를 즉시로딩을 사용할때 처럼 최적화 할 수가 없었고 delete문도 멤버를 한번에 delete, 그다음 team delete 이렇게 두번으로 최적화 하고 싶었는데 방법이 떠오르질 않습니다. 정확하게 알려주시기 번거로우시면 키워드나 따로 어떻게 공부하면 해결 할 수 있을지 알려주시면 정말 감사드리겠습니다.

  • spring
  • spring-boot
  • JPA
  • spring-boot
  • jpa
  • java
말차 댓글 1 좋아요 0 조회수 1664

h2 연결

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예 [질문 내용] h2로 웹사이트 들어가려는데 오류가 떠요 ㅠㅠ 왜이런거죠?

  • MVC
  • spring
  • mvc
  • spring-boot
  • java
댓글 1 좋아요 0 조회수 1001

MemberRepositoryTest

해결됨

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 엔티티 클래스 개발 1 강의에서 1:10분 쯤 Member, MemberRepository 를 삭제 후 회원 레포지토리 개발 강의에서 MemberRepository 를 새로 개발하셨습니다. 이때 MemberRepositoryTest 에는 그 전에 작성한 MemberRepository 기준으로 되어 있어 리턴 값이나 필드 값이 (UserName > name) 맞지 않아 오류가 발생하고 있습니다. 그런데, 강사님은 MemberRepository 를 새로 작성할 때 오류가 뜨지 않고 관련해서 언급을 하신 것이 없는 것(돌려봤는데 찾지 못한 것일 수도 있습니다.)으로 간주되는데 MemberRepositoryTest 를 어떻게 처리하신 것인지 궁금합니다.

  • java
  • 웹앱
  • 웹앱
  • spring-boot
  • jpa
  • JPA
  • spring
직선 댓글 1 좋아요 0 조회수 350

상품 폼 에러

미해결

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] https://drive.google.com/file/d/1nMMxLmSaPSEIpUd17iJ9VjbdbC_Elybx/view?usp=sharing null point Exception이 일어나는데 어디서 문제가 있는지 도저히 못 찾겠습니다.. jap로 올렸습니다ㅜ

  • JPA
  • 웹앱
  • 웹앱
  • spring
  • jpa
  • java
  • spring-boot
ak4686 댓글 1 좋아요 1 조회수 444

해커랭크 Top Earners 질문!

미해결

[백문이불여일타] 데이터 분석을 위한 고급 SQL

안녕하세요! 해커랭크 Top Earners 문제에 관해 질문드리겠습니다. where 절에 서브쿼리를 사용할 때, select salary*months as earnings, count(*) from employee where salary*months = (select max(salary*months) from employee) 위의 코드를 작성했을때 group by 없이는 집계함수를 사용할 수 없다는 오류가 뜨는데, select count(*) from employee where salary*months = (select max(salary*months) from employee) select 에 count만 출력했을 때는 문제 없이 코드가 실행됩니다! count 단독으로 출력할 때는 전체 갯수만 파악하지만 salary*months 까지 같이 출력할 때는 해당 salary*months에 맞게 count를 해야해서 집계함수를 사용해야 하는 걸까요? 어짜피 max값만 가져와서 출력하는데도 group by를 꼭 사용해야 하는걸까요?

  • sql
김주현 댓글 1 좋아요 0 조회수 319

Triangle 질문드려요

미해결

[백문이불여일타] 데이터 분석을 위한 중급 SQL

SELECT CASE WHEN A = B AND B = C THEN 'Equilateral' WHEN A + B <= C OR A + C <= B OR B + C <= A THEN 'Not A Triangle' WHEN A = B OR B = C OR A = C THEN 'Isosceles' ELSE 'Scalene' END FROM Triangles CASE문이 저렇게 Answer에 같이 떠서 안되는거같은데 어떻게 해야할까요?

  • sql
dddk11 댓글 1 좋아요 0 조회수 263

안녕하세요 유틸클래스 질문있습니다

해결됨

호돌맨의 요절복통 개발쇼 (SpringBoot, Vue.JS, AWS)

보통 암호화하는 클래스들을 static 유틸클래스들로 만들었었는데 이런 static유틸클래스와 @Component를 달아서 사용하는 유틸클래스는 어떤 차이를 만들어낼수있는건가요..? 제가 생각했을땐 유틸클래스를 스프링 빈으로 관리하겠다는 생각만 떠오르는데.. 이해할수있을만한 예시가있을까요..? 제가 못찾는건지 마땅히 그럴싸한 자료를 못봤던것같아서요 ㅠ 강의도중 @Component얘기가 잠깐나와서 생각이나서 질문드려봅니다...

  • java
  • JPA
  • util
  • spring-boot
  • aws
  • vuejs
  • Spring Security
댓글 2 좋아요 2 조회수 1208

엔터티 설게시 주의점 setter 리팩토링

미해결

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

안녕하세요! 영한님 강의 질 좋은 강의 너무 감사하게 보고 배우고 있습니다! 다름이 아니라, 엔터티 설계시 주의점 강의에서 setter를 사용하지 않기위해서 엔터티 설정을 아래와 같이 코드 수정을 해보았는데 이렇게 하는 게 더 안전한 방법인가요?? 실무에서도 이렇게 사용하는지 매우 궁금합니다..! Order 엔터티 public class Order{ ... public void addOrderItem(OrderItem orderItem){ orderItems.add(orderItem); // orderItem.setOrder(this); OrderItem.builder() .order(this) .build(); } public void setDelivery(Delivery delivery){ this.delivery = delivery; // delivery.setOrder(this); Delivery.builder() .order(this) .build(); } } OrderItem 엔터티 ... @NoArgsConstructor public class OrderItem { ... @Builder public OrderItem(Order order){ this.order = order; } }

  • spring-boot
  • spring
  • 웹앱
  • JPA
  • jpa
  • 웹앱
  • java
윤수정 댓글 1 좋아요 2 조회수 584

3.0 querydsl

미해결

실전! Querydsl

선생님이 올린 3.0 + querydsl로 다시 gradle했는데 Gradel -> other -> complieQuerydsl이 없는데 상관없는건가요?

  • JPA
  • jpa
  • java
kim1234123 댓글 2 좋아요 0 조회수 1291

@JoinColumn(name="parent_id")

미해결

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] @JoinColumn(name="parent_id") 의 parent_id 는 어디서의 column을 의미하는건가요?? @Column(name="parent_id") 부분이 없는거 같은데 어디서 parent_id의 컬럼이 만들어져서 이것과 join을 하는건지 궁금합니다.

  • JPA
  • java
  • 웹앱
  • spring-boot
  • 웹앱
  • jpa
  • spring
ak4686 댓글 2 좋아요 1 조회수 767

Member 객체 질문입니다.

해결됨

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요 Member 객체에 대하여 질문 있습니다. 테스트 코드의 경우 Member member = new Member(); 이런식으로 Member 인스턴스를 생성해서 member.setName("spring"); 이런식으로 쓰이는건 이해가 되는데요 Member 클래스 에서나 MemoryMemberRepository 에서나 따로 member라는 참조변수로 Member()라는 인스턴스(Member member = new Member();와 같은것들)를 생성하지 않았는데 바로 아랫줄에서 member.setId(++sequence);가 쓰일수 있는건지 궁금합니다.

  • spring
  • mvc
  • spring-boot
  • MVC
  • java
gago86 댓글 1 좋아요 0 조회수 458

주문취소 order.cancel 호출 시 배송부분 검증 로직 때 연관관계가 Lazy라 delivery는 null 아닌가요?

해결됨

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

안녕하세요 강의 잘듣고있습니다. 주문서비스에서 cancel이 발생하면 위 Order 엔티티에서 delivery 객체 배송상태 검증 부분이 있는데 Order 와 Delivery 연관관계 매핑시 FetchType.LAZY로 설정되어있으니 잘못검증되는건 아닌가요? jpql로 fetch join으로 가져와야 하는 케이스아닌가해서요

  • JPA
  • spring
  • 웹앱
  • java
  • spring-boot
  • jpa
  • 웹앱
김태훈 댓글 2 좋아요 2 조회수 493

윈도우 함수를 이용해서 풀고 싶어서 써봤습니다. 더 간단하게 줄일 수 있을까요?

해결됨

[백문이불여일타] 데이터 분석을 위한 고급 SQL 문제풀이

Select Distinct s.hackers, h.name , s.final From ( Select hackers, sum(maxscore) over (partition by hackers) as final From ( Select Distinct hacker_id as hackers, challenge_id, max(score) over (partition by hacker_id, challenge_id) as maxscore From Submissions ) sub ) s Inner join Hackers h on h.hacker_id = s.hackers Where s.final > 0 Order by s.final desc

  • sql
KoKuMa 댓글 1 좋아요 0 조회수 275

중첩 객체 조회 관련

미해결

실전! Querydsl

안녕하세요! querydsl 강의를 보고 실무에 적용 하던 중 중첩 객체에 대해서 한번의 join query로 만들 수 없을지 궁금하여 질문 드립니다. 만약, A -< B -< C (-< 은 one to many 를 의미) 관계를 가진 객체가 있다고 할 때 selectFrom(A) .leftJoin(A.B) .leftJoin(A.B.C) .where(A.id.eq(1)) .fetch(); 위 코드의 반환 값이 아래와 같기를 희망 하는데요 A = { id: 1, Bs: [ { id : 1, Cs : [ { id: 1 } ] } ] } oneToMany를 조인 하게 되면, SQL은 many의 row를 반환하게 되면서, A객체가 B의 갯수만큼 반환 되게 됩니다. group by등을 통해 해결 하려 했을 때는, oneToMany 컬렉션들이 모두 불러와지지 않는것을 확인 하였고, group by를 활용 하지 않고, 모든 row를 불러와서 aggregate하는 방식으로 코드를 구현 했습니다. 매번 쿼리문을 작성할 때 마다 aggregate하는 코드를 작성하는 것은 옳지 않을 것 같아, 혹시 더 나은 방법이 있을지 문의 드립니다. 혹시 중첩 쿼리를 join 으로 모두 찾아 객체에서 맵핑하려는 시도가 bad practice라면 쿼리 숫자가 늘어나더라도, findByAId, findByBId 등의 방식으로 여러번 쿼리를 하고, 중간에 캐시 레이어를 두는것이 더 나을지도 궁금 합니다. 항상 좋은 강의 감사합니다 :)

  • jpa
  • JPA
  • querydsl
  • java
뜨어어 댓글 3 좋아요 2 조회수 954

join 관련

미해결

데이터 분석 SQL Fundamentals

안녕하세요! 강의를 듣다가 궁금한것이 생겨서 문의 드립니다. -- 부서명 SALES와 RESEARCH 소속 직원별로 과거부터 현재까지 모든 급여를 취합한 평균 급여 select b.empno, max(b.ename) as ename, avg(c.sal) as avg_sal --, count(*) as cnt from hr.dept a join hr.emp b on a.deptno = b.deptno join hr.emp_salary_hist c on b.empno = c.empno where a.dname in('SALES', 'RESEARCH') group by b.empno order by 1; 여기서 왜 max(b.ename) 이라고 해야하는지 잘 이해가 안가서 문의 드립니다..! 감사합니다.

  • postgresql
  • sql
  • dbms/rdbms
  • DBMS/RDBMS
jinsun4u 댓글 1 좋아요 0 조회수 355

UNIQUE INDEX와 PRIMARY KEY의 기능적차이

미해결

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part5: 데이터베이스

안녕하세요 강사님! 다름이 아니라 제가 이해하기로 UNIQUE INDEX와 PRIMARY KEY가 하는 기능은 똑같은 것 같은데(유일성) 어떤점이 다른건지 궁금합니다. 단지 테이블에 하나만 걸 수 있고 여러개를 걸 수 있고의 차이밖에 없는걸까요?

  • DBMS/RDBMS
  • dbms/rdbms
  • sql
좋은 캥거루 댓글 1 좋아요 0 조회수 624

선생님 질문 있습니다.

미해결

자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]

이번 강의에서 질문이 있는 부분은 get /user 부분의 controller에서 User에 대한 리스트를 그냥 반환하지 않고 UserResponse라는 DTO를 통해 리스트를 반환하신 이유에 대해 궁금합니다. 스프링부트 프레임워크에서 강제하는 부분인건가요?

  • mysql
  • java
  • spring
  • aws
  • jpa
  • JPA
  • spring-boot
이종민 댓글 4 좋아요 7 조회수 770

인기 태그

인프런 TOP Writers

주간 인기글