묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결애프터이펙트 마스터 시즌1 패키지(에피소드1,2,3,4통합)
강의 1 보고 있습니다.
강의 보면서 사무실에서 뿜었습니다.거북이 설명하시는거 진짜 재밌으세요!강의도 기대됩니다.
-
해결됨따라하며 배우는 리액트 A-Z[19버전 반영]
넷플릭스 강의를 다듣고 궁금한점이있어 질문드립니다!
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 넷플릭스 로고를 누르면 새로고침이 아닌 검색페이지와 같은 다른 페이지에서 메인페이지로 다시오게 하려면 어떻게 해야할까요?? (제가 react-router-dom에 아직 이해를 못한거 같습니다.)검색페이지에서 검색을 하고 뒤로가기버튼을 누르면 타이핑한 글자 하나 하나씩 뒤로가기가 되는데 이걸 뒤로가기 했을때 바로 그 뒤에 페이지인(현재는 메인페이지로) 이동을 하려면 어떻게 해야 할까요?
-
미해결15일간의 빅데이터 파일럿 프로젝트
클라우데라 설치시 호스트 검사 오
결과가 이렇게 나와서 환경 구축하는 거 좀 알려주세요
-
해결됨스프링 핵심 원리 - 기본편
main 혹은 controller 등에서 Appconfig를 사용하는 것
[질문 내용]질문 게시판에 글을 읽다 보니public class AppConfig { public MemberService memberService() { return new MemberServiceImpl(); } public MemeberRepository memberRepository() { return new MemoryMemberRepository(); } }public class MemberServiceImpl implements MemberService { AppConfig appConfig = new AppConfig(); MemberRepository memberRepository = appConfig.memberRepository(); @Override public void join(Member member) { memberRepository.save(member); } @Override public Member findMember(Long memberId) { return memberRepository.findById(memberId); } }위와 같은 코드형식은 MemberServiceImpl이 AppConfig를 의존하는 형식이 되기 때문에 생성자를 사용하여 불필요한 의존관계를 줄인다고 보았습니다. 그렇다면 강의에서 Main 메서드나 Test 코드에서 service를 사용하기 위해 Appconfig를 사용하는 것은 Main 메서드가 AppConfig를 의존한다고 볼 수 있지 않나요? 위에서 얘기한 이유로 MemberServiceImpl에서 AppConfig를 사용하지 않는다면 Main 메서드에서는 왜 AppConfig를 사용하는지 의문입니다.
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
setFirstResult 와 setMaxResults 적용 안되는 문제
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]orderRepository 파일의 findAllWithItem 함수를 통해 데이터를 불러 올때 setFirstResult 과 setMaxResults 를 통해 페이징을 하기로 코드에 설정하였습니다.하지만 실제로 api(/api/v3.1/orders?offset=1&limit=10)를 호출해보면 jpa를 통해 만들어지는 쿼리에 offset 및 limit 이 적용되지 않고 날라갑니다. 어떤 문제가 있는지 찾아보았으나 찾지 못하여 질문 올립니다.OrderRepository.javapackage jpabook.jpashop.repository; import jpabook.jpashop.api.OrderSimpleApiController; import jpabook.jpashop.domain.Order; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Repository; import javax.persistence.EntityManager; import java.util.List; @Repository @RequiredArgsConstructor public class OrderRepository { private final EntityManager em; public void save(Order order) { em.persist(order); } public Order findOne(Long id) { return em.find(Order.class, id); } public List<Order> findAll(OrderSearch orderSearch) { return em.createQuery("select o from Order o join o.member m" + " where o.status = :status" + " and m.name like :name", Order.class) .setParameter("status", orderSearch.getOrderStatus()) .setParameter("name", orderSearch.getMemberName()) .setFirstResult(0) .setMaxResults(1000) .getResultList(); } public List<Order> findAllWithMemberDelivery() { return em.createQuery( "select o from Order o" + " join fetch o.member m" + " join fetch o.delivery d", Order.class ).getResultList(); } public List<Order> findAllWithItem() { return em.createQuery( "select distinct o from Order o" + " join fetch o.member m" + " join fetch o.delivery d" + " join fetch o.orderItems oi" + " join fetch oi.item i", Order.class ).getResultList(); } public List<Order> findAllWithItem(int offset, int limit) { return em.createQuery( "select o from Order o" + " join fetch o.member m" + " join fetch o.delivery d", Order.class) .setFirstResult(offset) .setMaxResults(limit) .getResultList(); } } OrderApiController.javapackage jpabook.jpashop.api; import ch.qos.logback.classic.sift.AppenderFactoryUsingJoran; import jpabook.jpashop.domain.Address; import jpabook.jpashop.domain.Order; import jpabook.jpashop.domain.OrderItem; import jpabook.jpashop.domain.OrderStatus; import jpabook.jpashop.repository.OrderRepository; import jpabook.jpashop.repository.OrderSearch; import lombok.Data; import lombok.RequiredArgsConstructor; import org.hibernate.cache.spi.support.AbstractCachedDomainDataAccess; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import java.time.LocalDateTime; import java.util.List; import java.util.stream.Collectors; @RestController @RequiredArgsConstructor public class OrderApiController { private final OrderRepository orderRepository; @GetMapping("/api/v1/orders") public List<Order> ordersv1() { List<Order> all = orderRepository.findAll(new OrderSearch()); for (Order order : all) { order.getMember().getName(); order.getDelivery().getAddress(); List<OrderItem> orderItems = order.getOrderItems(); orderItems.stream().forEach(o-> o.getItem().getName()); } return all; } @GetMapping("/api/v2/orders") public List<OrderDto> ordersv2() { List<Order> orders = orderRepository.findAll(new OrderSearch()); List<OrderDto> result = orders.stream() .map(o -> new OrderDto(o)) .collect(Collectors.toList()); return result; } @GetMapping("/api/v3/orders") public List<OrderDto> ordersV3( @RequestParam(value = "offset", defaultValue = "0") int offset, @RequestParam(value = "limit", defaultValue = "100") int limit ) { List<Order> orders=orderRepository.findAllWithItem(offset, limit ); List<OrderDto> result = orders.stream() .map(o -> new OrderDto(o)) .collect(Collectors.toList()); return result; } @GetMapping("/api/v3.1/orders") public List<OrderDto> ordersV3_page() { List<Order> orders=orderRepository.findAllWithMemberDelivery(); List<OrderDto> result = orders.stream() .map(o -> new OrderDto(o)) .collect(Collectors.toList()); return result; } @Data static class OrderDto { private Long orderId; private String name; private LocalDateTime orderDate; private OrderStatus orderStatus; private Address address; private List<OrderItemDto> orderItems; public OrderDto(Order order) { orderId =order.getId(); name= order.getMember().getName(); orderDate = order.getOrderDate(); orderStatus = order.getStatus(); address=order.getDelivery().getAddress(); orderItems=order.getOrderItems().stream().map(orderItem -> new OrderItemDto(orderItem)).collect(Collectors.toList()); } } @Data static class OrderItemDto { private String itemName; private int orderPrice; private int count; public OrderItemDto(OrderItem orderItem) { itemName = orderItem.getItem().getName(); orderPrice=orderItem.getOrderPrice(); count=orderItem.getCount(); } } } api 호출시 터미널에 뜨는 메시지 select order0_.order_id as order_id1_6_0_, member1_.member_id as member_i1_4_1_, delivery2_.delivery_id as delivery1_2_2_, order0_.delivery_id as delivery4_6_0_, order0_.member_id as member_i5_6_0_, order0_.order_date as order_da2_6_0_, order0_.status as status3_6_0_, member1_.city as city2_4_1_, member1_.street as street3_4_1_, member1_.zipcode as zipcode4_4_1_, member1_.name as name5_4_1_, delivery2_.city as city2_2_2_, delivery2_.street as street3_2_2_, delivery2_.zipcode as zipcode4_2_2_, delivery2_.status as status5_2_2_ from orders order0_ inner join member member1_ on order0_.member_id=member1_.member_id inner join delivery delivery2_ on order0_.delivery_id=delivery2_.delivery_id Hibernate: select order0_.order_id as order_id1_6_0_, member1_.member_id as member_i1_4_1_, delivery2_.delivery_id as delivery1_2_2_, order0_.delivery_id as delivery4_6_0_, order0_.member_id as member_i5_6_0_, order0_.order_date as order_da2_6_0_, order0_.status as status3_6_0_, member1_.city as city2_4_1_, member1_.street as street3_4_1_, member1_.zipcode as zipcode4_4_1_, member1_.name as name5_4_1_, delivery2_.city as city2_2_2_, delivery2_.street as street3_2_2_, delivery2_.zipcode as zipcode4_2_2_, delivery2_.status as status5_2_2_ from orders order0_ inner join member member1_ on order0_.member_id=member1_.member_id inner join delivery delivery2_ on order0_.delivery_id=delivery2_.delivery_id 2022-11-02 16:18:50.294 INFO 31332 --- [nio-8080-exec-1] p6spy : #1667373530294 | took 0ms | statement | connection 6| url jdbc:h2:tcp://localhost/~/jpashop select order0_.order_id as order_id1_6_0_, member1_.member_id as member_i1_4_1_, delivery2_.delivery_id as delivery1_2_2_, order0_.delivery_id as delivery4_6_0_, order0_.member_id as member_i5_6_0_, order0_.order_date as order_da2_6_0_, order0_.status as status3_6_0_, member1_.city as city2_4_1_, member1_.street as street3_4_1_, member1_.zipcode as zipcode4_4_1_, member1_.name as name5_4_1_, delivery2_.city as city2_2_2_, delivery2_.street as street3_2_2_, delivery2_.zipcode as zipcode4_2_2_, delivery2_.status as status5_2_2_ from orders order0_ inner join member member1_ on order0_.member_id=member1_.member_id inner join delivery delivery2_ on order0_.delivery_id=delivery2_.delivery_id select order0_.order_id as order_id1_6_0_, member1_.member_id as member_i1_4_1_, delivery2_.delivery_id as delivery1_2_2_, order0_.delivery_id as delivery4_6_0_, order0_.member_id as member_i5_6_0_, order0_.order_date as order_da2_6_0_, order0_.status as status3_6_0_, member1_.city as city2_4_1_, member1_.street as street3_4_1_, member1_.zipcode as zipcode4_4_1_, member1_.name as name5_4_1_, delivery2_.city as city2_2_2_, delivery2_.street as street3_2_2_, delivery2_.zipcode as zipcode4_2_2_, delivery2_.status as status5_2_2_ from orders order0_ inner join member member1_ on order0_.member_id=member1_.member_id inner join delivery delivery2_ on order0_.delivery_id=delivery2_.delivery_id; 2022-11-02 16:18:50.296 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([order_id1_6_0_] : [BIGINT]) - [4] 2022-11-02 16:18:50.296 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([member_i1_4_1_] : [BIGINT]) - [1] 2022-11-02 16:18:50.297 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([delivery1_2_2_] : [BIGINT]) - [5] 2022-11-02 16:18:50.298 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([delivery4_6_0_] : [BIGINT]) - [5] 2022-11-02 16:18:50.298 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([member_i5_6_0_] : [BIGINT]) - [1] 2022-11-02 16:18:50.299 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([order_da2_6_0_] : [TIMESTAMP]) - [2022-11-02T16:18:45.107619] 2022-11-02 16:18:50.299 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([status3_6_0_] : [VARCHAR]) - [ORDER] 2022-11-02 16:18:50.299 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([city2_4_1_] : [VARCHAR]) - [seoul] 2022-11-02 16:18:50.299 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([street3_4_1_] : [VARCHAR]) - [1] 2022-11-02 16:18:50.299 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([zipcode4_4_1_] : [VARCHAR]) - [111] 2022-11-02 16:18:50.299 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([name5_4_1_] : [VARCHAR]) - [userA] 2022-11-02 16:18:50.300 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([city2_2_2_] : [VARCHAR]) - [seoul] 2022-11-02 16:18:50.300 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([street3_2_2_] : [VARCHAR]) - [1] 2022-11-02 16:18:50.300 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([zipcode4_2_2_] : [VARCHAR]) - [111] 2022-11-02 16:18:50.300 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([status5_2_2_] : [VARCHAR]) - [null] 2022-11-02 16:18:50.300 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([order_id1_6_0_] : [BIGINT]) - [11] 2022-11-02 16:18:50.300 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([member_i1_4_1_] : [BIGINT]) - [8] 2022-11-02 16:18:50.300 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([delivery1_2_2_] : [BIGINT]) - [12] 2022-11-02 16:18:50.300 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([delivery4_6_0_] : [BIGINT]) - [12] 2022-11-02 16:18:50.300 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([member_i5_6_0_] : [BIGINT]) - [8] 2022-11-02 16:18:50.300 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([order_da2_6_0_] : [TIMESTAMP]) - [2022-11-02T16:18:45.142303] 2022-11-02 16:18:50.300 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([status3_6_0_] : [VARCHAR]) - [ORDER] 2022-11-02 16:18:50.300 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([city2_4_1_] : [VARCHAR]) - [tokyo] 2022-11-02 16:18:50.300 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([street3_4_1_] : [VARCHAR]) - [1] 2022-11-02 16:18:50.300 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([zipcode4_4_1_] : [VARCHAR]) - [111] 2022-11-02 16:18:50.300 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([name5_4_1_] : [VARCHAR]) - [userB] 2022-11-02 16:18:50.301 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([city2_2_2_] : [VARCHAR]) - [tokyo] 2022-11-02 16:18:50.301 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([street3_2_2_] : [VARCHAR]) - [1] 2022-11-02 16:18:50.301 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([zipcode4_2_2_] : [VARCHAR]) - [111] 2022-11-02 16:18:50.301 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([status5_2_2_] : [VARCHAR]) - [null] 2022-11-02 16:18:50.306 TRACE 31332 --- [nio-8080-exec-1] org.hibernate.type.CollectionType : Created collection wrapper: [jpabook.jpashop.domain.Order.orderItems#4] 2022-11-02 16:18:50.307 TRACE 31332 --- [nio-8080-exec-1] org.hibernate.type.CollectionType : Created collection wrapper: [jpabook.jpashop.domain.Member.orders#1] 2022-11-02 16:18:50.307 TRACE 31332 --- [nio-8080-exec-1] org.hibernate.type.CollectionType : Created collection wrapper: [jpabook.jpashop.domain.Order.orderItems#11] 2022-11-02 16:18:50.307 TRACE 31332 --- [nio-8080-exec-1] org.hibernate.type.CollectionType : Created collection wrapper: [jpabook.jpashop.domain.Member.orders#8] 2022-11-02 16:18:50.310 DEBUG 31332 --- [nio-8080-exec-1] org.hibernate.SQL : select orderitems0_.order_id as order_id5_5_0_, orderitems0_.order_item_id as order_it1_5_0_, orderitems0_.order_item_id as order_it1_5_1_, orderitems0_.count as count2_5_1_, orderitems0_.item_id as item_id4_5_1_, orderitems0_.order_id as order_id5_5_1_, orderitems0_.order_price as order_pr3_5_1_ from order_item orderitems0_ where orderitems0_.order_id=? Hibernate: select orderitems0_.order_id as order_id5_5_0_, orderitems0_.order_item_id as order_it1_5_0_, orderitems0_.order_item_id as order_it1_5_1_, orderitems0_.count as count2_5_1_, orderitems0_.item_id as item_id4_5_1_, orderitems0_.order_id as order_id5_5_1_, orderitems0_.order_price as order_pr3_5_1_ from order_item orderitems0_ where orderitems0_.order_id=? 2022-11-02 16:18:50.311 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicBinder : binding parameter [1] as [BIGINT] - [4] 2022-11-02 16:18:50.312 INFO 31332 --- [nio-8080-exec-1] p6spy : #1667373530312 | took 0ms | statement | connection 6| url jdbc:h2:tcp://localhost/~/jpashop select orderitems0_.order_id as order_id5_5_0_, orderitems0_.order_item_id as order_it1_5_0_, orderitems0_.order_item_id as order_it1_5_1_, orderitems0_.count as count2_5_1_, orderitems0_.item_id as item_id4_5_1_, orderitems0_.order_id as order_id5_5_1_, orderitems0_.order_price as order_pr3_5_1_ from order_item orderitems0_ where orderitems0_.order_id=? select orderitems0_.order_id as order_id5_5_0_, orderitems0_.order_item_id as order_it1_5_0_, orderitems0_.order_item_id as order_it1_5_1_, orderitems0_.count as count2_5_1_, orderitems0_.item_id as item_id4_5_1_, orderitems0_.order_id as order_id5_5_1_, orderitems0_.order_price as order_pr3_5_1_ from order_item orderitems0_ where orderitems0_.order_id=4; 2022-11-02 16:18:50.315 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([order_it1_5_1_] : [BIGINT]) - [6] 2022-11-02 16:18:50.316 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([count2_5_1_] : [INTEGER]) - [1] 2022-11-02 16:18:50.316 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([item_id4_5_1_] : [BIGINT]) - [3] 2022-11-02 16:18:50.316 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([order_id5_5_1_] : [BIGINT]) - [4] 2022-11-02 16:18:50.316 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([order_pr3_5_1_] : [INTEGER]) - [10000] 2022-11-02 16:18:50.317 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([order_id5_5_0_] : [BIGINT]) - [4] 2022-11-02 16:18:50.317 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([order_it1_5_0_] : [BIGINT]) - [6] 2022-11-02 16:18:50.319 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([order_it1_5_1_] : [BIGINT]) - [7] 2022-11-02 16:18:50.319 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([count2_5_1_] : [INTEGER]) - [2] 2022-11-02 16:18:50.319 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([item_id4_5_1_] : [BIGINT]) - [3] 2022-11-02 16:18:50.319 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([order_id5_5_1_] : [BIGINT]) - [4] 2022-11-02 16:18:50.319 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([order_pr3_5_1_] : [INTEGER]) - [10000] 2022-11-02 16:18:50.319 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([order_id5_5_0_] : [BIGINT]) - [4] 2022-11-02 16:18:50.320 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([order_it1_5_0_] : [BIGINT]) - [7] 2022-11-02 16:18:50.324 DEBUG 31332 --- [nio-8080-exec-1] org.hibernate.SQL : select item0_.item_id as item_id2_3_0_, item0_.name as name3_3_0_, item0_.price as price4_3_0_, item0_.stock_quantity as stock_qu5_3_0_, item0_.artist as artist6_3_0_, item0_.etc as etc7_3_0_, item0_.author as author8_3_0_, item0_.isbn as isbn9_3_0_, item0_.actor as actor10_3_0_, item0_.director as directo11_3_0_, item0_.dtype as dtype1_3_0_ from item item0_ where item0_.item_id=? Hibernate: select item0_.item_id as item_id2_3_0_, item0_.name as name3_3_0_, item0_.price as price4_3_0_, item0_.stock_quantity as stock_qu5_3_0_, item0_.artist as artist6_3_0_, item0_.etc as etc7_3_0_, item0_.author as author8_3_0_, item0_.isbn as isbn9_3_0_, item0_.actor as actor10_3_0_, item0_.director as directo11_3_0_, item0_.dtype as dtype1_3_0_ from item item0_ where item0_.item_id=? 2022-11-02 16:18:50.325 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicBinder : binding parameter [1] as [BIGINT] - [3] 2022-11-02 16:18:50.325 INFO 31332 --- [nio-8080-exec-1] p6spy : #1667373530325 | took 0ms | statement | connection 6| url jdbc:h2:tcp://localhost/~/jpashop select item0_.item_id as item_id2_3_0_, item0_.name as name3_3_0_, item0_.price as price4_3_0_, item0_.stock_quantity as stock_qu5_3_0_, item0_.artist as artist6_3_0_, item0_.etc as etc7_3_0_, item0_.author as author8_3_0_, item0_.isbn as isbn9_3_0_, item0_.actor as actor10_3_0_, item0_.director as directo11_3_0_, item0_.dtype as dtype1_3_0_ from item item0_ where item0_.item_id=? select item0_.item_id as item_id2_3_0_, item0_.name as name3_3_0_, item0_.price as price4_3_0_, item0_.stock_quantity as stock_qu5_3_0_, item0_.artist as artist6_3_0_, item0_.etc as etc7_3_0_, item0_.author as author8_3_0_, item0_.isbn as isbn9_3_0_, item0_.actor as actor10_3_0_, item0_.director as directo11_3_0_, item0_.dtype as dtype1_3_0_ from item item0_ where item0_.item_id=3; 2022-11-02 16:18:50.326 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([dtype1_3_0_] : [VARCHAR]) - [B] 2022-11-02 16:18:50.326 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([name3_3_0_] : [VARCHAR]) - [jap2 book] 2022-11-02 16:18:50.326 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([price4_3_0_] : [INTEGER]) - [10000] 2022-11-02 16:18:50.326 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([stock_qu5_3_0_] : [INTEGER]) - [97] 2022-11-02 16:18:50.326 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([author8_3_0_] : [VARCHAR]) - [null] 2022-11-02 16:18:50.326 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([isbn9_3_0_] : [VARCHAR]) - [null] 2022-11-02 16:18:50.326 TRACE 31332 --- [nio-8080-exec-1] org.hibernate.type.CollectionType : Created collection wrapper: [jpabook.jpashop.domain.item.Item.categories#3] 2022-11-02 16:18:50.327 DEBUG 31332 --- [nio-8080-exec-1] org.hibernate.SQL : select orderitems0_.order_id as order_id5_5_0_, orderitems0_.order_item_id as order_it1_5_0_, orderitems0_.order_item_id as order_it1_5_1_, orderitems0_.count as count2_5_1_, orderitems0_.item_id as item_id4_5_1_, orderitems0_.order_id as order_id5_5_1_, orderitems0_.order_price as order_pr3_5_1_ from order_item orderitems0_ where orderitems0_.order_id=? Hibernate: select orderitems0_.order_id as order_id5_5_0_, orderitems0_.order_item_id as order_it1_5_0_, orderitems0_.order_item_id as order_it1_5_1_, orderitems0_.count as count2_5_1_, orderitems0_.item_id as item_id4_5_1_, orderitems0_.order_id as order_id5_5_1_, orderitems0_.order_price as order_pr3_5_1_ from order_item orderitems0_ where orderitems0_.order_id=? 2022-11-02 16:18:50.327 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicBinder : binding parameter [1] as [BIGINT] - [11] 2022-11-02 16:18:50.327 INFO 31332 --- [nio-8080-exec-1] p6spy : #1667373530327 | took 0ms | statement | connection 6| url jdbc:h2:tcp://localhost/~/jpashop select orderitems0_.order_id as order_id5_5_0_, orderitems0_.order_item_id as order_it1_5_0_, orderitems0_.order_item_id as order_it1_5_1_, orderitems0_.count as count2_5_1_, orderitems0_.item_id as item_id4_5_1_, orderitems0_.order_id as order_id5_5_1_, orderitems0_.order_price as order_pr3_5_1_ from order_item orderitems0_ where orderitems0_.order_id=? select orderitems0_.order_id as order_id5_5_0_, orderitems0_.order_item_id as order_it1_5_0_, orderitems0_.order_item_id as order_it1_5_1_, orderitems0_.count as count2_5_1_, orderitems0_.item_id as item_id4_5_1_, orderitems0_.order_id as order_id5_5_1_, orderitems0_.order_price as order_pr3_5_1_ from order_item orderitems0_ where orderitems0_.order_id=11; 2022-11-02 16:18:50.328 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([order_it1_5_1_] : [BIGINT]) - [13] 2022-11-02 16:18:50.328 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([count2_5_1_] : [INTEGER]) - [2] 2022-11-02 16:18:50.328 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([item_id4_5_1_] : [BIGINT]) - [10] 2022-11-02 16:18:50.328 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([order_id5_5_1_] : [BIGINT]) - [11] 2022-11-02 16:18:50.328 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([order_pr3_5_1_] : [INTEGER]) - [20000] 2022-11-02 16:18:50.328 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([order_id5_5_0_] : [BIGINT]) - [11] 2022-11-02 16:18:50.328 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([order_it1_5_0_] : [BIGINT]) - [13] 2022-11-02 16:18:50.328 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([order_it1_5_1_] : [BIGINT]) - [14] 2022-11-02 16:18:50.328 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([count2_5_1_] : [INTEGER]) - [3] 2022-11-02 16:18:50.328 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([item_id4_5_1_] : [BIGINT]) - [10] 2022-11-02 16:18:50.328 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([order_id5_5_1_] : [BIGINT]) - [11] 2022-11-02 16:18:50.329 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([order_pr3_5_1_] : [INTEGER]) - [30000] 2022-11-02 16:18:50.329 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([order_id5_5_0_] : [BIGINT]) - [11] 2022-11-02 16:18:50.329 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([order_it1_5_0_] : [BIGINT]) - [14] 2022-11-02 16:18:50.329 DEBUG 31332 --- [nio-8080-exec-1] org.hibernate.SQL : select item0_.item_id as item_id2_3_0_, item0_.name as name3_3_0_, item0_.price as price4_3_0_, item0_.stock_quantity as stock_qu5_3_0_, item0_.artist as artist6_3_0_, item0_.etc as etc7_3_0_, item0_.author as author8_3_0_, item0_.isbn as isbn9_3_0_, item0_.actor as actor10_3_0_, item0_.director as directo11_3_0_, item0_.dtype as dtype1_3_0_ from item item0_ where item0_.item_id=? Hibernate: select item0_.item_id as item_id2_3_0_, item0_.name as name3_3_0_, item0_.price as price4_3_0_, item0_.stock_quantity as stock_qu5_3_0_, item0_.artist as artist6_3_0_, item0_.etc as etc7_3_0_, item0_.author as author8_3_0_, item0_.isbn as isbn9_3_0_, item0_.actor as actor10_3_0_, item0_.director as directo11_3_0_, item0_.dtype as dtype1_3_0_ from item item0_ where item0_.item_id=? 2022-11-02 16:18:50.330 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicBinder : binding parameter [1] as [BIGINT] - [10] 2022-11-02 16:18:50.330 INFO 31332 --- [nio-8080-exec-1] p6spy : #1667373530330 | took 0ms | statement | connection 6| url jdbc:h2:tcp://localhost/~/jpashop select item0_.item_id as item_id2_3_0_, item0_.name as name3_3_0_, item0_.price as price4_3_0_, item0_.stock_quantity as stock_qu5_3_0_, item0_.artist as artist6_3_0_, item0_.etc as etc7_3_0_, item0_.author as author8_3_0_, item0_.isbn as isbn9_3_0_, item0_.actor as actor10_3_0_, item0_.director as directo11_3_0_, item0_.dtype as dtype1_3_0_ from item item0_ where item0_.item_id=? select item0_.item_id as item_id2_3_0_, item0_.name as name3_3_0_, item0_.price as price4_3_0_, item0_.stock_quantity as stock_qu5_3_0_, item0_.artist as artist6_3_0_, item0_.etc as etc7_3_0_, item0_.author as author8_3_0_, item0_.isbn as isbn9_3_0_, item0_.actor as actor10_3_0_, item0_.director as directo11_3_0_, item0_.dtype as dtype1_3_0_ from item item0_ where item0_.item_id=10; 2022-11-02 16:18:50.330 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([dtype1_3_0_] : [VARCHAR]) - [B] 2022-11-02 16:18:50.331 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([name3_3_0_] : [VARCHAR]) - [spring2 book] 2022-11-02 16:18:50.331 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([price4_3_0_] : [INTEGER]) - [10000] 2022-11-02 16:18:50.331 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([stock_qu5_3_0_] : [INTEGER]) - [95] 2022-11-02 16:18:50.331 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([author8_3_0_] : [VARCHAR]) - [null] 2022-11-02 16:18:50.331 TRACE 31332 --- [nio-8080-exec-1] o.h.type.descriptor.sql.BasicExtractor : extracted value ([isbn9_3_0_] : [VARCHAR]) - [null] 2022-11-02 16:18:50.331 TRACE 31332 --- [nio-8080-exec-1] org.hibernate.type.CollectionType : Created collection wrapper: [jpabook.jpashop.domain.item.Item.categories#10]
-
미해결Node.js로 웹 크롤링하기
프록시 서버 연결 문제
이전 질문에도 있었는데 프록시 서버 연결이 안되는데 혹시 이유가 무엇일까요?코드를 그대로 작성해서 하여도 접속이 안되네요.ip를 1~2개가 아니라 10개 이상을 다른 것들로 해봤는데도 안되서 프록시 서버의 문제보다도 다른 문제가 있는 게 아닐까 싶어서요.(이전 문제들에 답변에는 다른 프록시 서버를 써보라고 하셔서 10개 이상 시도를 해본 뒤 질문드립니다(다른 사이트의 프록시 서버도 사용해보았습니다). 포트번호를 넣어서도 해보고 빼보고도 해보고 http도 붙여보고 별 난리를 다 해봤네요)감사합니다.+) 결과 화면감사합니다.
-
미해결[실전 게임 코드 리뷰] 유니티 클리커 게임
Destroy/Active(false,true) 관련 코루틴 질문
안녕하세요. 코루틴 관련되서 질문이 있어 질문 드리게 되었습니다.코루틴을 사용할때 GameObject를 SetActive 할 경우 actvie(false)한 뒤 다시 active(true)상태가 되면 코루틴이 작동을 하지 않는 것으로 알고 있습니다.만약 코루틴을 사용하려고 하는데 active 해야할 GameObject가 있다면 어떤식으로 사용하는 것이 가장 좋은 방법인가요?
-
미해결취미로 해킹#1(OverTheWire - Bandit)
ssh 명령어 쓸 때 권한 거부됬다고 떠요
혹시 몰라서 chmod 600 도 함 해봤는데 역시나 안되더라구요ㅠㅜbandit13 사용자 나가서 그냥 홈에서 scp -p 2220 bandit13@bandit.labs.overthewire.org:sshkey.private . 도 해봤는데 요것도 권한 거부 떠요ㅠㅜㅠ
-
미해결[개념반]배워서 바로 쓰는 SQL 쿼리
cross <-> inner join 문의
강의에서 cross join이 full outer join이라는 설명을 들었는데요실제로 해보니 cross join은 inner join과 같은 결과를 출력하고full outer join과는 결과가 다르더라구요.혹시 뭐가 맞는걸까요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
코드 상에서 speed setFloat 해도 파라미터가 변경되지 않아요!
안녕하세요!애니메이션 파라미터로 speed를 지정해주고, 코드상에서 setFloat을 사용해서 speed의 값을 이동할 때 10(_speed)으로 변경해줘도 유니티 화면에서는 강사님이 보여주신 것처럼 파라미터 값이 변하지가 않습니다.왜 그럴까요?
-
미해결Node.js에 TypeScript 적용하기(feat. NodeBird)
@mui/x-data-grid 에 사용자정의 컬럼 타입을 추가해서 사용하려고 합니다.
@mui/x-data-grid 패키지를 사용해서 type= "time" 을 추가 해 보려고 합니다. 검색을 해보니 공식문서에서는 커스터마이징 해서 사용할수있다고 하는 글을 보았습니다.제가 필요한 time picker 부분을 추가하는 부분은 찾지 못했습니다. ㅠ.ㅠhttps://mui.com/x/react-data-grid/column-definition/#custom-column-types @mui/x-data-grid 에서 기본 제공하는 타입들은 아래와 같습니다.'string' (default)'number''date''dateTime''boolean''singleSelect''actions' 위에 보시다 시피 'time' 이 없습니다... ㅠ.ㅠ 구글링 해보니 아래 부분에https://github.com/mui/mui-x/issues/5421 글에서7월12일에 time 열이 추가 되었다고 하는것 같은데..관련된 파일이 아래 gridDateColDef.ts, gridDateOperators.ts 두가지 파일로 보이며커스터마이징이 필요할것을 보여집니다.https://github.com/mui/mui-x/blob/master/packages/grid/x-data-grid/src/colDef/gridDateColDef.tsimport { gridDateComparator } from '../hooks/features/sorting/gridSortingUtils'; import { getGridDateOperators } from './gridDateOperators'; import { GRID_STRING_COL_DEF } from './gridStringColDef'; import { GridColTypeDef } from '../models/colDef/gridColDef'; import { renderEditDateCell } from '../components/cell/GridEditDateCell'; import { GridValueFormatterParams } from '../models/params/gridCellParams'; export function gridDateFormatter({ value }: GridValueFormatterParams<Date | string>) { if (value instanceof Date) { return value.toLocaleDateString(); } return value ?? ''; } export function gridDateTimeFormatter({ value }: GridValueFormatterParams<Date | string>) { if (value instanceof Date) { return value.toLocaleString(); } return value ?? ''; } export const GRID_DATE_COL_DEF: GridColTypeDef<Date | string, string> = { ...GRID_STRING_COL_DEF, type: 'date', sortComparator: gridDateComparator, valueFormatter: gridDateFormatter, filterOperators: getGridDateOperators(), renderEditCell: renderEditDateCell, getApplyQuickFilterFn: undefined, }; export const GRID_DATETIME_COL_DEF: GridColTypeDef<Date | string, string> = { ...GRID_STRING_COL_DEF, type: 'dateTime', <======= 이 타이블 수정 sortComparator: gridDateComparator, valueFormatter: gridDateTimeFormatter, filterOperators: getGridDateOperators(true), renderEditCell: renderEditDateCell, getApplyQuickFilterFn: undefined, }; colDef 폴더에 gridDateColDef.ts 파일에서는 type 이 time 인 컬럼 속성은 보이지 않습니다. mui x data grid 예시 파일을 열어서 아래https://codesandbox.io/s/d13q7i?file=/demo.tsx import * as React from "react"; import Box from "@mui/material/Box"; import { DataGrid, GridColTypeDef } from "@mui/x-data-grid"; import { randomStatusOptions, randomPrice, randomCreatedDate } from "@mui/x-data-grid-generator"; const rows = [ { id: 1, status: randomStatusOptions(), subTotal: randomPrice(), total: randomPrice(), date: randomCreatedDate(), time: "05:45" }, { id: 2, status: randomStatusOptions(), subTotal: randomPrice(), total: randomPrice(), date: randomCreatedDate(), time: "05:45" }, { id: 3, status: randomStatusOptions(), subTotal: randomPrice(), total: randomPrice(), date: randomCreatedDate(), time: "05:45" } ]; const currencyFormatter = new Intl.NumberFormat("en-US", { style: "currency", currency: "USD" }); const usdPrice: GridColTypeDef = { type: "number", width: 200, valueFormatter: ({ value }) => currencyFormatter.format(value), cellClassName: "font-tabular-nums" }; export default function CustomColumnTypesGrid() { return ( <Box sx={{ height: 300, width: "100%", "& .font-tabular-nums": { fontVariantNumeric: "tabular-nums" } }} > <DataGrid columns={[ { field: "status", width: 130 }, { field: "subTotal", ...usdPrice, editable: true }, { field: "total", ...usdPrice }, { field: "time", editable: true }, { field: "date", type: "dateTime", width: 200, editable: true } ]} rows={rows} /> </Box> ); } <DataGrid columns={[ { field: "status", width: 130 }, { field: "subTotal", ...usdPrice, editable: true }, { field: "total", ...usdPrice }, { field: "time", editable: true }, { field: "date", type: "dateTime", width: 200, editable: true } ]} rows={rows} /> 위에 일자와 시간을 선택할수 있는 셀렉터를 아래 time picker 만 나오도록 custumizing 할수 있는 팁을 주실수 있을까요?
-
미해결처음 배우는 리액트 네이티브
파이어베이스 스토리지 생성 후 파일업로드가 안되네요..ㅠ
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 코드는 깃헙에 올리고 깃헙 주소를 함께 남겨주세요.- 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 파이어베이스 스토리지 파일업로드 버튼 눌러도 파일선택하는 윈도우가 나타나지 않는데 원인이 무엇일까요?ㅠ
-
미해결따라하며 배우는 리액트 A-Z[19버전 반영]
혹시 이러한 오류들이 왜 뜨는지 알 수 있을까요??
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.위와 같은 오류와위 오류는 swiper 강의를 듣고 소스를 추가하니까 생겼습니다.기존의 소스로 하면 저 오류가 안뜨는데 단지 swiper 소스를 추가하니까 위와 같은 오류가 뜹니다..ㅠ이러한 오류들이 뜨는데 시스템에는 지장이 없는 상황이라 뇁두고 있습니다.혹시 이유를 알 수 있을까요??
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
bike sharing 시각화 질문
안녕하세요. 강의 잘 듣고 있습니다.회귀 실습 1: 자전거 대여(공유) 수요 예측 - 0110분 49초 시각화 부분에서 질문이 있는데요. Q1for 문 아래에서 저는 estimator 파라미터에 아래와 같이 mean 을 명시해주고 실행해 봤는데sns.barplot(data = bike_df, x = feature, y = 'count', estimator='mean', ax = axe[row][col])=> TypeError: 'str' object is not callable가 발생합니다. 이유가 뭔가요..? seaborn.barplot 공식 문서에도 estimator 파라미터에 'mean' 으로 적혀있는 부분이 있는데 왜 오류가 나는 걸까요? 답변 부탁드립니다.감사합니다.
-
미해결HTML+CSS+JS 포트폴리오 실전 퍼블리싱(시즌2)
해당 강의만 계속 플레이가 안되고 로딩화면만 나오고 있습니다.
강의 제목 : 실전 반응형 웹사이트 - 넷플릭스 공식사이트(1) - 제작노트 및 필수사항 강의 URL :https://www.inflearn.com/course/%EC%9B%B9-%ED%8D%BC%EB%B8%94%EB%A6%AC%EC%8B%B1-%EC%8B%A4%EC%A0%84-%EC%8B%9C%EC%A6%8C2/unit/83803?tab=community
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
스프링입문/섹션4/컴포넌트 스캔과 자동 의존관계 설정 질문
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]강의에서 나온대로 bean설정을 마쳤는데도 빨간줄이 사라지지 않고 똑같은 오류가 나옵니다.제가 잘못작성한 부분이 있을까요?이렇게 두개 모두 추가했습니다.왜 안되는건지 궁금합니다.
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
함수 정의할때 질문있습니다.
예제1에서 함수 정의 -> 프린트() -> w1을 word 로 바꾼뒤에 - 그값이 위의 first_func()으로 올라가서 print의 w1값이 goodboy로 출력되는거 같은데.. 그러면 hello ,w1 출력하고 hello goodboy 를 다시 출력하는게 아닌가요? 프로그래밍이 위에서 아래로 내려가는건줄 알았는데 전부 그런건 아닌가보네요 아 쓰다보니 생각이 나는데 혹시 처음 함수 정의때는 w1을 정의 안해줘서 출력이 안되었다가 밑에 정의를 해줘서 hello good boy로 출력되는건가요???
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
FeignClient 적용 후 빈 생성 못함
안녕하세요, 강사님 FeignClient 강의를 수강하던 도중에 다 따라 적용하고 실행을 시켰으나 빈을 생성하지 못해서 에러가 발생합니다. 서칭을 해도 뭐가 문젠지 모르겠습니다.. pom.xml<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.7.3</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.example</groupId> <artifactId>user-service</artifactId> <version>0.0.1-SNAPSHOT</version> <name>user-service</name> <description>Demo project for Spring Boot</description> <properties> <java.version>11</java.version> <spring-cloud.version>2021.0.3</spring-cloud.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope>runtime</scope> <optional>true</optional> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-data-jpa --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> <version>2.6.12</version> </dependency> <!-- https://mvnrepository.com/artifact/com.h2database/h2 --> <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <version>1.3.176</version> <scope>runtime</scope> </dependency> <dependency> <groupId>jakarta.validation</groupId> <artifactId>jakarta.validation-api</artifactId> </dependency> <dependency> <groupId>org.modelmapper</groupId> <artifactId>modelmapper</artifactId> <version>2.3.8</version> </dependency> <!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-security --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> <version>2.6.12</version> </dependency> <!-- https://mvnrepository.com/artifact/io.jsonwebtoken/jjwt --> <dependency> <groupId>io.jsonwebtoken</groupId> <artifactId>jjwt</artifactId> <version>0.9.1</version> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-config</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-bootstrap</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> <!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-starter-openfeign --> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-openfeign</artifactId> <version>3.1.0</version> </dependency> </dependencies> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>${spring-cloud.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <excludes> <exclude> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> </exclude> </excludes> </configuration> </plugin> </plugins> </build> </project> 에러 org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'userController' defined in file [C:\study\msa\user-service\target\classes\com\example\userservice\controller\UserController.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'userServiceImpl' defined in file [C:\study\msa\user-service\target\classes\com\example\userservice\service\UserServiceImpl.class]: Unsatisfied dependency expressed through constructor parameter 4; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'feignEncoderPageable' defined in org.springframework.cloud.openfeign.FeignClientsConfiguration: Unexpected exception during bean creation; nested exception is java.lang.NoClassDefFoundError: feign/form/multipart/AbstractWriter at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1372) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1222) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918) ~[spring-context-5.3.22.jar:5.3.22] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.22.jar:5.3.22] at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147) ~[spring-boot-2.7.3.jar:2.7.3] at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:734) ~[spring-boot-2.7.3.jar:2.7.3] at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) ~[spring-boot-2.7.3.jar:2.7.3] at org.springframework.boot.SpringApplication.run(SpringApplication.java:308) ~[spring-boot-2.7.3.jar:2.7.3] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306) ~[spring-boot-2.7.3.jar:2.7.3] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1295) ~[spring-boot-2.7.3.jar:2.7.3] at com.example.userservice.UserServiceApplication.main(UserServiceApplication.java:18) ~[classes/:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na] at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na] at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49) ~[spring-boot-devtools-2.7.3.jar:2.7.3] Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'userServiceImpl' defined in file [C:\study\msa\user-service\target\classes\com\example\userservice\service\UserServiceImpl.class]: Unsatisfied dependency expressed through constructor parameter 4; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'feignEncoderPageable' defined in org.springframework.cloud.openfeign.FeignClientsConfiguration: Unexpected exception during bean creation; nested exception is java.lang.NoClassDefFoundError: feign/form/multipart/AbstractWriter at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1372) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1222) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) ~[spring-beans-5.3.22.jar:5.3.22] ... 24 common frames omitted Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'feignEncoderPageable' defined in org.springframework.cloud.openfeign.FeignClientsConfiguration: Unexpected exception during bean creation; nested exception is java.lang.NoClassDefFoundError: feign/form/multipart/AbstractWriter at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:555) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918) ~[spring-context-5.3.22.jar:5.3.22] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.22.jar:5.3.22] at org.springframework.cloud.context.named.NamedContextFactory.createContext(NamedContextFactory.java:155) ~[spring-cloud-context-3.1.3.jar:3.1.3] at org.springframework.cloud.context.named.NamedContextFactory.getContext(NamedContextFactory.java:108) ~[spring-cloud-context-3.1.3.jar:3.1.3] at org.springframework.cloud.context.named.NamedContextFactory.getInstance(NamedContextFactory.java:164) ~[spring-cloud-context-3.1.3.jar:3.1.3] at org.springframework.cloud.openfeign.FeignClientFactoryBean.get(FeignClientFactoryBean.java:344) ~[spring-cloud-openfeign-core-3.1.3.jar:3.1.3] at org.springframework.cloud.openfeign.FeignClientFactoryBean.feign(FeignClientFactoryBean.java:123) ~[spring-cloud-openfeign-core-3.1.3.jar:3.1.3] at org.springframework.cloud.openfeign.FeignClientFactoryBean.getTarget(FeignClientFactoryBean.java:413) ~[spring-cloud-openfeign-core-3.1.3.jar:3.1.3] at org.springframework.cloud.openfeign.FeignClientFactoryBean.getObject(FeignClientFactoryBean.java:402) ~[spring-cloud-openfeign-core-3.1.3.jar:3.1.3] at org.springframework.cloud.openfeign.FeignClientsRegistrar.lambda$registerFeignClient$0(FeignClientsRegistrar.java:235) ~[spring-cloud-openfeign-core-3.1.3.jar:3.1.3] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainFromSupplier(AbstractAutowireCapableBeanFactory.java:1249) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1191) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) ~[spring-beans-5.3.22.jar:5.3.22] ... 38 common frames omitted Caused by: java.lang.NoClassDefFoundError: feign/form/multipart/AbstractWriter at java.base/java.lang.ClassLoader.defineClass1(Native Method) ~[na:na] at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1016) ~[na:na] at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:174) ~[na:na] at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:800) ~[na:na] at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(BuiltinClassLoader.java:698) ~[na:na] at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:621) ~[na:na] at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:579) ~[na:na] at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178) ~[na:na] at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521) ~[na:na] at java.base/java.lang.Class.forName0(Native Method) ~[na:na] at java.base/java.lang.Class.forName(Class.java:398) ~[na:na] at java.base/sun.reflect.generics.factory.CoreReflectionFactory.makeNamedType(CoreReflectionFactory.java:114) ~[na:na] at java.base/sun.reflect.generics.visitor.Reifier.visitClassTypeSignature(Reifier.java:125) ~[na:na] at java.base/sun.reflect.generics.tree.ClassTypeSignature.accept(ClassTypeSignature.java:49) ~[na:na] at java.base/sun.reflect.generics.visitor.Reifier.reifyTypeArguments(Reifier.java:68) ~[na:na] at java.base/sun.reflect.generics.visitor.Reifier.visitClassTypeSignature(Reifier.java:138) ~[na:na] at java.base/sun.reflect.generics.tree.ClassTypeSignature.accept(ClassTypeSignature.java:49) ~[na:na] at java.base/sun.reflect.generics.repository.ConstructorRepository.computeParameterTypes(ConstructorRepository.java:111) ~[na:na] at java.base/sun.reflect.generics.repository.ConstructorRepository.getParameterTypes(ConstructorRepository.java:87) ~[na:na] at java.base/java.lang.reflect.Executable.getGenericParameterTypes(Executable.java:279) ~[na:na] at java.base/java.lang.reflect.Method.getGenericParameterTypes(Method.java:330) ~[na:na] at org.springframework.core.MethodParameter.getGenericParameterType(MethodParameter.java:513) ~[spring-core-5.3.22.jar:5.3.22] at org.springframework.core.MethodParameter.getNestedParameterType(MethodParameter.java:553) ~[spring-core-5.3.22.jar:5.3.22] at org.springframework.beans.factory.config.DependencyDescriptor.getDependencyType(DependencyDescriptor.java:411) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.DefaultListableBeanFactory$DependencyObjectProvider.<init>(DefaultListableBeanFactory.java:1980) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1302) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:541) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.22.jar:5.3.22] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.22.jar:5.3.22] ... 66 common frames omitted Caused by: java.lang.ClassNotFoundException: feign.form.multipart.AbstractWriter at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581) ~[na:na] at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178) ~[na:na] at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521) ~[na:na] ... 99 common frames omitted Process finished with exit code 0
-
미해결Flutter 중급 1편 - 클린 아키텍처
dotenv를 사용한 부분을 테스트하고 싶습니다.
dotenv를 사용한 부분은 테스트 시 못 읽어오나요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
인터셉터 호출
인터셉터-요청 로그 진행하다 궁금한 점이 있어서요.LogInterceptor 클래스 세팅하고WebConfig에 WebMvcConfigurer 인터페이스상속받고 addInterceptors 구현을 하는데요.excludePathPatterns에 /error를 안 넣으면필터에서는 정상적으로 해당 url이 나오는데인터셉터에서는 모조리 /error로 url이 나오더라구요이유가 무엇인지 알 수 있을까요?.excludePathPatterns("/css/**", "/*.ico", "/error");