다음 영상에서 문제 풀거라고 하셨는데 문제풀이 영상이 누락되어있는 것 같습니다 최소공통조상 빠르게 구하기 마지막부분이나 여러 영상들에서 다음영상에서 문제 풀어볼거라고하셨는데 문제풀이 영상이 빠져있는 것 같아요 ㅠ ! 유튜브에 들어가봐도 자바 문제풀이 영상을 찾을 수 없었습니다ㅜ 확인해주실 수 있나요?
한다 제보를 KILL-9, 바란다 응답 [제보 정보 수집중... 🤖 ] [KILL-9@user]$ cd 커리큘럼/섹션4/3장/작전1 해킹 주문 데이터베이스 정찰 작전에서 프락치를 발견했다 JdbcPagingItemReader 가 whereClause에 거짓 증거를 제출해서 혼란을 야기했다 status = 'READY_FOR_SHIPMENT' 이고 not null 이어햐 하지 않을까 생각한다 CANCELLED 가 아닌 것 같다 다시 보니 작전에 혼동이 있는 것 같다 확인요망 🔥 유해 게시물 처형 작전 시스템에도 버그가 발견됐다 전체코드에서 JpaCursorItemReader 에 queryString 조건이 잘못된 것 같다 이후의 예시 코드들은 잘돼있지만 전체코드 복사하는 녀석들이 많기 때문에 처리부탁한다 [추가 처형 요청... 💀 ] [KILL-9@user]$ cd 커리큘럼/섹션3/2장/작전1 글 쓰는 김에 한 녀석도 추가 제보하겠다 FlatFileItemReader 고정길이 예제도 처형 부탁한다 소제목인 .columns() 예제 이미지가 정확하다 하지만 예시코드라고 적혀있는 Range는 틀렸다 이것은 KILL-9 후보생의 혼란만 가중시킬뿐이다
현재 댓글 무한 depth까지 수강했는데 snowFlake를 통해 Id값을 넣고 있는데 해당 부분을 service단에서 entity.create를 통해 구현하는 점에 대해 궁금증이 생겼습니다. 이런 방식으로 계속 진행이 되면 보일러 플레이트방식이 되는것 같은 느낌이 들어서 차라리 커스텀 IdentifierGenerator를 통해 Entity안에서 값을 넣어주면 어떨까하고 생각을 해보게 되었습니다. 이렇게 진행하면 기존 service를 통해 진행하는 것보다 비효율적일까요?? 두개의 차이점이 궁금합니다
예제를 따라하고 있는데요 public ChatClient chatClient(ChatClient.Builder chatBuilder){ return chatBuilder .defaultAdvisors(new MessageChatMemoryAdvisor(new InMemoryChatMemory()).build(); } 이부분이 에러가 나서 MessageChatMemoryAdvisor를 생성을 못하는데요.. 어떻게 해야 할까요? spring ai버전이 1.0.0버전인데 버전에 따라 코드가 바뀌는것 같은데요..
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요 선생님 강의를 통해 배움을 얻고 프로젝트를 하며 성장 하고 있습니다. 프로젝트를 하던중 영속성 전이와 관련하여 궁금한점이 생겨 질문 드립니다. ( 영한님 JPA 강의에 질문 하는것이 맞으나 JPA는 책을 사서 여기에 질문 드립니다 ㅠㅠ ) 회원과 주소는 양방향 관계를 두고 있습니다. 회원과 주소를 연관관계 매핑하여 회원을 저장하면 영속성 전이를 통해 주소가 같이 저장 됩니다. 그런데 문제는 둘다 영속 상태일때 주소를 제거 하면 delete 쿼리가 나가지 않았습니다. 이런 저런 실험을 해본 결과 영속성 전이 때문에 삭제 되지 않은것으로 보았습니다. 영속 대상인 주소를 삭제 하려고 했으나 회원의 연관관계인 Address는 그대로 있기 때문에 영속성 전이로 인해 삭제가 되지 않았다로 판단 하였습니다. 영속성 컨텍스트에 주소만 있을 경우 주석 으로된 부분을 실행하면 영속성 전이를 수행할 회원이 없기 때문에 delete 쿼리가 나가게 됩니다. 제가 생각한게 맞는지 궁금하여 질문 드립니다. 밑의 예시의 경우 회원이 영속 상태인 경우 영속성 전이 때문에 연관관계를 끊지 않으면 영속 대상인 주소가 delete가 안되는게 맞을까요? @DisplayName("회원과 연관된 주소를 제거할때 자식인 주소를 제거 하면 delete 쿼리가 발생하지 않는다.") @Test void deleteAddress() { //given User user = new User("회원"); Address address = new Address("주소"); address.connectUser(user); //when em.persist(user); em.flush(); boolean isAddressManaged = em.contains(address); System.out.println("Address is managed? " + isAddressManaged); addressRepository.deleteById(address.getId()); em.flush(); em.clear(); //then //Address findAddress = addressRepository.findById(address.getId()).orElseThrow() //addressRepository.deleteById(findAddress.getId()); //em.flush(); } [ 회원 ] @Getter @Setter @Table(name = "users") @Entity public class User { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @OneToOne(mappedBy = "user", cascade = CascadeType.PERSIST) private Address address; protected User() {} private String name; public void connectAddress(Address address){ this.address = address; } } @Getter @Entity public class Address { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @OneToOne(fetch = FetchType.LAZY) @JoinColumn(name = "user_id") private User user; private String addressName; protected Address() {} public Address(String addressName) { this.addressName = addressName; } public void connectUser(User user){ this.user = user; user.connectAddress(this); } }
학습 관련 질문을 최대한 상세히 남겨주세요! 고민 과정도 같이 나열해주셔도 좋습니다. 먼저 유사한 질문이 있었는지 검색해보세요. 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 항상 좋은 강의 잘 보고 있습니다. 다름이 아니라, 현재 강사님 프로젝트 구조가 정확하게 실무에서 사용하는 MSA 프로젝트가 맞나요? 아니면 , 모놀리식 기반 멀티 모듈 구조를 통해 MSA 학습을 위한 구조인가요? 현재 강의를 보면서 토이 프로젝트로 MSA 학습을 진행해보려고 하는데, 해당 구조가 실제 현업에서 사용하는 구조가 맞는지 궁금합니다 !
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 기본적인 내용입니다 헷갈리네요 메서드 작성시 객체 성성 후 메서드를 생성시 static void initMemeber( MemberInit member, String name, int age, int grade) { 이며 클래스 내부에 메서드 생성시에는 void initMemeber(String name, int age, int grade) { 입니다 이때 객체 생성 후 클래스 외부에 메서드 생성 시에 매개변수안에 MemberInit member는 왜 들어가는건가요??
lock flag로 스레드가 인스턴스에 접근한다고 하셨습니다. 그런데 멀티스레드에서는 동시에 인스턴스에 접근하여 각각 코어에서 연산을 하기 때문에 동기화 문제가 발생합니다. 그럼 항상 lock flag을 획득하고 접근하는게 아닌가요? 그리고 스레드가 함수 단위라 하셨는데, write 과정을 cpu 스케줄링 관점에서 생각하면 Time slice 내에서 load, read 하고 기다린 뒤 다시 자신의 차례가 왔을 때 memory에 write한다고 이해했는데 맞나요? 또한 synchronized를 이용하면 원자성이 보장된다고 하셨습니다. 그렇다면 복잡한 로직과 관계 없이 synchronized를 붙이면 스케줄링 없이 한방에 실행되는 건가요? 마지막으로.. 서버를 겉햝기식으로 공부하다가 회의감이 들어 널널한 개발자님 강의를 들으며 jvm, 자바부터 다시 공부하고 있습니다. 하지만 공부를 하면서 불안하고 회의감이 듭니다. 왜 이런 감정이 드나 생각해보았더니 jvm, 멀티스레드를 프로젝트에 어떻게 녹여서 포트폴리오화 해야 할지 모르는 막막함 때문이었습니다. 제 생각에 조언, 지적을 해주실 수 있나요?
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 섹션 5 강의 중 자바 코드로 MemberService와 MemberRepository를 스프링 Bean으로 등록 후에 MemberController에서 MemberService객체를 사용할 때 @Autowired 어노테이션을 사용했는데 MemberService에서 MemberRepository 객체를 사용할 때 @Autowired 어노테이션이 없던데 이유가 무엇인지 궁금합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요! 패키지구조에 관련하여 문의드립니다! 강의에서는 controller service .. 패키지가 이렇게 나뉘어져있는데 member - controller - service order - controller - service ... 이런 패키지구조도 있어 질문드립니다! 프로젝트, 기업마다 규칙이 다르겠지만 보통 보편적으로 어떤 패키지구조를 사용하게 되나요??
질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 안녕하세요 갓영한님 자바에서 이렇게 그룹핑 하는 경우도 있을까요 ? 실무에서 보통 쿼리쪽에서 하지않나용??
안녕하세요. 해당 강의를 통해 다양한 락의 특징과 장단점을 배울 수 있어 현재 프로젝트에 적용할 수 있었습니다. 적용한 부분: 상품 재고 감소에 대한 동시성 제어 적용했던 락: 네임드 락 적용한 이유: 상품 테이블에 재고 컬럼이 포함되어 있기 때문에 비관적 락을 적용할 경우, 해당 row를 단순 조회하거나 다른 비즈니스 로직에서 락 대기 등으로 인해 영향을 미칠 수 있을 것이라 판단하여 네임드 락을 적용했습니다. 궁금한 점: 적용 이후 테스트 과정에서 알게 된 점이, MySQL의 단순 select 쿼리는 FOR UPDATE 로 인해 락이 걸린 row를 조회하더라도 락 대기나 차단이 발생하지 않는다는 사실이었습니다. 또한 네임드 락과 비관적 락 간의 부하 테스트 결과, 성능 차이가 거의 없다는 점에서, 정합성이 중요한 주문/결제 상황이라면 낙관적 락은 배제하고, 오히려 네임드 락보다는 비관적 락을 적용하는 것이 더 적절하지 않을까 하는 의문이 들었습니다. 질문: 상품 테이블에 재고 컬럼이 포함되어 있다고 하더라도 단순 조회 성능에 영향을 주지 않는다는 점에서, 네임드 락보다 비관적 락을 적용하는 것이 더 타당한 선택일지 궁금합니다. 실무적인 기준에서 어떤 판단이 더 적절할지 조언 부탁드립니다.