inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

강의내용대로 따라했는데 localprpfile를 읽어들이지못하고있네요 이유가뭘까요??

미해결

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

spring: config: activate: on-profile: local datasource: url: "jdbc:h2:mem:library;MODE=MYSQL;NON_KEYWORDS=USER" username: "root" password: "1234" driver-class-name: org.h2.Driver jpa: hibernate: ddl-auto: create properties: hibernate: show_sql: true format_sql: true dialect: org.hibernate.dialect.H2Dialect h2: console: enabled: true path: /h2-console --- spring: config: activate: on-profile: dev datasource: url: "jdbc:mysql://localhost/liberary" username: "root" password: "1234" driver-class-name: com.mysql.cj.jdbc.Driver jpa: hibernate: ddl-auto: none properties: hibernate: format_sql: true use_sql_comments: true disable_sql_comments: org.hibernate.dialect.MySQL8Dialect yaml파일입니다 설정부분입니다 콘솔입니다 오류부분입니다 2023-12-28 11:29:08.692 WARN 11440 --- [ main] o.h.t.s.i.ExceptionHandlerLoggedImpl : GenerationTarget encountered exception accepting command : Error executing DDL "drop table if exists user CASCADE " via JDBC Statement

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
성문 댓글 1 좋아요 0 조회수 361

JPA @Transactional

미해결

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

[질문 내용] JPA 기술을 사용할 때 리포지토리 계층에 @Transactional을 붙여줘야 한다고 말씀해주셨는데 MemberRepository 코드에서는 JPA를 사용하는데 왜 @Repository만 붙여주는 건가요??

  • java
  • spring
  • 웹앱
  • spring-boot
  • jpa
윤토벤 댓글 2 좋아요 0 조회수 396

em.getReference() 이후에 em.find()를 해도 둘다 프록시 객체가 나오는 이유가 궁금합니다.

미해결

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

예전에 영속성 컨텍스트 강의를 들을 때는 JPA는 동일성을 보장하기 위해 같은 엔티티 타입과 PK로 조회를 하면 1차 캐시에 그 값이 있으면 반환된 객체도 동일하다고 배웠습니다. 이것과 마찬가지로, em.getReference(Member.class, member1.getId()) 로 DB로부터 조회하지 않고 참조값만을 가져와도 1차 캐시에 그 값이 올라오는건가요? 그래서 이후에 em.find(Member.class, member1.getId()) 를 해도 프록시 객체가 반환된 이유가 1차 캐시에 있는 참조값을 그대로 조회해서 그런가요?

  • java
  • jpa
Ambition 댓글 2 좋아요 0 조회수 671

N:M 을 1:N N:1 로 풀면 이런 모습일까요?

미해결

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

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 네 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 네 [질문 내용] 안녕하세요. 항상 영한님의 강의를 수강하며 재밌게 공부하고 있습니다. 질문이 있습니다. Item & Category 를 다대다가 아니라 일대다 다대일로 연관관계 매핑을 할 때 중간테이블을 직접 만든다면 다음과 같이 만들면 되는걸까요? @Entity public class Item { @Id @GeneratedValue @Column(name = "ITEM_ID") private Long id; private String name; private int price; private int stockQuantity; @OneToMany @JoinColumn(name = "ITEM_ID") private List<CategoryItem> categoryItems = new ArrayList<>(); } @Entity public class CategoryItem { @Id @GeneratedValue @Column(name = "CATEGORY_ITEM_ID") private Long id; @ManyToOne @JoinColumn(name = "CATEGORY_ID") private Category category; @ManyToOne @JoinColumn(name = "ITEM_ID") private Item item; } @Entity public class Category { @Id @GeneratedValue @Column(name = "CATEGORY_ID") private Long id; private String name; @OneToMany @JoinColumn(name = "CATEGORY_ID") private List<CategoryItem> categoryItems = new ArrayList<>(); @ManyToOne @JoinColumn(name = "PARENT_ID") private Category parent; @OneToMany(mappedBy = "parent") private List<Category> child = new ArrayList<>(); }

  • java
  • jpa
cjkimhello97 댓글 3 좋아요 2 조회수 775

User이 계속 null으로 들어와서 오류가 나네요

미해결

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

강의내용그대로 입력하였는데 왜그럴까요 ㅠㅠ 서비스부분 public void loan(BookLoanReq req) { Book book = bookRepstory.findByName(req.getBookName()).orElseThrow(IllegalArgumentException::new); if (userLoanHistoryRep.existsByBookNameAndIsReturn(book.getName(), false)){ throw new IllegalArgumentException("대출중인 책입니다."); } User user=userRepstrory.findByName(req.getUserName()).orElseThrow(IllegalArgumentException::new); userLoanHistoryRep.save( new UserLoanHistory(user.getId(),book.getName(),false)); } public interface UserRepstrory extends JpaRepository<User,Long> { Optional<User> findByName(String name); } package com.group.libraryapp.domain.user; import javax.persistence.*; @Entity public class User { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; public User(String name,Integer age) { if(name==null||name.isBlank()){ throw new IllegalArgumentException(String.format("널값")); } this.name = name; this.age = age; } @Column(name="age",length = 20) private Integer age; @Column(name="name",nullable = false) private String name; protected User(){ } public Long getId() { return id; } public Integer getAge() { return age; } public String getName() { return name; } public void update(String name){ this.name=name; } public User(Long id, Integer age, String name) { this.id = id; this.age = age; this.name = name; } } 마지막으로 오류코드올려드릴게요 ava.lang.IllegalArgumentException: null at java.base/java.util.Optional.orElseThrow( Optional.java:403 ) ~[na:na] at com.group.libraryapp.service.book.BookService.loan ( BookService.java:39 ) ~[main/:na] at com.group.libraryapp.controller.book.BookController.loan ( BookController.java:29 ) ~[main/:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke( NativeMethodAccessorImpl.java:77 ) ~[na:na] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke( DelegatingMethodAccessorImpl.java:43 ) ~[na:na] at java.base/java.lang.reflect.Method.invoke( Method.java:568 ) ~[na:na]

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
성문 댓글 2 좋아요 0 조회수 975

MemberRepositoryTest

미해결

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

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] WARNING: A Java agent has been loaded dynamically (C:\Users\home\.gradle\caches\modules-2\files-2.1\net.bytebuddy\byte-buddy-agent\1.14.10\90ed94ac044ea8953b224304c762316e91fd6b31\byte-buddy-agent-1.14.10.jar) WARNING: If a serviceability tool is in use, please run with -XX:+EnableDynamicAgentLoading to hide this warning WARNING: If a serviceability tool is not in use, please run with -Djdk.instrument.traceUsage for more information WARNING: Dynamic loading of agents will be disallowed by default in a future release OpenJDK 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended 테스트는 성공하는데 이렇게 경고문이 뜨는데 무시해도 될까요?? 구글링 해봐도 안나와서요

  • java
  • spring
  • 웹앱
  • spring-boot
  • jpa
윤토벤 댓글 2 좋아요 0 조회수 3069

오류발생코드질문드립니다

미해결

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

Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'bookService' defined in file [C:\Users\user\OneDrive\���� ȭ��\����ڷ�\Java_Spring_Library_Application new\library-app\library-app\build\classes\java\main\com\group\libraryapp\service\book\BookService.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userLoanHistoryRep' defined in com.group.libraryapp.repstory.user.userloan.UserLoanHistoryRep defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Invocation of init method failed; nested exception is org.springframework.data.repository.query.QueryCreationException: Could not create query for public abstract boolean com.group.libraryapp.repstory.user.userloan.UserLoanHistoryRep.existIsBookNameAndIsReturn(java.lang.String,boolean); Reason: Failed to create query for method public abstract boolean com.group.libraryapp.repstory.user.userloan.UserLoanHistoryRep.existIsBookNameAndIsReturn(java.lang.String,boolean)! No property 'existIsBookName' found for type 'UserLoanHistory'; nested exception is java.lang.IllegalArgumentException: Failed to create query for method public abstract boolean com.group.libraryapp.repstory.user.userloan.UserLoanHistoryRep.existIsBookNameAndIsReturn(java.lang.String,boolean)! No property 'existIsBookName' found for type 'UserLoanHistory' 요약해보면 자바의 DTO객채의 이름하고 mysql에있는 테이블의 이름과 일치 하지않아서오류가 발생하는듯하는듯한데 왜 오류가 발생할까요? 객채생성하고 테이블올려드릴게요

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
성문 댓글 2 좋아요 0 조회수 469

OneToOne관계 Insert 질문있습니다..

미해결

안녕하세요 JPA를 공부하고 테스트하는과정에서 문제가 생겨 질문드립니다..ㅠㅠ 사용자테이블(USER) 비밀번호테이블(PASSWORD) 2개가 있고, 각각 USER_ID를 키값으로 가지고 있습니다. 사용자 테이블 Entity 비밀번호 Entity 회원가입 사용자정보(userInfo)를 입력하면 비밀번호(userPwd) 테이블에도 같이 insert되게 하고싶습니다. 여기서 문제가 생기는데 Setter함수를 되도록이면 쓰지말라고해서 생성자 초기화를 이용하여 테스트중인데 생성자를 만드는과정에서 어떻게 생성을 해야될지 모르겠습니다.. userInfo 생성자에 userPwd를 넣는게 맞는건지... 예상되는 insert UserInfo테이블 admin, 기타정보들 UserPwd테이블 admin, 1234 아시는분있으면 도움좀 부탁드리겠습니다..ㅠㅠ 감사합니다.

  • jpa
  • 스프링부트
  • OnetoOne
  • save
wsmany 댓글 1 좋아요 0 조회수 373

삭제 쿼리 질문드립니다.

미해결

코드로 배우는 React 19 with 스프링부트 API서버

삭제 테스트중 의문점이 하나 있어서 질문드립니다 삭제를 위한 검색쿼리 Hibernate: select c1_0.cno from tbl_cart c1_0 left join tbl_cart_item c2_0 on c2_0.cart_cno=c1_0.cno where c2_0.cino=? 작성하지 않았는데 발생하는 쿼리 Hibernate: select c1_0.cino, c2_0.cno, o1_0.email, o1_0.nickname, o1_0.pw, o1_0.social, p1_0.pno, p1_0.del_flag, p1_0.pdesc, p1_0.pname, p1_0.price, c1_0.qty from tbl_cart_item c1_0 left join tbl_cart c2_0 on c2_0.cno=c1_0.cart_cno left join member o1_0 on o1_ 0.email =c2_0.member_owner left join tbl_product p1_0 on p1_0.pno=c1_0.product_pno where c1_0.cino=? 삭제쿼리 Hibernate: delete from tbl_cart_item where cino=? 삭제후 아이템 재검색쿼리 Hibernate: select c1_0.cino, c1_0.qty, p1_0.pname, p1_0.price, i1_0.file_name from tbl_cart_item c1_0 join tbl_cart c2_0 on c1_0.cart_cno=c2_0.cno left join tbl_product p1_0 on c1_0.product_pno=p1_0.pno left join product_image_list i1_0 on p1_0.pno=i1_0.product_pno where i1_0.ord=0 and c2_0.cno=? 삭제 쿼리시 위와같은 쿼리들이 실행되는데요 삭제를 위한 검색쿼리 후 알수없는 쿼리하나가 더 실행되는데 이쿼리가 실행되는 이유를 알고 싶습니다.

  • react
  • spring-boot
  • jpa
  • jwt
  • redux-toolkit
ultimates 댓글 1 좋아요 0 조회수 355

ManyToOne 설정 질문있습니다.

미해결

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

public class ReservationGoods extends BaseEntity { @ManyToOne @JoinColumn(name = "reservation_id") private Reservation reservation;} public class Reservation extends BaseEntity { @OneToMany(fetch = FetchType.LAZY,mappedBy = "reservation") private List<ReservationGoods> reservationGoods = new ArrayList<>(); } 네이버 헤어 예약처럼 시간상품이 하나의 주문에만 들어갈 수 있고 주문 하나의 여러개의 상품을 신청할 수 있어서 지금 db설계가 상품: 주문이 다대일 상황입니다 이게 상품이 생성될때는 주문관해서는 모르는상황이라 이거는 어쩔 수 없이 주문1 : 상품다 로 단방향 연결밖에 답이 없을까요?

  • java
  • jpa
ㅇㅇㅇ 댓글 3 좋아요 0 조회수 470

qeuryDSL 관련하여 여쭤볼게 있습니다.

미해결

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

현재 queryDSL 마지막 릴리즈 버전이 Github 기준으로 2021년도로 파악되는데 업데이트할 사항이 없어서 더이상 릴리즈가 안되는건지 궁금해서 문의드립니다!

  • java
  • spring
  • spring-boot
  • jpa
bakch94 댓글 1 좋아요 0 조회수 584

세팅 질문있습니다.

미해결

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

강의와 똑같이 인텔리제이에서 spring io로 자바 11을 설정할려고 했으나 17이 최 하위이고 부트 버전도 아래같이 최하위가 3.대인데 2.대로 어떻게 맞추나요?

  • java
  • spring
  • spring-boot
  • jpa
  • thymeleaf
zzzzz 댓글 1 좋아요 0 조회수 384

entity 칼럼 매핑 오류

미해결

안녕하세요. legacy시스템을 querydsl로 바꾸는 작업을 하고 있는데요. 몇몇 칼럼에서 아래와 같은 에러가 일어나 변환 작업에 어려움을 겪고 있습니다. @Column(name = "a_b_c") private String abc; 위의 entity a_b_c칼럼을 repository 단위 테스트할 경우 m1_0.a_b_c 칼럼명을 잘가지고 오는데 스프링에서 서블릿을 올려서 테스트 할 경우 아래와 같이 에러가 납니다. jakarta.servlet.ServletException: Handler dispatch failed: java.lang.NoSuchFieldError: abc at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1096) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:974) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1011) at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564) at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) Caused by: java.lang.NoSuchFieldError: abc at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:343) 칼럼명을 변경하면 해결이 가능하지만 레거시 시스템이므로 칼럼명 변경은 불가능합니다. 관련 내용에 대해 아시는분 이 있으시면 답글 부탁드립니다.

  • jpa
  • querydsl
  • entity
  • java
스프링맨 댓글 1 좋아요 0 조회수 339

토큰쿠키저장에 대해서 질문드립니다.

미해결

코드로 배우는 React 19 with 스프링부트 API서버

강의에서 토큰을 보관하기에 보안에도 좋고 적절한 곳이 쿠키라고 말씀해주셨는데 보통 쿠키에 저장을 많이 하는편일까요? 내년 하반기에 크롬에서 쿠키차단예정을 하고 있다고 들어서 왠지 다른 대체제가 필요할거같은데 쿠키를 사용 못하게 된다면 보통 클라이언트에서는 로컬스토리지 이외에는 대체제가 없는지 궁금합니다.

  • react
  • spring-boot
  • jpa
  • jwt
  • redux-toolkit
ultimates 댓글 1 좋아요 0 조회수 284

양방향 연관관계와 연관관계의 주인 2 - 주의점, 정리 질문

미해결

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

1. 11분 57초에 team. getMember().add(member); 구문이 있는데요. add()가 insert역할인가요? 팀의 멤버를 조회해서 멤버를 추가하라는게 혹시 무슨 뜻인가요?

  • java
  • jpa
zzzzz 댓글 2 좋아요 0 조회수 341

@OnetoOne관계에서 실전 예제에서는 왜 외래 키 부분에 unique = true를 넣지 않았는지 궁금합니다.

해결됨

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

우선 일대일 관계로 매핑된 Order와 Delivery 엔티티 코드는 다음과 같습니다. <Order 클래스> @OneToOne @JoinColumn(name = "DELIVERY_ID") private Delivery delivery; <Delivery 클래스> @OneToOne(mappedBy = "delivery") private Order order; 일대일 관계를 명시하려면 외래키에 unique 제약조건을 추가해야 된다고 알고 있는데요. 이상한 점은 유니크 제약조건을 추가하지 않아도 아래와 같이 하이버네이트가 알아서 제약조건을 추가해줬다는 것입니다. 왜 이런 현상이 발생한거죠?

  • java
  • jpa
  • unique
Ambition 댓글 1 좋아요 0 조회수 584

:단방향 연관관계 질문있습니다.

미해결

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

강의 :단방향 연관관계 20분 55초에서 쿼리가 안나온다는게 create table Team ( TEAM_ID bigint not null, TEAM_NAME varchar(255), primary key (TEAM_ID) ) 이게 안나오느다는건가요? 근데 persist로 db에 저장되서 안나온다고 하셨는데 12분에도 persist가 있는데도 쿼리가 나오는데요. 혹시 find 앞에 persist는 예외인건가요? try { Team team =new Team(); team.setName("TeamA"); em.persist(team);//영속 상태가 되면 pk값이 세팅 되고 영속 상태가 됨. Member member = new Member(); member.setUsername("member1"); // member.setTeamId(team.getId());//연관관계 매핑 배우기 전 팀의 외래키를 만들어서 멤버에 조인함. em.persist(member); tx.commit(); }catch (Exception e){ tx.rollback(); }finally { em.close();//엔티티 매니저가 내부적으로 데이터베이스를 물고 동작을 함. } emf.close(); } 단방향 연관관계 22분에서 em.flush(); em.clear(); 을 추가하면 영속성 컨테스트를 db로 보내버리고 동기화 상태에서 1차캐시가 빈상태로 조회가능하다는것은 알겠는데요. 그래서 다른점이 혹시 아래 select문인가요? Hibernate: select member0_.MEMBER_ID as MEMBER_I1_0_0_, member0_.TEAM_ID as TEAM_ID3_0_0_, member0_.USERNAME as USERNAME2_0_0_, team1_.TEAM_ID as TEAM_ID1_1_1_, team1_.TEAM_NAME as TEAM_NAM2_1_1_ from Member member0_ left outer join Team team1_ on member0_.TEAM_ID=team1_.TEAM_ID where member0_.MEMBER_ID=?

  • java
  • jpa
zzzzz 댓글 3 좋아요 0 조회수 287

2-2 h2 console connect 관련 질문 드립니다.

해결됨

쥬쥬와 함께 하루만에 시작하는 백엔드 - 스프링, 도커, AWS

처음에 잘 되다가 다시 접속할려고 보니 다음과 같이 오류가 뜨면서 connect가 안됩니다.. 그리고 h2 embedded가 아닌 server로 계속 잡힙니다

  • spring
  • git
  • docker
  • spring-boot
  • jpa
  • github
haha 댓글 1 좋아요 0 조회수 348

Product게시판 이미지에 대해서

미해결

코드로 배우는 React 19 with 스프링부트 API서버

토큰적용 후 발생하는 현상에 대해서 질문드립니다. Product게시판에 이미지에 경우, 아래와 같이 표시가되는데요 이때 토큰을 헤더에 설정 되어있지않기떄문에 {"error":"ERROR_ACCESS_TOKEN"}가 발생합니다. jwtAxios를 사용하여 처리는 가능할듯한데 문제는 결과값이 문자열로 되돌아와서 이미지표시가 좀 힘들어보이고 어떻게 처리해야할지 모르겠습니다. 이런경우 어떠한방식으로 처리하는게 좋을까요? src={`${host}/api/products/view/s_${product.uploadedFileNames[0]}`}

  • react
  • spring-boot
  • jpa
  • jwt
  • redux-toolkit
ultimates 댓글 2 좋아요 0 조회수 398

인기 태그

인프런 TOP Writers

주간 인기글