묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
빌드 툴, Gradle
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]강의 첫 영상에서 build 할 때 Build and run using : GradleRun tests using : Gradle 하셨는데주문서비스Test 돌릴 때 인텔리제이로 돌리면 위 사친 처럼 나오고gradle 로 해서 돌리면 위 사진 처럼 나오는데 강의 영상에선 인텥리제이로 해서 돌리신 것 같은데 인텥리제이로 해서 돌려도 괜찮은 것인가요? 문제 발생할 수 있다고 해서 궁금해서 여쭤봅니당..
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
안녕하십니까! 오류가 났습니다.. 도와주세요 ㅜㅜ
다 정상적으로 동작하는데 이름 수정 로직이 제대로 동작하지 않고 서버 내부 오류라는 메시지가 자꾸 출력됩니다.제가 혼자 해결해보려고 해보았는데 Hibernate가 id로 조회한 결과가 없어서 Optional이 비어서 orElseThrow가 예외를 던진거라고 하는데요... Postman 이용해서 제 실제 DB에 있는 데이터 값으로 전송해도 sql은 실행이 되는데 뭐가 문제인지 잘 모르겠습니다 ㅜㅜ도와주세요 ㅜㅜㅜㅜ
-
미해결코드로 배우는 React 19 with 스프링부트 API서버
tbl_todo 질문입니다
강의 12분 55초에malldb로 들어가서 tbl_todo가 떠야하는데 저는 없네요그래서 한참 이것저것 찾아보니까 tbl_todo가root/apidb/에 있네요.어디가 잘못된건가요?ㅜㅜ
-
해결됨코드로 배우는 React 19 with 스프링부트 API서버
수업 외 질문인데 'tbl'이 무슨 의미인가요???
Table 어노테이션에서 이름 지정 시 tbl 이라는 접두사가 붙었는데 무슨 의미가 있는건가요??
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
h2연결은 된 것 같은데 엔티티 테이블까지 작성 후 확인해보아도 테이블이 안보입니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. https://drive.google.com/file/d/1ascl2GoqIRVM8prPCdagjtHuh6gPaulv/view?usp=sharing 콘솔에 나온 jdbc url대로 들어가도 코드에 짠 엔티티 테이블들이 보이지 않아여
-
미해결돌고래도 이해하는 스프링부트 3 + PostgreSQL 17
1~2강은 원래 소리가 안 나는 영상인가요?
1~2강은 원래 소리가 안 나는 영상인가요?
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
강의에서 BCryptPasswordEncoder 에 역할(5-2)
강사님 이 부분에서 security password 가 (password 입력시) 기본값으로 사용하는 용도인가요?bCryPassword가 암호화를 해준다는 말은 알겠는데 이부분이 살짝 개념이해가 되지 않아 문의드립니다.
-
미해결실전! Querydsl
자바 ORM 표준 JPA 프로그래밍 - 기본편 듣고 바로 학습해도 괜찮을까요?
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]자바 ORM 표준 JPA 프로그래밍 - 기본편 듣고 바로 학습해도 괜찮을까요?
-
미해결실전! Querydsl
현재 Querydsl에서 from절 서브쿼리를 지원하나요?
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]검색을 해봐도 정확한 내용을 알기 어려워서 질문 남깁니다!JPA 다른 편 강의에서 하이버네이트6 이상부터는 from절의 서브쿼리를 지원한다고 본 것 같은데, 그렇다면 현재 JPQL과 Querydsl에서 from절 서브쿼리를 지원하는 건가요?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
Repository에서 EntityManager 주입 방식 차이
[질문 내용]스프링 db 강의에서는@Repository @RequiredArgsConstructor public class MemberRepository { private final EntityManager em;이 방식으로 했는데, 이 강의에서는@Repository public class MemberRepository { @PersistenceContext private EntityManager em;이렇게 사용하셔서 두 방식의 무슨 차이가 있는지 궁금합니다.
-
미해결Spring Boot와 React로 배우는 초간단 REST API 게시판 만들기
스프링부트 에러
스프링부트 작성 후 에러가 발생하고 있는데어노테이션에러가 발생하고 있습니다. C:\prac\src\main\java\restApi\prac\service\PostService.java:8: error: cannot find symbol public PostService(PostRepository postRepository) { ^ symbol: class PostRepository location: class PostService모든 어노테이션에서 발생하고 있는데 설정 문제 일까요?
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
혹시 현재는 ID 데이터 타입이 String이면 안되나요?
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]@Id @GeneratedValue(strategy = GenerationType.IDENTITY) private String id;강의에서는 위와 같이 타입을 String으로 하셔서 신기하다 하고 따라했는데 오류가 뜨더라고요 (애초에 테이블 자체가 안만들어짐, 쿼리는 날라감)그래서 그냥 원래 하던대로 Long으로 했는데 잘 되는 거보니, 강의가 옛날 버전이기도 하고해서 예전에는 h2에서 String 타입의 ID 형식도 허용해줬던건가요?[오류 일부 스크린샷]
-
미해결토비의 클린 스프링 - 도메인 모델 패턴과 헥사고날 아키텍처 Part 1
"MemberFinderTest, MemberRegisterTest" record관련
record + 클래스 레벨 @Transactional에서 에러가 발생합니다.!질문은 record 예약어는 final 클래스라서 상속이나 프록시 생성이 불가능한거 같은데@Transactional 어노테이션은 Spring AOP기반이라 프록시 객체 생성이 안되서 에러가 발생하는거 같은데... 강의에서는 통과가 되더라구요 제가 어떤 부분이 놓쳤을까요?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
롬복과 사용자 정의 setter 메서드
강의 23:03분에서 setMember(Member member)라는 setter 메서드를 작성하는데요.제가 기억하기로는 @Setter를 설정하면 자동으로 필드 이름을 딴 setXXX()인 setter가 만들어지는 것으로 알고 있습니다.그러니까 현재 Member 필드가 있으니까 롬복인 @Setter 에 의해 setMember(Member member)가 자동으로 생성되지 않을까 생각하는데요. 제가 생각한게 맞다면 이때 강의에서 만든 setMember(Member member)와 충돌? 이런 문제는 없나요? 시그니처까지 똑같은 것 아닌가요?아니면 이런경우 사용자가 직접 만든 것이 더 우선시 되는건가요?
-
해결됨토비의 클린 스프링 - 도메인 모델 패턴과 헥사고날 아키텍처 Part 1
인터페이스
안녕하세요! 이번 강의 수강 중 서비스 인터페이스에 대해 궁금하여 글을 남기게 되었습니다. 흔히 스프링 프로젝트에서 보통 Service 인터페이스와 ServiceImpl 구현체로 나누어 개발하며 제가 참여하게 된 프로젝트 또한 이러한 구조였습니다.이미 이전 개발자 분께서 Service 인터페이스와 ServiceImpl 구현체로 나눠놓은 상태였고, 제가 A 기능의 AServiceImpl 안에 특정 서비스 로직이 비대해짐에 따라 해당 코드가 명확하지 않다고 생각되어 메서드로 분리하게 되었습니다. A 엔티티의 상태, 계산 등의 로직으로 private 메서드를 두었습니다.여기서 동료와 의견이 갈렸습니다:동료 입장:1. ServiceImpl 안의 모든 메서드는 반드시 인터페이스에 있어야 한다.2. 인터페이스는 외부·내부 구분이 아니라, 구현체가 제공하는 기능을 보장하는 것이므로 전부 담아야 한다.3. 내부 메서드를 둘 거라면 굳이 인터페이스로 추상화할 필요가 없고 그냥 클래스로 쓰면 된다.제 입장:1. 인터페이스에는 “외부 계약(=공개 API)”만 있어야 한다.2. 구현체 내부에서만 쓰이는 로직은 private으로 감추는 게 맞고, 외부에서 호출할 필요가 전혀 없다.3. 인터페이스를 구현체 내부 헬퍼까지 다 포함하면, 오히려 계약이 불필요하게 비대해지고 역할이 모호해진다.핵심 쟁점저는 public 메서드는 모두 인터페이스에 있어야 한다는 데에는 동의합니다. 또한, 단순 public, private 만 있다면, 인터페이스의 역할이 모호하다는 것또한 이해하지만, 이전 코드와의 일관성과 운영 중인 시스템에 대한 변경이 필요할정도의 중대사항이라고 생각하지 않습니다.궁금한 점은 private/내부 헬퍼 메서드까지 인터페이스에 강제로 올리는 게 맞는지, 인터페이스를 사용하는 의의가 궁금합니다. 긴글 읽어주셔서 감사합니다.
-
미해결Spring Boot와 React로 배우는 초간단 REST API 게시판 만들기
자바 17
자바 17로 진행해도 되나요
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
궁금한게 있습니다.
ManyToOne 이 N : 1이라는관계를 표현한다는건 이해가 가는데 그게 어떻게 User 객체와 user_id bigint 컬럼과 매핑이 되는지 잘 모르겠습니다. 대출기록이 여러개고 User 가 1개 라는 것과 저것이 무슨 연관인지 이해가 안갑니다ㅜ
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
양방향 연관관계 시 연관관계 주인을 설정하는 이유
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]연관관계 를 사용할 경우 연관관계 주인을 설정해야 하는건 이해를 했습니다.@Entity public class Team { @Id @GeneratedValue private Long id; private String name; @OneToMany private List<Member1> members = new ArrayList<>(); }@Entity public class Member1 { @Id @GeneratedValue private Long id; private String username; @ManyToOne @JoinColumn(name = "team_id") private Team team; }위와 같은 엔티티 구조일 경우 Team 에서도 Member1 에 대한 정보를 알수 있으며 Member1 에서도 Team 에 대한 정보를 알수 있습니다. 이후 둘의 데이터를 삽입한다는 가정하에 다음과 같이 Member 를 먼저 생성후 Team 에 입력할수도 있고Member1 member1 = new Member1(); member1.setUsername("member1"); em.persist(member1); Team team1 = new Team(); team1.setName("teamA"); team1.getMembers().add(member1); em.persist(team1); 반대로 Team 을 먼저 생성한 뒤에 Member 에게 알려줄수도 있습니다.Team team = new Team(); team.setName("teamA"); em.persist(team); Member1 member = new Member1(); member.setUsername("member1"); member.setTeam(team); em.persist(member);문제는 여기서 부터 인데... 연관관계 주인을 사용하는 이유는 JPA 에 혼란(?) 을 주지 않기 위함이다 라고 외우고 있는 상태입니다. "mappedBy 를 사용하여 한쪽에서는 쓰기만 가능하도록 동작하도록 한다. " 근데 이게 연관관계 주인하고 무슨 상관인지 잘 모르겠습니다. 그냥 둘다 읽고 쓰고 업데이트 다 가능해도 객체 입장에서는 큰 문제가 없을거 같은데.. 굳이 연관관계 주인이라는 개념을 도입해서 사용하는 이유를 잘 모르겠습니다. 가령 DB 에서는 Team 테이블의 ID 값이 변경이 필요할 경우 그 와 함께 연관되어 있는 Member 테이블에 team_id 값을 변경해줄수도 있고 반대 상황에서도 변경이 가능한데.. 뭔 차이 인지 잘 모르겠습니다.
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
DTO 관련
안녕하세요 BookCreateRequest 객체에 name 을받는 생성자를 만들었더니 아무것도 안받는 생성자도 만들어야 정상 작동하더라구요 근데 아예 생성자를 안만드니까 바로 정상 작동하던데 무슨 차이가 있는건가요?
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
임베디드 타입과 MappedSuperClass의 차이점이 궁금합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]강의를 듣다가 생각나게 된 것이 앞서 배운 @MappedSuperClass가 생각이 났습니다. 이것도 각 엔티티에 공통된 속성을 정해줄 수 있었는데요. 어떤 차이점이 있는지 궁금합니다.