inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

JdbcSourcdConnector 에서 mariadb 드라이버 복사 질문

미해결

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

제가 ./m2 > repository > org 에 접속을 하면 여러 db가 보이는데 mariadb만 안보입니다. 도대체 이게 어떻게 된 일이죠...? 그래서 이제 MariaDB 사용하기 위해서 해당 jar 파일을 복사 해서 원하는 위치에 넣어야 하는데... 그걸 못해서 진도가 안나가고 있습니다...

  • architecture
  • spring-cloud
  • spring-boot
  • JPA
  • Kafka
  • msa
seonjun Moon 댓글 2 좋아요 0 조회수 656

배치사이즈 질문

미해결

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

질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요 16:29 질문입니다. <property name="hibernate.jdbc.batch_size" value="10"/> 이 부분이 햇갈립니다.. 이걸 하냐 안하냐 차이가 (쓰기지연시) 위 설정을 하면 DB 커넥션 한번에 10개의 쿼리를 보내준다는거고 위 설정을 안하면 쓰기지연 모드가 발동시 10번의 커넥션이 이루어 진다고 생각하면 되나요 ??

  • jpa
  • batch
  • java
  • JPA
기팝 댓글 1 좋아요 0 조회수 486

Auditing 질문 드립니다

해결됨

실전! 스프링 데이터 JPA

안녕하세요! 생성 시간, 수정 시간을 JPA Auditing으로 관리하는 것과 db에서 default, on update 조건으로 관리하는 것이 어떤 차이가 있는지 궁금합니다..!

  • java
  • spring
  • spring-boot
  • JPA
code-tree 댓글 1 좋아요 0 조회수 609

임베디드 타입과 enum타입의 차이점이 궁금합니다.

미해결

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

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/) [질문 내용] 안녕하세요 임베디드 타입 영상을 보다가 enum타입과 비슷한것 같은데 궁금한 점이 생겨서 질문드립니다. <참고용 예제로 붙여 둔 코드 입니다.> @Getter @RequiredArgsConstructor public enum PersonalPositionStatus { ST("최전방 공격수"), RW("우측 공격수"), LW("좌측 공격수"), CAM("공격형 미드필더"), CM("중앙 미드필더"), CDM("수비형 미드필더"), RB("우측 수비수"), RCB("우측 센터백"), LCB("좌측 센터백"), LB("좌측 수비수"), GK("골키퍼"); private final String value; @Entity @Getter public class TeamMemberInfo extends BaseTimeEntity { @Id @GeneratedValue @Column(name = "teamMemberInfo_id") private Long id; @Enumerated(EnumType.STRING) private PersonalPositionStatus preferPosition; 위코드는 아래 조건들을 기준으로 만들었습니다 회원이 어떤 포지션을 선호하는지 조사합니다. PersonalPositionStatus에서 최소1개에서 최대 3개까지 선택가능 추후 선택된 값은 DB에 저장 강의를 보면서 @Enumerated(EnumType.STRINNG) private PersonalPositionStatus preferPostion @Embedded private PersonalPositionStatus preferPostion 이렇게 둘 다 사용 가능할 것 같아서... 임베디드 타입과 enum타입의 차이점과 어떤 상황에서 사용해야하는지 궁금해져습니다 enum은 미리 정의해둔 값을 선택해서 사용하기 위함이고 임베디드 타입은 단일 엔티티로 나타내기 위함으로 이해하면될까요?

  • JPA
  • java
chl.cken 댓글 1 좋아요 0 조회수 618

8분 41초부터 Kafka Connect 실행이 안됨

미해결

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

제가 그대로 따라해서 하고 있는데... 왜 안되는지 잘 모르겟네요... 저는 D 드라이브에 별도로 폴더를 생성해서 작업하고 있었는데요, .\bin\windows\connect-distributed.bat .\etc\kafka\connect-distributed.properties 를 실행하면 Error: Could not find or load main class org.apache.kafka.connect.cli.ConnectDistributed Caused by: java.lang.ClassNotFoundException: org.apache.kafka.connect.cli.ConnectDistributed 위와 같은 에러가 나오니... 이유가 뭘까요?

  • spring-boot
  • spring-cloud
  • architecture
  • JPA
  • msa
  • Kafka
seonjun Moon 댓글 1 좋아요 0 조회수 787

컬렉션 엔티티 Lazy 초기화 질문드립니다.

해결됨

실전! Querydsl

안녕하세요. 서비스에서 select 해온 Entity에 toMany 연관관계 필드를 초기화 하는 부분에 대해 궁금해 질문드립니다. class AEntity{ @Id private Long id; @OneToMany(mappedBy=aEntity) private List<BEntity> bEntitise = new ArrayList<>(): } class BEntity{ @Id private Long id; @ManyToOne(fetch = FetchType.Lazy) @JoinColumn(name="a_id") private AEntity aEntity; } 이렇게 서로 양방향인 엔티티가 있다고 했을 때 class AService{ public AEntity findEntity(Long id){ AEntity findEntity = aRepository.findById(id).get(); //findEntity의 BEntityList를 lazy 초기화 하기 위한 코드 findEntity.getBEntities().size(); return findEntity; } } 서비스에서 엔티티를 찾아 컨트롤러로 리턴해주어 컨트롤러에서 dto로 변환 후, Body에 담아 보여주고 있습니다. 그런데 findEntity의 BEntities 필드를 서비스에서 초기화 시켜준 후 컨트롤러에서 DTO로 변환해야 LazyInitializationException이 발생하지 않아서 findEntity.getBEntities().size(); 이렇게 초기화를 해주는 코드를 작성하였는데 해당 코드가 뜬금없이 들어가 있는 느낌이라 보통 컬렉션 Lazy 엔티티를 초기화할 때 저렇게 사용해도 되는지 궁금해서 질문드립니다.(fetch 조인은 사용하지 않는다는 가정입니다.)

  • JPA
  • java
이하진 댓글 1 좋아요 0 조회수 264

jpa 동시성 이슈

미해결

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

안녕하세요. 주옥같은 강의 정말 잘 보고 있습니다. https://www.inflearn.com/questions/158967/%EC%95%88%EB%85%95%ED%95%98%EC%84%B8%EC%9A%94-entitymanager%EC%97%90-%EB%8C%80%ED%95%B4-%EA%B6%81%EA%B8%88%ED%95%9C-%EC%A0%90%EC%9D%B4-%EC%9E%88%EC%96%B4-%EC%A7%88%EB%AC%B8-%EB%82%A8%EA%B9%81%EB%8B%88%EB%8B%A4 이 질문에 답변 해주신 내용을 보면 결국 EntityManager는 동시성 이슈 없이 개발할 수 있다라고 해주셨는데, 한가지 궁금한게 있습니다. 만약 A, B 요청이 동시에 들어온 경우 A, B는 동일한 데이터를 가지게 될 것입니다. 이때 A 요청에서 update 후 commit으로 데이터 변경이 발생되고, 이후 B 요청에서 update 후 commit으로 데이터 변경이 발생되면 A 요청의 update는 반영이 안되는 갱신 손실 현상이 발생할 것으로 생각됩니다. 이러한 경우 lock을 이용해서 처리를 한다고 알고 있는데 혹시 이러한 경우에 대해서 3가지의 질문을 좀 드리고 싶습니다. 1. 위 예시로 적은 상황은 질문 글의 답변에서 말씀해주신 내용과는 다른 내용이라고 보는게 맞을까요? 2. 저의 지식으로는 위 예시의 경우는 lock을 이용해서 갱신 손실을 방지하는 것으로 알고 있는데, lock을 사용하는 방법 말고 다른 방법이 존재하는 걸까요? 3. 동시성 이슈 처리에서 thread-safe한 객체(Atomic 등등)와 db lock을 사용하는 방법 외에도 다른 방법이 있을까요? 저의 지식으로는 명쾌한 해답이 나오지 않아 질문 드리게 되었습니다. 미리 답변 감사드립니다!!!

  • jpa
  • 동시성이슈
  • java
  • JPA
hdr 댓글 1 좋아요 0 조회수 938

상품 수정 5:50

미해결

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

updateItemFrom.html <form th:object="${form}" method="post"> th:action 프로퍼티가 없습니다. 수정버튼을 누르셨잔아요. items/1/edit 로요청이 가는데 rest url 을 명시해준적도 없잔아요. items/1/edit 가는 요청이라는 것을 어떻게 인식하는거죠?

  • 웹앱
  • JPA
  • spring-boot
  • java
  • spring
bigger 댓글 1 좋아요 0 조회수 421

게이트웨이 오류

미해결

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

안녕하세요 유레카에 랜덤 포트로 first-service 2개 등록을 했습니다. - Postman 이용해서 api를 날려보면 Connection refused가 발생하는데 어디를 고쳐야할까요? 게이트웨이의 application.yml은 위와 같습니다. eureka yml은 위와 같습니다. First-service.yml입니다.

  • Kafka
  • msa
  • spring-cloud
  • architecture
  • JPA
  • spring-boot
fbfbf1 댓글 1 좋아요 0 조회수 544

changeTeam ... ArrayList [9:11]

해결됨

실전! 스프링 데이터 JPA

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 생각해봤는데 예제라서 상관은없지만 Team에 @OneToMany(mappedBy = "team") private List<Member> members = new ArrayList<>(); 이 부분에서 하나의 팀에 똑같은 회원이 중복안되도록 Set<Member>로 하는것도 괜찮을까요? 아니면 제가 모르는 뭔가 때문에 상관 없을까요?

  • JPA
  • spring
  • java
  • spring-boot
ightprove 댓글 1 좋아요 0 조회수 343

filter가 작동되지 않습니다.

미해결

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

- 강의에 있는 거 그대로 사용했는데 log가 뜨지를 않습니다. 디버그를 찍어보니 필터를 거치지 않는데 어떻게 해결을 해야될까요?? - 요청은 정상적으로 가고 응답도 first-service / second-serivIce에 맞게 잘 가져옵니다.

  • Kafka
  • msa
  • spring-boot
  • spring-cloud
  • architecture
  • JPA
fbfbf1 댓글 1 좋아요 0 조회수 705

RoutLocatortBuilder

미해결

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

안녕하세요 RouteLocateBuilder에 빨간 줄이 뜨는데 무시하고 해도 되는건가요?

  • Kafka
  • msa
  • architecture
  • spring-boot
  • spring-cloud
  • JPA
fbfbf1 댓글 5 좋아요 2 조회수 1061

단위 테스트 작성 후 통합 테스트의 범위

해결됨

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

안녕하세요! 강의에서 말씀해주신대로, 엔티티 레벨에서 단위테스트를 작성해보았는데 단위 테스트에서 이미 여러 케이스 별로 테스트를 작성했다고 했을 때 서비스 계층의 테스트(repository는 mock 사용)에서도 다시 한 번 모든 경계값 등을 고려하여 '빡빡한' 테스트를 작성할 필요 내지는 그럴 가치가 있다고 생각하시는지 궁금합니다. 추가로, 서비스 테스트에서 repository는 mock을 사용한다고 했을 때 repository에 대한 테스트는 생략해도 괜찮은건지 궁금합니다! 감사합니다.

  • JPA
  • spring-boot
  • 웹앱
  • spring
  • java
현상혁 댓글 1 좋아요 1 조회수 637

zuul 강의에서 gradle로 하시는 분들을 위해 공유합니다

미해결

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

zuul을 사용하기 위해서는 spring boot 버전이 2.4보다 낮아야 한다고 해서 2.3.9.RELEASE를 사용했습니다. (2.4 미만 버전은 RELEASE 가 붙더라고요) 또한, spring boot 버전이 2.4 미만일 경우 spring cloud 2020.0.0 (2.4.x, 2.5.x 에서만 사용 가능) 버전을 사용할 수 없고 Hoxton 버전을 사용해야 됨을 적용했습니다. 아래와 같이 해서 실행 성공했습니다. plugins { id 'java' id 'org.springframework.boot' version '2.3.9.RELEASE' id 'io.spring.dependency-management' version '1.0.11.RELEASE' } group = 'com.example' version = '0.0.1-SNAPSHOT' sourceCompatibility = '11' configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter-web' implementation 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-client' compileOnly 'org.projectlombok:lombok' annotationProcessor 'org.projectlombok:lombok' testImplementation 'org.springframework.boot:spring-boot-starter-test' } dependencyManagement { imports { mavenBom "org.springframework.cloud:spring-cloud-dependencies:Hoxton.RELEASE" } } tasks.named('test') { useJUnitPlatform() }

  • gradle
  • spring-boot
  • zuul
  • JPA
  • architecture
  • spring-cloud
  • msa
  • Kafka
TaeHyeon Kim 댓글 1 좋아요 8 조회수 1387

mySQL 사용 중 DB 자동 삭제가 안 됩니다.

미해결

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

안녕하세요. 저는 mySQL과 연동하여 JPA를 수강하고 있습니다. 테이블 자동 삭제 후 생성 옵션을 사용하여 강의를 듣고 있습니다. <property name="hibernate.hbm2ddl.auto" value="create"/> 근데 테이블을 삭제하려고 할 때 다른 테이블과 참조 제약조건때문에 삭제가 안 됩니다.ㅠㅠ mySQL 직접 들어가서 제약조건 삭제 후 직접 삭제하는 방법말고 자동으로 삭제할 수 있는 방법이 없을까요? Cannot drop table 'member' referenced by a foreign key constraint 'FK8rljbj20nmt1ae3qb3pu8ftym' on table 'member_product'.

  • JPA
  • java
댓글 1 좋아요 1 조회수 624

spring boot 3.0.0 에서 p6spy 적용이 안됩니다.

미해결

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

[질문 내용] jpa 강의를 spring boot 3버전으로 진행중입니다. 메뉴얼을 보고 쿼리 파라미터 로그 남기기 중에 hibernate6 org.hibernate.orm.jdbc.bind: trace로 수정 후 해결하였고, 외부 라이브러리인 p6spy는 적용이 안됩니다. p6spy 버전은 1.8.1을 사용했습니다. 해당 문제 해결방법이 있을까요?

  • jpa
  • p6spy
  • JPA
  • spring
  • spring-boot
  • 웹앱
  • spring
  • java
열스님 댓글 1 좋아요 0 조회수 3937

@Transactional 질문있습니다

미해결

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

@Transactional 지정위치에대해 궁금합니다 6:17초 부분에서 JPA의 변경을 이용할때에는 트랜잭션을 사용하는게 좋다고 하셨는데 그러면 MemberService 레벨에서 @Transactional 를 지정하는게 아닌 직접적으로 JPA를 작동시키는 MemberRepository에서 어노테이션을 지정하는게 더 좋지않을까요

  • java
  • JPA
  • spring-boot
  • 웹앱
  • spring
댓글 1 좋아요 0 조회수 499

여러 테이블 fetch join 질문 드립니다!

해결됨

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

안녕하세요! Event와 Member의 N : N 관계를 중간 테이블(EventMEmber)을 만들어서 풀어낼때 Event <-> EventMember <-> Member에서 Event를 리스트로 조회하려고 하는데 이때 EventDto에 Member의 String name 필드를 리스트로 가져오려고 합니다. 1. @Query("select distinct e from Event e " + "join fetch e.eventMember a " + "join fetch a.member") Event에 중간 엔티티인 EventMember를 fetch join하고 별칭을 사용해서 EventMember의 member를 fetch join 했습니다. fetch join에서 별칭 사용을 권장하지 않고, 컬렉션을 fetch join을 하면 추후 페이징에 문제가 생길 것 같습니다. 2. @Query(value = "select e from EventMember e " + "join fetch e.member " + "join fetch e.event") List<EventMember> eventMembers = eventMemberRepository.findAllEventArtist(); Map<Event, List<String>> events = new HashMap<>(); for (EventMember eventMember : eventMembers) { if (!events.containsKey(eventMember.getEvent())) { events.put(eventMember.getEvent(), new ArrayList<>()); } events.get(eventMember.getEvent()) .add(eventMember.getMember().getName()); } 중간 엔티티인 EventMember로 Event와 Member를 fetch join으로 가져오고 자바 코드로 원하는 응답을 만들었습니다. 혹시 둘중 더 나은 방법이나 더 좋은 방법, 제가 잘못 알고 있는 부분이 있으면 말씀 부탁드리겠습니다 ㅠㅠ

  • JPA
  • java
  • spring-boot
  • spring
code-tree 댓글 1 좋아요 0 조회수 579

Windows 환경에서 프로필 이미지 변경 Jdenticon 안보이는 현상 문의

해결됨

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

안녕하세요. Windows 환경에서 프로필 이미지 변경 화면 접속 시, 아래와 같이 Jdenticon이 안보이는 현상이 발견되네요. IDE를 통해 로컬에서 실행하여 확인할때뿐만 아니라 프로젝트를 Dockerizing한 후, 외부 서버에 컨테이너 형태로 띄운 상태에서 접속하여 동작 확인을 해도 동일한 현상이 나옵니다. 이와 반대로, Mac OS 환경에서는 모두 정상적으로 나옵니다. 위 현상과 관련하여 뭔가 Dependency가 있는 요소가 있는걸까요?? 브라우저 캐시 삭제를 해봤는데도 마찬가지네요. 구글링해봐도 관련 내용이 잘 나오지도 않고요. 어떻게 해결할 수 있을지 문의드립니다.

  • java
  • spring-boot
  • JPA
  • thymeleaf
  • spring
nmnnhlba 댓글 2 좋아요 0 조회수 852

벌크 연산 11:09 em.clear()를 하지 않았는데.....

해결됨

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

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] Team teamA = new Team(); teamA.setName("teamA"); em.persist(teamA); Team teamB = new Team(); teamB.setName("teamB"); em.persist(teamB); Member member1 = new Member(); member1.setUsername("member1"); member1.setAge(10); member1.changeTeam(teamA); em.persist(member1); Member member2 = new Member(); member2.setUsername("member2"); member2.setAge(20); member2.changeTeam(teamA); em.persist(member2); Member member3 = new Member(); member3.setUsername("member3"); member3.setAge(30); member3.changeTeam(teamB); em.persist(member3); em.flush(); em.clear(); int resultCount = em.createQuery("update Member m set m.age = 100") .executeUpdate(); Member findMember = em.find(Member.class, member1.getId()); System.out.println("findMember.getAge() = " + findMember.getAge()); em.clear()를 하지 않으면 10이 나와야 할거 같은데 100이 변경된게 영속성 컨텍스트에 반영이 된거 처럼 나오는데. 스펙이 바뀐걸까요? 아니면 제가 뭘 잘 못한걸까요? https://drive.google.com/file/d/1qzmIqCOXOeCdy5McL0_RzcbugxbmdyMV/view?usp=share_link

  • java
  • JPA
ightprove 댓글 1 좋아요 0 조회수 608

인기 태그

인프런 TOP Writers

주간 인기글