-
카테고리
-
세부 분야
백엔드
-
해결 여부
미해결
order에 빨간불이 들어 옵니다 ㅠㅠ
20.05.11 07:36 작성 조회수 179
0
//배송정보 생성
Delivery delivery = new Delivery();
delivery.setAddress(member.getAddress());
//주문상품 생성
OrderItem orderItem = OrderItem.createOrderItem(item, item.getPrice(), count);
//주문 생성
Order.createOrder(member, delivery, orderItem);
//주문 저장
orderRepository.save(order);
return order.getId(); }
오더에는 빨간불이 들어오고 생성할땐 (order()) 이런식으로 생성되어야 불이 꺼집니다.
그리고 Delivery는 녹색 네모칸이 켜져 있습니다 ㅠㅠ
어떤 문제일까요?
빨간불 확인 내용
> Task :compileJava FAILED
C:\workspace\demo\src\main\java\com\example\demo\service\OrderService.java:51: error: cannot find symbol
orderRepository.save(order);
^
symbol: variable order
location: class OrderService
C:\workspace\demo\src\main\java\com\example\demo\service\OrderService.java:52: error: cannot find symbol
return order.getId(); }
^
symbol: variable order
location: class OrderService
2 errors
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':compileJava'.
> Compilation failed; see the compiler error output for details.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
BUILD FAILED in 1s
1 actionable task: 1 executed
에러 코드 입니다.
답변을 작성해보세요.
2
김영한
지식공유자2020.05.11
안녕하세요 runa0609님^^
위에 보내주신 코드조각을 유심히 보니 알겠네요^^
//주문 생성
Order.createOrder(member, delivery, orderItem);
여기에서 다음과 같이 반환값을 받아서 사용하시면 됩니다^^
//주문 생성
Order order = Order.createOrder(member, delivery, orderItem);
앞서 말씀하신 것 처럼 privaet Order order = new Order() 처럼 맴버변수로 선언하면 안되고, 보여드린 것 처럼 지역변수로 선언해야 합니다^^
또 막히면 문의 남겨주세요. 화이팅!
0
runa0609
질문자2020.05.11
코드는 선생님꼐서 주신 내용을 그대로 복사해서 붙였습니다. 그리고 강의를 10번이상 되감기 해서 똑같이 넣어놨지만 oder를 따로 private Order order = new Order();
이런식으로 선언해 줘야지만 빨간 불이 꺼집니다.
제가 이해를 못했는지 모르지만 말씀중에
@OneToMany(mappedBy = "order", cascade = CascadeType.ALL)
private List<OrderItem> orderItems = new ArrayList<>();
이렇게 선언되면 따로 생성자를 선언 안해도 오류로 안뜬다고 하셨습니다. ㅠㅠ
억지로 저런식으로 꾸역 꾸역 고쳐가면서 하고 있는데 의도랑 달라지는거 같아 문의 드린겁니다.
0
김영한
지식공유자2020.05.11
안녕하세요. runa0609님
Delivery는 녹색 네모칸이 켜져 있습니다 ㅠㅠ -> 이 부분은 Delivery라는 단어로 검색을 하셔서 그렇습니다^^
빨간불은 자바 문법 오류입니다. 코드를 다시한번 잘 살펴봐주세요^^
답변 3