인프런 커뮤니티 질문&답변
안녕하세요 주문목록에서 회원명이 보이질않습니다
작성
·
364
0
1. 강의 내용과 관련된 질문을 남겨주세요.
2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.
(자주 하는 질문 링크: https://bit.ly/3fX6ygx)
3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.
(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)
질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)
[질문 내용]
안녕하세요 강의 잘듣고있습니다.
List<Order> orders = orderService.findOrders(orderSearch);
orders에서 getMember().getName()을 확인해보니 null값이 나옵니다. 도저히 이유를 모르겟습니다.ㅜㅜ
퀴즈
회원 가입 시 화면 입력 데이터를 엔티티 객체 대신 별도의 Form 객체로 받는 주된 이유는 무엇일까요?
데이터베이스 성능을 최적화하기 위해서
화면 종속적인 데이터나 유효성 검증 로직을 분리하기 위해서
JPA 영속성 컨텍스트와 직접적인 관계를 맺기 위해서
코드의 자동 생성 기능을 활용하기 위해서
답변 2
0
프로젝트 코드 확인해보았습니다.
우선 MySQL로 되어 있어서 h2로 진행하였습니다.
자동 키생성전략 IDENTITY에서 AUTO로 변경하였습니다.
이렇게 했을 시 NAME출력됩니다.
MySQL테이블 세팅 문제로 예상이 되는데 application.yml ddl-auto를 none에서 create로 기존 테이블 삭제 후 다시 만들어 보셔야 할 것 같아요.
회원데이터, 주문데이터 입력이 번거로워 미리 데이터를 세팅하고 확인해서 문제가 발생하지 않았었네요.
OrderService클래스의 order메서드에서 회원을 DB에서 조회하지 않고 인스턴스를 생성해서 문제가 발생합니다.
//엔티티 조회
Member member = new Member();
아래와 같이 바꿔주세요
//엔티티 조회
Member member = memberRepository.findOne(memberId);
0
안녕하세요. 김윤호님
전체 프로젝트를 압축해서 구글 드라이브로 공유해서 링크를 남겨주세요.
구글 드라이브 업로드 방법은 다음을 참고해주세요.
https://bit.ly/3fX6ygx
주의: 업로드시 권한 문제 꼭 확인해주세요
(링크 있는 사용자 공유 허용 설정을 해주셔야합니다.)
감사합니다






mysql 세팅문제는 딱히 한게 없어서 잘모르겟습니다
application.yml ddl-auto create로 계속 테스트해보았는데 똑같습니다
h2로 바꾸고
자동 키생성전략 IDENTITY에서 AUTO로 변경하여 진행해도 똑같습니다
어느부분을 다시 확인해보아야할까요...