inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

테스트를 통과했는데 Member 테이블이 생성되지 않습니다.

미해결

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

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 안녕하세요. 현재 '실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발 강의'에서 'JPA와 DB 설정, 동작확인' 강의를 듣고 있습니다. H2 데이터베이스에 연결하고, 테스트 코드를 실행해서 성공적으로 member테이블이 생성되었다고 나오는데, H2 콘솔에서는 생성이 되어있지 않네요. 아래 스크린샷을 첨부합니다. 무엇이 문제일까요? 그리고 어떻게 하면 해결할 수 있는지 궁금합니다. 감사합니다. 말씀해주신대로 설정을 다시 확인해봤는데요. datasouce 설정 밑에 connection을 지우면 에러가 나서 넣었습니다. 이게 문제일까요?

  • java
  • spring
  • 웹앱
  • spring-boot
  • jpa
redrumjh 댓글 2 좋아요 1 조회수 590

BooleanExpression where 절

미해결

스프링 DB 2편 - 데이터 접근 활용 기술

BooleanExpression를 querysdl where절에서 사용할 때 콤마(,)를 and로 인식한다고 하셨는데 or는 어떻게 작성해야 하나요? (|)를 사용해야 할까요?

  • spring
  • mvc
  • jpa
  • querydsl
  • spring-data-mybatis
  • spring-jpa
이무 댓글 1 좋아요 0 조회수 363

메이븐 프로젝트 생성할때 오류가 발생해요

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

안녕하세요. 제가 기존에 이클립스를 사용했어서 이클립스로 메이븐 프로젝트 생성하려는데 아래 사진처럼 오류가 발생하고 생성이 되지 않습니다 ㅠㅠ 왜그런걸까요..? 그리고 이클립스 사용해도 되는건지 궁굼합니다...

  • java
  • jpa
wise0402 댓글 2 좋아요 0 조회수 1049

안드로이드 스튜디오와 협업

미해결

생산성을 향상시키는 스프링부트 기반의 API 템플릿 프로젝트 구현

현재 학부생 3학년으로 안드로이드 앱 개발 팀프로젝트를 진행중입니다. 클라이언트 친구가 하는말이 "회원고유번호를 카카오에서 프론트에게 주고, 프론트에서 그걸 백으로 전달해준다. 백은 그냥 내가 준 고유번호만 가지고 jwt토큰으로 만들어서 반환해달라" 라고 말하는데, 그러면 강의대로 섹션9를 다 수행하고나서, 섹션9의 카카오 토큰 발급 구현(1),(2)빼고 카카오에서 플랫폼만 웹에서 안드로이드로 변경하면 되는건가요? 제가 이해한게 맞다면 프론트(android studio)에서 인증, 인가를 받아 사용자 정보를 받아오고, 백엔드(Spring boot)에서는 단순히 /join 을 통해 프론트에서 넘겨준 User 데이터를 password와 함께 저장하는것 같습니다. 이 때, JWT 토큰을 발행해서 프론트에 넘겨주는것 같구요. 그리고 소셜로그인(6)까지 진행중인데, ERROR 15266 --- [nio-8080-exec-1] c.a.globa l.error.GlobalExceptionHandler : Exception 포스트로 value값을 보내면 위와같은 에러가 뜹니다... 그래서 첨부터 다시 쭉 보는데, (5)부분에서 했던 것도 똑같은 에러가 뜨더라고요... 뭐가 문제인지...ㅜ 스프링 첨배워가면서 하고있는데, 미치겠습니다..ㅠ

  • spring-boot
  • jpa
  • web-api
정성주 댓글 2 좋아요 0 조회수 695

JPQL vs QueryDSL

미해결

실전! Querydsl

JPQL 보다 QueryDSL 사용하는게 좀더 오류를 빨리 잡을 수 있어서 QueryDSL을 사용하는게 더 좋을 것 같은데, QueryDSL 보다 JPQL이 유용한 경우가 있을까요?

  • java
  • jpa
백린이 댓글 1 좋아요 0 조회수 383

스칼라 타입 영속성 컨텍스트

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

엔티티 프로젝션은 영속성 컨텍스트에서 관리되고, 임베디드 타입 프로젝션은 영속성 컨텍스트에서 관리되지 않는데, 그러면 스칼라 타입은 영속성 컨텍스트에서 관리되는건가요? 관리되지 않는건가요?

  • java
  • jpa
백린이 댓글 1 좋아요 0 조회수 287

주문한 상품 개수만큼 Stock을 감소시키는 로직

미해결

Practical Testing: 실용적인 테스트 가이드

안녕하십니까! 저의 경우는 해당 로직을 stockRepository.findByProductNumberIn()이 아니라, 일일이 재고와 관련된 ProductNumber에 대하여 stockRepository.findByProductNumber()로 조회 하여 decreaseQuantity()를 수행하였습니다. 그렇게 하여도, 동일 Stock의 경우 EntityManager에서 조회해오기 때문에 중복된 쿼리가 나가지 않아 어느정도의 성능 감소를 막을 수 있다 고 판단하였고, (물론 In절로 한꺼번에 가져오는것 보단 성능이 덜 나올 것 같습니다) 그대신에 , 로직이 직관적이라는 장점 이 있을 것 같아서 위와 같이 해당 로직을 작성하였습니다. 이에 대해서는 어떻게 생각하시는지 의견 남겨주시면 감사하겠습니다!

  • spring
  • tdd
  • jpa
  • mockito
  • 소프트웨어-테스트
  • junit5
요니 댓글 2 좋아요 0 조회수 476

요청값으로 넘어온 productNumber의 Product가 재고와 관련있는 상품인지 확인하는 로직 질문

미해결

Practical Testing: 실용적인 테스트 가이드

안녕하세요! 강의에서는 해당 로직을 ProductType이 BOTTLE이나 BAKERY인 경우에 한하여 true가 되도록 containsStockType() 메소드를 작성하여 판별 해주셨습니다! 혹시 이 경우를 stockRepository.existsByProductNumber() 를 호출하여, 재고가 있는 상품들만 필터링 해내는 로직 으로 작성하게 되면, 주문 상품수가 많을 경우 쿼리가 여러번 나가기 때문에 비효율적이어서, 요구사항에 따른 검증 로직을 작성하셨는지 여쭙고 싶습니다!

  • spring
  • tdd
  • jpa
  • mockito
  • 소프트웨어-테스트
  • junit5
요니 댓글 2 좋아요 0 조회수 307

Example Matcher withIgnorePaths 질문입니다

미해결

실전! 스프링 데이터 JPA

제가 이해한바로 age 필드는 primitive type이기 때문에 default value가 0으로 설정되어 다소 모호한 결과값이 나올 수 있기 때문에 withIgnorePath를 통해 특정 필드를 제외하는 것으로 이해했습니다. primitive type의 default value가 0이기 때문에 모호한 결과값이 나올 수 있어서 제외하는거라면 아예 공식 문서상에서도 이 기술을 사용하는 경우 엔티티를 Integer 객체로 생성하도록 권장하고 기본값으로 not nullable한 필드는 기본값으로 exclude하는 방법도 좋았을 것 같은데 이렇게 설계가 된 이유가 있을지 궁금합니다! reflection을 이용하면 가능할 것 같은데 다른 경우의 수가 있어서 그런걸까요?

  • java
  • spring
  • spring-boot
  • jpa
김윤식 댓글 1 좋아요 0 조회수 358

@MockBean, @Mock

미해결

Practical Testing: 실용적인 테스트 가이드

@MockBean, @Mock 두 개 사용이 계속 헷갈려서 질문 드립니다. 스프링 서버를 띄워서 테스트 할 때 @MockBean을 사용하는 걸로 알려주셨는데 @MockBean도 결국 Mock 객체를 사용하는 거니 @MockBean 대신 @Mock을 써서 테스트를 해도 될 것 같은데 왜 @SpringBootTest나 @WebMvcTest 어노테이션과 @MockBean을 같이 사용해서 테스트 하는 지 궁금합니다. Controller 테스트를 할 때 @WebMvcTest를 사용하기 위해서 @MockBean을 사용하는 걸까요? @WebMvcTest와 @MockBean이 짝궁(?)이어서 이렇게 사용하는걸까요?

  • spring
  • tdd
  • jpa
  • mockito
  • 소프트웨어-테스트
  • junit5
fbfbf1 댓글 2 좋아요 1 조회수 670

@Valid Notifications notifications

미해결

스프링과 JPA 기반 웹 애플리케이션 개발

안녕하세요 ! 강의 너무 재밌습니다 감사합니다.. (2:29) Notifications 앞에 @Valid 을주셨는데 막상 Notifications 객체에는 벨리데이션 조건도없고 @InitBinder도 따로 없는데 @Valid 붙이는게 의미가 있는건가요 !?! 제가 궁금한건 @Valid 이 어노테이션이 유효한지가 궁금합니다.

  • java
  • spring
  • spring-boot
  • jpa
  • thymeleaf
H K 댓글 1 좋아요 0 조회수 461

LocalDateTime 해결 후 pom.xml에서 에러 발생

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

안녕하세요! 원래는 에러가 안 떴는데 private LocalDateTime orderDate;에서 LocalDateTime을 해결하니깐 갑자기 다음과 같은 에러가 발생했습니다. 해결방법 알려주시면 감사하겠습니다!

  • java
  • jpa
양양이 댓글 2 좋아요 0 조회수 629

WebMvcTest에서의 when

해결됨

Practical Testing: 실용적인 테스트 가이드

Controller 테스트를 하실 때 어떤 경우에서는 when으로 값을 세팅해주고 어떤 경우에는 사용을 안하시는데 기준이 있으실까요

  • spring
  • tdd
  • jpa
  • mockito
  • 소프트웨어-테스트
  • junit5
fbfbf1 댓글 2 좋아요 1 조회수 390

ManyToOne 관계 설정 시 궁금한 점이 있습니다.

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

[질문 내용] 안녕하세요! 강의를 들으며 제 사이드 프로젝트의 데이터베이스를 설계하는 과정에서 궁금증이 생겨 질문드립니다. 저는 Content라는 엔티티 클래스를 만들고 이를 상속받는 Post, Comment 클래스를 만들었습니다. Content라는 부모 엔티티 클래스를 만든 이유는 내용을 담는 body라는 필드를 Post와 Content가 동일하게 가지기 때문입니다. 후에 프로젝트가 커지면 image, link등과 같은 여러 필드들이 Content에 추가될 예정입니다. 이때 Post는 title 필드를 추가적으로 가지고 있고 Comment를 여러 개 가질 수 있는데, 일반적인 상황에서 동일한 엔티티 클래스를 상속받은 클래스끼리도 이러한 ManyToOne 관계를 가지게 설계하는지 궁금합니다.

  • java
  • jpa
  • spring
  • db
  • 데이터베이스
윤산 댓글 1 좋아요 0 조회수 341

안녕하세요 강의 잘보고있습니다,.

미해결

스프링과 JPA 기반 웹 애플리케이션 개발

질문이 하나있습니다. 8:48인데요 @PostMapping( SETTINGS_PASSWORD_URL ) public String passUpdate(@CurrentUser Account account, @Valid PasswordForm passwordForm, Errors errors, Model model, RedirectAttributes attributes){ System. out .println("errors : " + errors); if(errors.hasErrors()){ model.addAttribute(account); return SETTINGS_PASSWORD_URL ; } 이부분인데 에러가 났을때 왜 model.addAttribute(account); (66라인) 모델이 다시 담아주는건가요 ?? ==================================== 다시 생각해보니 account 객체가 nav-bar 에서 필요해서(account 객체에 따른 이미지 보여주기) 다시 담아주는거 같네요

  • java
  • spring
  • spring-boot
  • jpa
  • thymeleaf
H K 댓글 1 좋아요 0 조회수 262

패치 조인을 이렇게 이해해도 될까요?

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 여기에 질문 내용을 남겨주세요. 안녕하세요 좋은 강의 만들어주셔서 감사합니다. 강의를 보다가 이해가 어려운 부분이 있어서 질문드리고 싶은데 패치조인을 이렇게 이해해도 될까요? 1번 질문입니다 . 실무에서는 지연로딩으로 기본 세팅을 합니다. 지연로딩은 즉시로딩보다 단점이 적기 때문입니다. (조인 개수와 성능 문제 관련) 그러나 지연로딩도 최악의 경우 N+1 의 문제가 발생할 수 있습니다. 그 보완책이 패치조인입니다. 2번 질문입니다. 패치조인은 지연로딩이 N+1 의 문제가 될 수 있는 특수한 상황에서만 즉시로딩을 할 수 있게 해줍니다. 즉 연관관계에 있는 엔터티들을 JOIN FETCH로 명시하는 쿼리를 날려주면 즉 하이버네이트가 해당 엔터티들끼리 조인을 날려줍니다. 3번 질문입니다. 아래의 쿼리가 잘못된 이유를 가르쳐주시면 감사하겠습니다. String query = "select t From Member m join fetch m.team t"; List<Team> result = em.createQuery(query, Team.class).getResultList(); 아래의 쿼리가 select t From jpql.Member m join fetch m .team t SQL에서는 아래의 쿼리와 같다고 생각하는데 에러가 생깁니다. select team.* from member join team on m ember.team_ id = t eam.id 4번 질문입니다. 3번 질문과 연관되는 질문입니다. 1번째 쿼리는 되고 select m From jpql.Member m join fetch m .team 2번째 쿼리는 안되는 이유가 궁금합니다. select t From jpql.Member m join fetch m .team t 1번째 쿼리는 team이 있는 member를 가져오는 것이고 2번째 쿼리는 member가 있는 team을 가져오는 것이기 때문입니다. 그런데 JPA에서는 왜 2번째 쿼리가 오류가 발생하는건지 이해가 어려워 가르쳐주시면 감사하겠습니다. 5번 질문입니다. 아래의 쿼리는 왜 안되는건지 가르쳐주시면 감사하겠습니다. String query = "select m From Team t join fetch t.members m"; List<Member> result = em.createQuery(query, Member.class).getResultList(); 긴 질문을 읽어주셔서 감사합니다.

  • java
  • jpa
Like me black 댓글 2 좋아요 0 조회수 818

강의 코드 질문 드립니다.

미해결

Practical Testing: 실용적인 테스트 가이드

안녕하세요. 강의 코드는 혹시 제공 되나요?

  • spring
  • tdd
  • jpa
  • mockito
  • 소프트웨어-테스트
  • junit5
jung 댓글 2 좋아요 0 조회수 543

Kafka Connect Sink 사용할 때 LocalDateTime은 어떻게 하나요??

미해결

Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)

안녕하세요. 강사님의 강의를 듣고 개인 프로젝트에 적용하고 있습니다. LocalDateTime이 없을 때는 잘 수행되었는데 제 개인 프로젝트 엔티티에는 LocalDateTime이 있습니다. 이 부분에서 자꾸 에러가 나와서 어떻게 처리해야 하는지 알려주시면 감사하겠습니다. 다음은 제가 LocalDateTime을 처리하기 위해 따로 만든 엔티티 입니다. package com.dotd.product.kafkaConnectTest; import jdk.jfr.Name; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import org.springframework.data.annotation.CreatedDate; import org.springframework.data.jpa.domain.support.AuditingEntityListener; import javax.persistence.*; import java.time.LocalDateTime; @Entity @Data @NoArgsConstructor @AllArgsConstructor @Builder @Table(name = "nametest") @EntityListeners(AuditingEntityListener.class) public class NameTest { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Integer id; private String name; @CreatedDate @Column(name = "created_at") private LocalDateTime createdAt; } 또한, Kafka Connect Sink가 한 번 에러가 발생하면 state : FAILED로 바뀌면서 작동을 안 하는 거 같은데 어떻게 정상화 하나요..?? 127.0.0.1:8083/connectors/nametest-sink-connect/status 이 요청을 보냈을 때 이렇게 나옵니다. { "name": "nametest-sink-connect", "connector": { "state": "RUNNING", "worker_id": "192.168.0.14:8083" }, "tasks": [ { "id": 0, "state": "FAILED", "worker_id": "192.168.0.14:8083", "trace": "org.apache.kafka.connect.errors.ConnectException: Exiting WorkerSinkTask due to unrecoverable exception.\r\n\tat org.apache.kafka.connect.runtime.WorkerSinkTask.deliverMessages(WorkerSinkTask.java:611)\r\n\tat org.apache.kafka.connect.runtime.WorkerSinkTask.poll(WorkerSinkTask.java:333)\r\n\tat org.apache.kafka.connect.runtime.WorkerSinkTask.iteration(WorkerSinkTask.java:234)\r\n\tat org.apache.kafka.connect.runtime.WorkerSinkTask.execute(WorkerSinkTask.java:203)\r\n\tat org.apache.kafka.connect.runtime.WorkerTask.doRun(WorkerTask.java:189)\r\n\tat org.apache.kafka.connect.runtime.WorkerTask.run(WorkerTask.java:244)\r\n\tat java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)\r\n\tat java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)\r\n\tat java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)\r\n\tat java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)\r\n\tat java.base/java.lang.Thread.run(Thread.java:834)\r\nCaused by: org.apache.kafka.connect.errors.ConnectException: java.sql.SQLException: Exception chain:\r\njava.sql.BatchUpdateException: Column 'created_at' cannot be null\r\n\r\n\tat io.confluent.connect.jdbc.sink.JdbcSinkTask.put(JdbcSinkTask.java:124)\r\n\tat org.apache.kafka.connect.runtime.WorkerSinkTask.deliverMessages(WorkerSinkTask.java:581)\r\n\t... 10 more\r\nCaused by: java.sql.SQLException: Exception chain:\r\njava.sql.BatchUpdateException: Column 'created_at' cannot be null\r\n\r\n\tat io.confluent.connect.jdbc.sink.JdbcSinkTask.getAllMessagesException(JdbcSinkTask.java:154)\r\n\tat io.confluent.connect.jdbc.sink.JdbcSinkTask.put(JdbcSinkTask.java:104)\r\n\t... 11 more\r\n" } ], "type": "sink" }

  • spring-boot
  • jpa
  • 아키텍처
  • spring-cloud
  • kafka
  • msa
Calice 댓글 1 좋아요 0 조회수 528

OrderRepository에 @Repository

미해결

Practical Testing: 실용적인 테스트 가이드

안녕하세요 JPARepository에는 @Repository 를 안 붙여도 정상 작동하는 걸로 알고 있는데 따로 붙이신 이유가 있으실까요?

  • spring
  • tdd
  • jpa
  • mockito
  • 소프트웨어-테스트
  • junit5
fbfbf1 댓글 2 좋아요 0 조회수 452

강의 11:54 단축키 질문입니다.

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

[질문 내용] 안녕하세요. 강의 11:54초에 mappedBy 속성에 값을 넣을 때 사용하신 단축키를 알고 싶습니다(mac). 감사합니다.

  • java
  • jpa
fortywinks123 댓글 2 좋아요 0 조회수 439

인기 태그

인프런 TOP Writers

주간 인기글