묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
@NotEmpty, starter-validation 문제
NotEmpty 어노테이션 인식이 안됩니다(valid도 마찬가지). 질문 게시판 보고 스프링 부트 2.3부터는 직접 build.gradle에 implementation 'org.springframework.boot:spring-boot-starter-validation' 추가하고 refresh를 해주어도 아래처럼 에러가 발생합니다제 build.gradle 입니다plugins { id 'java' id 'org.springframework.boot' version '2.7.17' id 'io.spring.dependency-management' version '1.0.15.RELEASE' } group = 'jpabook' version = '0.0.1-SNAPSHOT' java { sourceCompatibility = '11' } configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' implementation 'org.springframework.boot:spring-boot-starter-web' // 캐시도 삭제해주고 하는 등 해서 hot reload 처럼 쓰이는것 같음 implementation 'org.springframework.boot:spring-boot-devtools' implementation 'com.github.gavlyukovskiy:p6spy-spring-boot-starter:1.5.6' implementation 'org.springframework.boot:spring-boot-starter-validation' compileOnly 'org.projectlombok:lombok' runtimeOnly 'com.h2database:h2' annotationProcessor 'org.projectlombok:lombok' testImplementation 'org.springframework.boot:spring-boot-starter-test' } tasks.named('test') { useJUnitPlatform() }
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
현업에서 곱하기 연산 처리하기
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)아니오 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)아니오 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)예[질문 내용]여기에 질문 내용을 남겨주세요. getTotalPrice 부분에서 가격과 개수를 이용해 곱하기를 해 종합 가격을 반환해주는데 만약 가격이 정수가 아닌 실수인 경우 소수점이 나올 텐데 이런거는 어떻게 처리하나요? 단순히 반올림하거나 잘라버리지는 않을거 같은데
-
해결됨스프링 DB 2편 - 데이터 접근 활용 기술
조회 및 읽기 트랜잭션 적용 문의
안녕하세요 트랜잭션 옵션 소개 강의를 시청 중에 궁금한 점이 있어 질문 드립니다. 데이터베이스에서 조회 및 읽기만 수행을 할 때 데이터의 변경이 없어 트랜잭션이 필요하지 않다고 생각하는데 굳이 트랜잭션을 거는 이유가 있을까요?? 보통은 클래스 레벨에 트랜잭션을 걸게되어 안에 있는 여러 메서드에도 트랜잭션이 자동으로 걸리게 되어 조회 혹은 읽기 메서드에도 트랜잭션을 의도하지 않게 걸리게 되는 것 일까요?
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
화면에 관한 메소드는 엔티티에 넣지 말라고 하셨는데
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]BookForm을 인자로 받는 생성자를 넣는 건 별로인가요? 하긴 그러면 또 RestAPI맞는 생성자, 등 지저분해 지긴 할 거 같은데..
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
MemberForm은 이미 모델에 들어가 있는거죠?
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]검증오류가 날 시 BindingResult에 의해 들어가는 게 아니라,저렇게 인자로 받는 건 이미 모델에 들어가 주는거죠?
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
값 타입 컬렉션에서 addressHistory에 대응되는 ADDRESS 테이블에 대해 질문이 있습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 아니오3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]addressHistory의 타입은 List<Address>라서 같은 값을 가진 Address 인스턴스들이 들어갈 수 있는데요. (심지어 동일한 인스턴스들도 중복으로) ADDRESS 테이블에 보시면, 4개의 컬럼들이 있죠.MEMBER_ID(PK, FK)CITY(PK)STREET(PK)ZIPCODE(PK) 여기서 쓰인 PK가 무슨 의미인 지 궁금합니다.여기 4개의 컬럼을 복합키로 사용해서, PK로 사용된다는 의미인가요? JPA가 날리는 쿼리를 봐도 PK로 지정된 컬럼은 없는 것 같습니다.자료 상의 오류인지 아니면 제가 잘 모르는 것이 있는지 궁금합니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
getOrder 안되는 이유,member 테이블 정보
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 오류가 나는데 왜 안되는건가요..? member 클래스 안에 있는 컬렉션객체를 가지고 오는 거 아닌가요?그리고 멤버 테이블에 address 임베디드 한 값이 안떠요.. 해결방법 알려주시면 감사하겠습니다!
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
버젼 오류...
h2database 버젼은 동기화했는데도 오류가 뜨네요.. 미치겠어요 ㅠ
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
circuitbreaker custom config 관련
강의를 따라하며 circuitbreaker custom config 파일을 만들었는데요. 빈에 주입하게 되실겁니다. 하고 코드에서 별다른 수정이 없는데 적용이 된건가요?빈에 따로 주입하지않아도 만들기만하면 알아서 적용이 되는건가요???
-
해결됨자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
BookLoanRequest 위치에 대해서 궁금한게 있습니다.
강의에서는 BookLoanRequest 가 도서 대출에 관련된 기능이기 때문에패키지 위치가 dto > book > request 에 위치하게 됩니다. 내부에서 로직을 수행하는 도메인은 유저에 관련된 도메인이기 때문에domain > user > loanhistory 패키지에 도메인이 위치하게 되었습니다. 제가 이해한건 기능은 책 대출과 관련되어 있지만, 내부 로직에서는 책과 유저 사이 중간 매핑 테이블을 사용하기 때문이고도메인 user 패키지내에 있는건 유저가 책을 빌리는 서비스이기 때문이고 만약 서비스가 책이 대출되었는지 안되었는지 검색하는 기능이였다면loanhistory가 도메인 book쪽에 가는거라고 생각이 되는데 제대로 이해한게 맞을까요?
-
해결됨자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
쿼리가 어떻게 전달되는 건가요??
강의 초반에 쿼리는 URL 주소에서 뒤에 붙여져서 보내진다고 알고 있습니다. 근데 @GetMapping("/user") 이런 식으로 URL을 받거나 할 때는 뒤에 작성하는 쿼리 부분이 없는데 어떻게 @RequestParam을 통해 쿼리 데이터를 받아오는지 궁금합니다. 이름과 나이를 작성할 때 그 데이터가 쿼리로 가는 거 같은데 도서 웹 페이지에서 해당 데이터가 어떻게 쿼리로 데이터를 받아오는지 궁금합니다. 아직 강의 초반이고 잘 모르다 보니 바보 같은 질문일 수도 있지만 알려주세요!!! 선생님!!
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
테스트에서 @Transactional 을 붙히지 않으면 왜 일차캐시가 작동하지 않을까요?
@Service @RequiredArgsConstructor public class MemberService { private final MemberRepository memberRepository; @Transactional public void signUp(Member member){ memberRepository.save(member); } public Member findOne(Long id){ return memberRepository.findById(id).orElseThrow(); } } @Test void signUp() { Member member1 = Member.builder() .userId("user1") .birthDay(LocalDate.now()) .password("pass") .email("aa@bb.cc") .build(); memberService.signUp(member1); Member member2 = memberService.findOne(member1.getId()); assertThat(member1).isEqualTo(member2); } 트랙잰션이 Memberservice에서 signUp을 완료 하고 트랜잭션이 끝난다고 영속성 컨텍스트가 비워지지 않다고 이해 했는데 왜 같은 id 값으로 다시 찾을 때 동일성을 보장하지 않는걸까요?
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
연관관계의 주인... 답변을 부탁드립니다.
연관관계의 주인 개념이 이해되지 않아 판도라의 상자...아니 chatGPT로 확인해보려 했습니다. 뭔가 chatGPT와 대화(?)를 이어가다가 제가 아래와 같이 질문을 던졌어요. 1. 연관관계의 주인이 N:1에서 N쪽이라면 @ManyToOne에 mappedBy를 설정하든, 설정하지 않든 상관 없이 N쪽이 주인이다.2. 반대로 연관관계의 주인이 1쪽이라면 @OneToMany에 반드시 mappedBy를 설정해야 한다.3. 스프링은 개발자가 어떠한 시나리오를 개발자가 가지고 있는지는 알 수 없기 때문에 @ManyToOne, @OneToMany, 및 mappedBy를 어떻게 사용하느냐에 따라 연관관계의 주인이 결정된다. 정말 이해가 안 가서 한 질문이었습니다. (연관관계 매핑을 3번을 들었지만 아직 제가 부족한가봐요…) 그랬더니 대답이 이랬습니다. 1. 맞습니다. 연관 관계의 주인은 대개 연관 관계의 소유자가 되는 엔티티입니다. 따라서 N:1 관계에서 N 쪽이 주인이라면 `@ManyToOne`에 `mappedBy`를 설정하든 말든 상관 없습니다. 그러나 관계의 주인이 명시적으로 지정되면 JPA에서 연관 관계를 관리할 때 더 명확하게 동작할 수 있습니다.2. 맞습니다. 1:N 관계에서 연관 관계의 주인을 1쪽으로 지정할 때 `@OneToMany`에 `mappedBy`를 설정해야 합니다. `@ManyToOne` 쪽에는 주인을 지정할 수 없습니다.3. 맞습니다. 프로그램 자체는 개발자의 의도를 인지할 수 없으며, 연관 관계의 주인을 결정하려면 `@ManyToOne`, `@OneToMany`, 그리고 `mappedBy` 어노테이션을 어떻게 사용했는지를 확인해야 합니다. 이 어노테이션들은 연관 관계의 매핑을 정의하고 어떤 엔티티가 연관 관계의 주인인지 나타냅니다. 따라서 어떻게 설정되었느냐에 따라 연관 관계의 주인이 결정됩니다. chatGPT도 실수할 때가 있어서 3번 정도 물어봤는데 거의 같은 대답을 했습니다. 그리고는 더 이상 대화가 이어지지 않았는데 이 말이 맞는지 아닌지를 아직 모르기 때문입니다. 죄송하지만 chatGPT의 대답을 신뢰해도 될 지 답변을 부탁드립니다.
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
no session관련 문의
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]37분쯤까지 강의 듣고 실습을 해 봤는데 em.close 했을 경우에 예외가 발생하지 않아 커뮤니티 보고 그 이유를 알았습니다. 하지만 또 다른 문제가 생겼습니다. em.detach(xxx)을 하기전에 System.out.println("reference = " + reference.getClass());를 했을 땐 예외가 발생했는데 getClass()를 뺐을 땐 정상작동 합니다. 기 이유가 궁금합니다.Member member1 = new Member(); member1.setUsername("member1"); em.persist(member1); em.flush(); em.clear(); Member reference = em.getReference(Member.class, member1.getId()); System.out.println("reference = " + reference); //getClass()미포함 em.detach(reference); // 예외발생X System.out.println(reference.getUsername()); tx.commit();Member member1 = new Member(); member1.setUsername("member1"); em.persist(member1); em.flush(); em.clear(); Member reference = em.getReference(Member.class, member1.getId()); System.out.println("reference = " + reference.getClass()); //getClass()포함 em.detach(reference); // 예외발생 System.out.println(reference.getUsername()); tx.commit();
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
실행이 되질 않습니다 ㅠㅠ
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.예제들을 돌려볼 수가 없습니다 jdk 문제일까요...? 답변해주시면 감사하겠습니다!
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
order의 orderItem
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]이게 주문아이템이 한번에 여러 개 일 수 있으니까,public Long order(Long memberId, List<OrderItemDto> orderItemsDto){ List<OrderItem> orderItems = new ArrayList<>(); for( OrderItemDto orderItemDto : orderItemsDto){ Item item = itemRepository.findOne(orderItemDto.itemId); int orderPrice = orderItemDto.price; int count = orderItemDto.count; OrderItem orderItem = OrderItem.createOrderItem(item, orderPrice, count); orderItems.push(orderItem); } }이런 식으로 하는 것도 괜찮죠?제가 아직 Dto를 잘 몰라서Data to Object 인 거 같은데 그러면OrderItem을 만들어서 Dto에 넣어야 하나 생각했더니 그건 왠지 아닌 것 같고.. 컨트롤러 단계에서 엔티티를 꺼내서 써야 하게 될테니..그냥 Dto를 데이터를 모아 사용하기 편한 오브젝트로 만들어주는 그런 느낌으로.. 여튼 저런 식으로 하면 잘한건가요?
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
createOrderItem의 setter 사용
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]그 지금은 예제라 그런거고,실무에서는 저렇게 많은 setter들이 밖으로 표출되지는 않죠?보통 저런 건setter를 private 등으로 한 다음에OrderItem에 비즈니스 메소드를 추가하는 게 맞는거죠?예를들어orderItem.initOrderItem(item, orderPrice, count)해서요.메소드 명은 적절한게 생각이 안나서.. 저는 setter는 가급적 쓰지 말고,연관관계 메소드 구현할 때 처럼 부득이 하게 필요할 경우만 public으로 하게끔 하는 걸로 이해하고 있어요.
-
미해결스프링 DB 2편 - 데이터 접근 활용 기술
application.properties (test) 없어도 적용이 되나요?
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 강의 중에 application.properties 파일이 없는데 로고가 적용 되는 이유를 알고 싶습니다. 강의 내용을 따라서 코드를 작성하고 test 를 돌리니깐 저는 적용이 되지 않더라고요 그래서 resoures/application.properties 를 복사해서 test 안에 붙여넣기 하니깐 로고가 찍혀서 나오는 걸 확인 했습니다. 없을 경우에도 원래 가능한 건지 아니면 제가 한게 맞은 건지 알고 싶습니다. logging.level.org.springframework.transaction.interceptor=TRACE logging.level.org.springframework.jdbc.datasource.DataSourceTransactionManager=DEBUG #JPA log logging.level.org.springframework.orm.jpa.JpaTransactionManager=DEBUG logging.level.org.hibernate.resource.transaction=DEBUG #JPA SQL logging.level.org.hibernate.SQL=DEBUG test 안에 application.propertie 에 포함되지 않았을 때 2023-11-07T08:29:26.134+09:00 INFO 14876 --- [ Test worker] hello.springtx.propagation.BasicTxTest : 외부 트랜잭션 시작2023-11-07T08:29:26.139+09:00 INFO 14876 --- [ Test worker] hello.springtx.propagation.BasicTxTest : outer.isNewTransaction()=true2023-11-07T08:29:26.139+09:00 INFO 14876 --- [ Test worker] hello.springtx.propagation.BasicTxTest : 내부 트랜잭션 시작2023-11-07T08:29:26.140+09:00 INFO 14876 --- [ Test worker] hello.springtx.propagation.BasicTxTest : inner.isNewTransaction()=true2023-11-07T08:29:26.140+09:00 INFO 14876 --- [ Test worker] hello.springtx.propagation.BasicTxTest : 내부 트랜잭션 롤백2023-11-07T08:29:26.141+09:00 INFO 14876 --- [ Test worker] hello.springtx.propagation.BasicTxTest : 외부 트랜잭션 커밋 test 포함 될 때 외부 트랜잭션 시작2023-11-07T10:18:23.081+09:00 DEBUG 23704 --- [ Test worker] o.s.j.d.DataSourceTransactionManager : Creating new transaction with name [null]: PROPAGATION_REQUIRED,ISOLATION_DEFAULT2023-11-07T10:18:23.083+09:00 DEBUG 23704 --- [ Test worker] o.s.j.d.DataSourceTransactionManager : Acquired Connection [HikariProxyConnection@369947173 wrapping conn0: url=jdbc:h2:mem:858919b0-1ec2-4a72-8bb2-e84223172ee9 user=SA] for JDBC transaction2023-11-07T10:18:23.085+09:00 DEBUG 23704 --- [ Test worker] o.s.j.d.DataSourceTransactionManager : Switching JDBC Connection [HikariProxyConnection@369947173 wrapping conn0: url=jdbc:h2:mem:858919b0-1ec2-4a72-8bb2-e84223172ee9 user=SA] to manual commit2023-11-07T10:18:23.085+09:00 INFO 23704 --- [ Test worker] hello.springtx.propagation.BasicTxTest : outer.isNewTransaction()=true2023-11-07T10:18:23.085+09:00 INFO 23704 --- [ Test worker] hello.springtx.propagation.BasicTxTest : 내부 트랜잭션 시작2023-11-07T10:18:23.086+09:00 DEBUG 23704 --- [ Test worker] o.s.j.d.DataSourceTransactionManager : Suspending current transaction, creating new transaction with name [null]2023-11-07T10:18:23.086+09:00 DEBUG 23704 --- [ Test worker] o.s.j.d.DataSourceTransactionManager : Acquired Connection [HikariProxyConnection@1178214215 wrapping conn1: url=jdbc:h2:mem:858919b0-1ec2-4a72-8bb2-e84223172ee9 user=SA] for JDBC transaction2023-11-07T10:18:23.086+09:00 DEBUG 23704 --- [ Test worker] o.s.j.d.DataSourceTransactionManager : Switching JDBC Connection [HikariProxyConnection@1178214215 wrapping conn1: url=jdbc:h2:mem:858919b0-1ec2-4a72-8bb2-e84223172ee9 user=SA] to manual commit2023-11-07T10:18:23.086+09:00 INFO 23704 --- [ Test worker] hello.springtx.propagation.BasicTxTest : inner.isNewTransaction()=true2023-11-07T10:18:23.086+09:00 INFO 23704 --- [ Test worker] hello.springtx.propagation.BasicTxTest : 내부 트랜잭션 롤백2023-11-07T10:18:23.086+09:00 DEBUG 23704 --- [ Test worker] o.s.j.d.DataSourceTransactionManager : Initiating transaction rollback2023-11-07T10:18:23.086+09:00 DEBUG 23704 --- [ Test worker] o.s.j.d.DataSourceTransactionManager : Rolling back JDBC transaction on Connection [HikariProxyConnection@1178214215 wrapping conn1: url=jdbc:h2:mem:858919b0-1ec2-4a72-8bb2-e84223172ee9 user=SA]2023-11-07T10:18:23.087+09:00 DEBUG 23704 --- [ Test worker] o.s.j.d.DataSourceTransactionManager : Releasing JDBC Connection [HikariProxyConnection@1178214215 wrapping conn1: url=jdbc:h2:mem:858919b0-1ec2-4a72-8bb2-e84223172ee9 user=SA] after transaction2023-11-07T10:18:23.087+09:00 DEBUG 23704 --- [ Test worker] o.s.j.d.DataSourceTransactionManager : Resuming suspended transaction after completion of inner transaction2023-11-07T10:18:23.087+09:00 INFO 23704 --- [ Test worker] hello.springtx.propagation.BasicTxTest : 외부 트랜잭션 커밋2023-11-07T10:18:23.087+09:00 DEBUG 23704 --- [ Test worker] o.s.j.d.DataSourceTransactionManager : Initiating transaction commit2023-11-07T10:18:23.088+09:00 DEBUG 23704 --- [ Test worker] o.s.j.d.DataSourceTransactionManager : Committing JDBC transaction on Connection [HikariProxyConnection@369947173 wrapping conn0: url=jdbc:h2:mem:858919b0-1ec2-4a72-8bb2-e84223172ee9 user=SA]2023-11-07T10:18:23.088+09:00 DEBUG 23704 --- [ Test worker] o.s.j.d.DataSourceTransactionManager : Releasing JDBC Connection [HikariProxyConnection@369947173 wrapping conn0: url=jdbc:h2:mem:858919b0-1ec2-4a72-8bb2-e84223172ee9 user=SA] after transaction 정상적으로 찍혀서 나오는 걸 볼 수 있어요 제가 제대로 못 본 건지 강의 내용에서는 application.properties 가 main 코드 안에 만 작성이 되어 있었는데 로고가 나오던데 왜 그런지 알고 싶어요
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
Page<dto>를 반환하는 api swagger
강의를 듣고 api를 만들고 있습니다. Page<dto>를 반환하는 api를 swagger를 통해 문서화하려고 하니 Page.class만 반환값의 파라미터로 전달되어 Page의 content 내에 무엇이 들어가는지 문서에는 보이지 않더군요. 혹시 swagger를 사용해 페이징 api를 문서화할 때 Page.class의 제네릭타입을 명시할 수 있는 방법이 있을까요?
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
따라하고 싶은데 지금 환경이랑 너무 다른 것 같습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]메이븐 설정또한 지금의 인텔리제이랑 다르고 h2 데이터베이스를 설정하는데도 어려움이 있습니다 .