묻고 답해요
167만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
DTO 관련 질문있습니다.
안녕하세요 ~자바 개발자 경력자인데요.먼저 그냥 코딩을 이때까지 해왔지만 이렇게 기초부터 차근차근 비유해주시면서 설명해주시니 다시 개념확립이 되는것같아 감사드립니다.일단 제가 궁금한점이 SI 이나 이떄까지 회사 프로젝트를 다녀본결과 .. 예를들어 쿼리결과를 저장하고 , API 사용시 (요청 /결과)모두 이때까지 VO 라는 클래스를 만들어 사용하고 보았는데요.이전부터 DTO , VO 두개의 차이점의 개념은 알고 공부하고 알고는 있었느나 , 항상 이때까지 모든 프로젝트에서는 모든 클래스를 뒤에 UserVO , DetailVO ... 이렇게 사용하곤했는데요.아직까지도 아직경험을 못해서그런지 VO vs DTO 개념이 확립이안되네요;앞으로 프로젝트참여시 VO 를 DTO 라고 명칭만 바꿔서 사용하면될까요?
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
gateway 예외처리
안녕하세요!강사님 강의를 듣고 msa 적용하는 프로젝트를 진행중인데, 프로젝트 controller단 전역에서 발생하는 예외를 처리하고 싶어 @@RestControllerAdvice를 활용하려고 생각중입니다.msa에서 예외를 전역으로 처리하려면 gateway에서 @RestControllerAdvice를 활용해야 될까요? 아니면 각각의 마이크로서비스마다 @RestControllerAdvice를 활용해야 될까요?둘중 어떤 설계가 더 효율적일지 답변주시면 감사하겠습니다🙏🙏
-
미해결[개정판 2023-11-27] Spring Boot 3.x 를 이용한 RESTful Web Services 개발
안녕하세요 사용자 전체 목록 보기 count, users 리스트를 반환하도록 하는 것에 대한 질문입니다.
response { "count": 5, "users": [ { "id": 90001, "name": "User1", "joinDate": "2024-02-04T07:40:02.160+00:00" }, { "id": 90002, "name": "User2", "joinDate": "2024-02-04T07:40:02.163+00:00" }, { "id": 90003, "name": "User3", "joinDate": "2024-02-04T07:40:02.163+00:00" }, { "id": 90004, "name": "User4", "joinDate": "2024-02-04T07:40:02.164+00:00" }, { "id": 90005, "name": "User5", "joinDate": "2024-02-04T07:40:02.164+00:00" } ]}hashmap 에 담아서 결과값을 반환해주는 식으로 했는데..상황에 따라 다르겠지만 의도하신 정답에 가까울까요..?
-
미해결코드로 배우는 React 19 with 스프링부트 API서버
조회 관련 질문입니다.
안녕하세요 강의 잘 듣고 있습니다. 강의를 듣다가 의문이 생겨 질문 남깁니다. CartServiceImpl 에서 addOrModify() 를 보면 처음에 cino 가 null 값이 아닌 경우 cartItemRepository.findById 를 하시고, null 값인 경우에는 getCart() 후에 getItemOfPno() 를 하셨습니다. cino 가 null 이면 CartItem 이 존재하지 않는다고 생각되어 다시 getItemOfPno() 를 할 필요가 없다고 생각했는데 위와 같이 코드를 작성하신 이유가 궁급합니다. 감사합니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
MemberRepository 구현 시, findAll() 메서드 질문 드립니다.
public List<Member> findAll(){return new ArrayList<>(store.values());} 반환되는 List도 결국 인덱스에 store에 저장된 객체의 주소 값을 저장하기 때문에 해당 list를 통해서 내부 객체를 수정하게 되더라도 store내부에 있는 객체도 수정이 이루어지니깐 다를게 없다 느껴졌는데 store를 직접반환하는 것과 어떻게 다른가요?..
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
제가 강의 내용을 제대로 이해하지 못한 것 같습니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예[질문 내용]@Query("select r from Review r join fetch r.user u join fetch r.reviewReviewTags rt join fetch rt.reviewTag where r.program.id=:programId order by r.likeCounts desc") List<Review> findTop4ByProgramOrderByLikeCountsDescWithFetch(@Param("programId") Long programId, Pageable pageable);안녕하세요!영한님의 강의에서 이해했던 내용과 결괏값이 달라서 질문 올립니다.(물론 제가 이해를 잘 못했을 것 같긴합니다!)현재 User, Review, Program 을 1대 다 다대1로 나누었고 중간테이블은 Review 입니다.또한 Review , RevieReviewTag, ReviewTag 또한 1대다 다대1. 중간테이블은 ReviewReviewTag 입니다.현재 강의 내용에서 제가 이해한 것은@OneToMany 에서 성능 최적화 할 때1)페이징 처리시 : Batch 를 활용2) 페이징 처리 안할 시: distinct+ fetch JOIN 사용입니다.위 경우에서 join fetch r.reviewReviewTags 에 주목해 주세요!이는 review 와 reviewreviewTag 즉 1대다입니다.이를 fetch Join 으로 한번 발라보았습니다. 저는 위 과정에서 일단 핵심적으로 distinct 를 안붙였기 때문에 같은 리뷰에 대한 리뷰 태그가 여러 개 생겨서 중복된 결과가 나올줄 알았습니다. 실제로 위 과정에서 나온 쿼리를 복사해서 집어 넣어보니 이렇게 추가된 같은 review에 대해서 reviewTag 개수(review에 대한 1대다,2개로 고정해서 저장하였음. 따라서 두번씩 중복) 만큼 중복해서 나왔습니다. 그래서 위 과정을 DTO로 만들어서 반환하면 2개씩 중복된 결과가 나올 것이라 예상했습니다. 근데 JSON 데이터를 확인한 결과 { "reviewId": 21, "like": 0, "contents": "너무 좋았습니다0", "userPosterPath": null, "userNickName": null, "localDateTime": "2024-02-04T03:40:18.924606", "ratings": "2.5", "reviewTagNames": [ "극장에서 또 보고 싶어요", "돈이 아까워요" ] }, { "reviewId": 22, "like": 0, "contents": "너무 좋았습니다1", "userPosterPath": null, "userNickName": null, "localDateTime": "2024-02-04T03:40:18.934169", "ratings": "1.5", "reviewTagNames": [ "극장에서 또 보고 싶어요", "돈이 아까워요" ] }, { "reviewId": 23, "like": 0, "contents": "너무 좋았습니다2", "userPosterPath": null, "userNickName": null, "localDateTime": "2024-02-04T03:40:18.939567", "ratings": "2.5", "reviewTagNames": [ "극장에서 또 보고 싶어요", "돈이 아까워요" ] }, { "reviewId": 24, "like": 0, "contents": "너무 좋았습니다3", "userPosterPath": null, "userNickName": null, "localDateTime": "2024-02-04T03:40:18.948736", "ratings": "0.5", "reviewTagNames": [ "극장에서 또 보고 싶어요", "돈이 아까워요" ] } ], 얼레레 근데 왠걸정상적으로 나오는 것입니다.저는 위에 쿼리를 DTO로 만들어서 반환한 것 밖에 없는데 (pageable 안에는 PageRequest.of(0, 4)) 제가 이해한 강의 내용 대로라면 일단 핵심적으로 distinct 를 안붙였기 때문에 1대다의 다의 개수만큼 중복된(위에서는 2개) 결과가 나와야 할 것 같았는데어디서 틀린 것일까요 ㅠ 스프링 부트 버젼은 2.7.X 이며 하이버 네이트 버젼도 6이 안되는 것을 참고해주세요 ㅜ
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
제가 이해한 것이 맞느지 확인 부탁드립니당
이번에 만든 조회하는 api는 리스트로 반환해야 하기 때문ㅇ JSON이어야 하고그렇기에 함수 반환 값이 List<UserResponse>인건가요?그리고 등록 api에서 만든 users리스트 수만큼 for문 돌려서 진정한 결과 리스트(id도 포함되어있는) reponses를 만들어낸건가요..?
-
해결됨자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
수업을 들으면서 이해한 것이 맞는지 확인해주세요 ㅠㅠ
전체적인 흐름: postman(클라이언트)에서 body형식으로 보내준 user정보를 저장하는 api를 만들기. 다만 null값 허용x 1) dto역할의 UserCreateRequest.javapostman에서 body형식으로 보내준 user정보를 여기를 통하여 controller로 전달한다. 2) UserController.javauser관련된 api들이 정의되어 있는 곳. user 클래스에서 "예외 처리"를 거친 후에 들어온 값들을 add하면서 리스트에 추가한다. 3) domain의 User.java얘도 postman에서 body형식으로 보내준 user정보를 여기를 통하여 controller로 전달한다(?) 만약 name이 null값이면 거르고 아니면 저장한다. 뭔가 UserController.java랑 User.java 얘네들끼리만 서로 지지고볶는 것 같은데 왜 dto가 따로 있나 어려워요dto 없어도 domain에서 postman이랑 컨텍이 되는 거 아닌가요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
WARNING: A Java agent has been loaded dynamically (스프링 통합 테스트에서)
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. WARNING: A Java agent has been loaded dynamically (C:\Users\user\.gradle\caches\modules-2\files-2.1\net.bytebuddy\byte-buddy-agent\1.14.11\f9cb566608fbac6bc7bf54901a7aa11543a989ee\byte-buddy-agent-1.14.11.jar)WARNING: If a serviceability tool is in use, please run with -XX:+EnableDynamicAgentLoading to hide this warningWARNING: If a serviceability tool is not in use, please run with -Djdk.instrument.traceUsage for more informationWARNING: Dynamic loading of agents will be disallowed by default in a future releaseOpenJDK 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended 스프링 통합 테스트 강의에서 회원가입이나 중복 회원 테스트 실행은 잘 되는데 위의 문구가 나타나서 스프링이 도중에 중단됩니다. 강의 노트를 복붙하고 5분 40초 경에 인텔리제이를 실행했는데 위와 같은 문구가 뜹니다. 중복회원이나 회원가입 테스트는 체크 표시가 떴고 저 문구만 떴습니다. 위의 문구를 안 나오고 강사님처럼 문제없이 실행하려면 어떻게 해야 하나요?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
Failed to load ApplicationContext 오류 해결 방법
[질문 내용]회원기능 테스트에서 분명 강사님이 하신거랑 똑같이 따라했고 오타가 있을까하여 강의 소스 코드도 점검하고 복사붙여넣기 까지 했는데 같은 오류가 계속 반복해서 발생합니다.. 오류:java.lang.IllegalStateException: Failed to load ApplicationContext for [WebMergedContextConfiguration@f849027 testClass = jpabook.jpashop.service.MemberServiceTest, locations = [], classes = [jpabook.jpashop.JpashopApplication], contextInitializerClasses = [], activeProfiles = [], propertySourceDescriptors = [], propertySourceProperties = ["org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true"], contextCustomizers = [org.springframework.boot.test.autoconfigure.actuate.observability.ObservabilityContextCustomizerFactory$DisableObservabilityContextCustomizer@1f, org.springframework.boot.test.autoconfigure.properties.PropertyMappingContextCustomizer@0, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizer@5c2375a9, org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@492691d7, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@67545b57, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@1c93f6e1, org.springframework.boot.test.context.SpringBootTestAnnotation@5495e57], resourceBasePath = "src/main/webapp", contextLoader = org.springframework.boot.test.context.SpringBootContextLoader, parent = null] at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:180) at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:130) at org.springframework.test.context.web.ServletTestExecutionListener.setUpRequestContextIfNecessary(ServletTestExecutionListener.java:191) at org.springframework.test.context.web.ServletTestExecutionListener.prepareTestInstance(ServletTestExecutionListener.java:130) at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:260) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:228) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:289) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:291) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:247) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:97) at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329) at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293) at org.springframewo https://www.inflearn.com/questions/974433/java-lang-illegalstateexception-failed-to-load-applicationcontext-%EC%98%A4%EB%A5%98이 링크와 같은 문제인 것 같은데 h2를 재설치 해도 해결 되지 않네요 ㅜㅜ 도움 받을 수 있을까요? package jpabook.jpashop.service; import jpabook.jpashop.domain.Member; import jpabook.jpashop.repository.MemberRepository; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; import org.springframework.transaction.annotation.Transactional; import jakarta.persistence.EntityManager; import static org.junit.Assert.*; @RunWith(SpringRunner.class) @SpringBootTest @Transactional public class MemberServiceTest { @Autowired MemberService memberService; @Autowired MemberRepository memberRepository; @Autowired EntityManager em; @Test public void 회원가입() throws Exception { //given Member member = new Member(); member.setName("kim"); //when Long savedId = memberService.join(member); //then assertEquals(member, memberRepository.findOne(savedId)); } @Test(expected = IllegalStateException.class) public void 중복_회원_예외() throws Exception { //given Member member1 = new Member(); member1.setName("kim"); Member member2 = new Member(); member2.setName("kim"); //when memberService.join(member1); memberService.join(member2); //예외가 발생해야 한다!!! //then fail("예외가 발생해야 한다."); } } package jpabook.jpashop.repository; import jpabook.jpashop.domain.Member; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Repository; import jakarta.persistence.EntityManager; import java.util.List; @Repository @RequiredArgsConstructor public class MemberRepository { private final EntityManager em; public void save(Member member) { em.persist(member); } public Member findOne(Long id) { return em.find(Member.class, id); } public List<Member> findAll() { return em.createQuery("select m from Member m", Member.class) .getResultList(); } public List<Member> findByName(String name) { return em.createQuery("select m from Member m where m.name = :name", Member.class) .setParameter("name", name) .getResultList(); } }
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
JPA N+1문제의 장점?
최근 프로젝트를 진행하면서 연관 관계가 설정된 엔티티를 조회할 경우 조회된 데이터의 수만큼 추가 쿼리가 발생하여 데이터를 읽어오는 N+1문제를 해결할수 있었습니다.하지만 N+1문제를 단순히 문제라고 인식하고 있었지만 ORM을 개발한 개발자들이 이문제를 수정하지 않았다는건 어떠한 장점이 있지 않을까? 라는 생각을 하게 되었습니다. 혹시 N+1문제가 장점이 되는경우가 있는걸까여?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
http://localhost:8080/hello 오류가 뜹니다ㅜ
java: interface abstract methods cannot have body오류 메세지가 뜨는데 어떻게 해결을 하면 좋을끼요??
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
application.properties: Unused property
spring.datasource.url=jdbc:h2:tcp://localhost/~/test spring.datasource.driver-class-name=org.h2.Driver spring.datasource.username=sa apllication.properties 파일 내용입니다. 이게 동작을 안하는 것 같아요. unused property 라는 것을 보아 파일 안에 내용을 작성하였더라도 사용되지 않는 것 같아요. Q1. 구글링, IntelliJ 권장에는 IDEA Ultimate를 설치하라는 얘기가 있던데 기존 설치되어있는 IntelliJ 를 지우고 새롭게 다시 설치해야하는 것인가요 ?? Q2. 질문 1의 방법을 사용하지 않고 이 문제를 해결할 수 있는 방법이 있을까요 ?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
localhost,css
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.db도 연결 잘되고 css적용하는 부분에서 막혔는데요, html에 인텔리제이에 있는 크롬을 작동시키면 css가 적용되지 않는 localhost:63342로 연결이 되고 따로 localhost:8080을 입력하면 계속 연결이 거부된다고 뜨네요.. 그리고 css에 관한 질문들을 보면서 버전도 확인하고 CDN도 해보면서 해도 css가 적용이 되지를 않아요.. 코드는 제가 몇번을 확인했는데도 다 맞아서 뭐가 문제인지를 모르겠네요.. 뭐가 문제인지 알려주시면 감사하겠습니다!
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
spring boot 3 버젼애선, grafana Spring Cloud Gateway가 값을 못읽어옵니다.
https://grafana.com/grafana/dashboards/11506-spring-cloud-gateway/내용: Spring Cloud Gateway Dashboard provided by: https://github.com/spring-cloud/spring-cloud-gatewayA Gateway built on Spring Framework 5.x and Spring Boot 2.x providing routing and morespirng boot 3 이상이신 분들은 참고 바랍니다.
-
해결됨실전! 스프링 데이터 JPA
파라미터로 받은 form을 어떻게 엔터티로 반환하는지 모르겠어요...
현재 실전 데이터 JPA수강 중인데요.. 독학 중이라 토이프로젝트로 연습하는데 오늘까지 배운 JpaRepository 상속과 관련하여 회원가입 기능 구현하려 하려는데 어디 물어볼곳이 없고 뒤죽박죽이라 정리가 필요해서 장문의 질문을 남깁니다.. 일단 제가 머릿속에 정리가 안되는 것은 영한선생님께서 최대한 컨트롤러에 엔터티를 노출하지 말고 비지니스 로직을 서비스에서 최대한 구현하라고 해서 따라하는 중인데 Member를 기준으로 파라미터를 받을 MemberForm을 생성했습니다. 여기서 질문이.. MemberForm을 생성했으면 MemberDto는 따로 생성 안해도 될까요?컨트롤러를 그림과 같이 작성하였고서비스는 아래와같이 하였는데... 뭔가 서비스에서 엔터티를 직접 만지니까 찝찝한데 실무에서도 이렇게 하는지 궁금합니다..
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
MemberRepositoryTest에서 실행안됨..
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. 강의를 따라 코드를 실행하던 중 MemberRepositoryTest을 실행하면 에러가 나서 질문드립니다! https://drive.google.com/file/d/1N_7Rt-XDX3zNRHNy6JwiBLG7H2-23TLP/view?usp=sharing
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
springboote 3 관련 : zipkin 관련 로그에 traceId, spanid가 안나오는 문제가 있습니다.
안녕하세요강의에서는 zipkin 명령어창에서 실행시 접속로그가 나오며, orderservice에 주문 요청시traceid,spanid가 나오지만,저의 경우에는 zipkin 설치시 sl4fj 바인딩 오류가 있더라고요.혹시 이 사항이 orderservice에서 로그와 관련된 문제인지 아니면 gradle 설정에 관한 부분인지 어떤 부분을 확인해봐야 될까요?혹은 스프링부트 3.0버젼부터 되지 않는 부분인가요? *gradle 의존성 설정은 강의와 똑같습니다. **아래는 zipkin설치시 sl4fj 관련된 내용 입니다!SLF4J(W): No SLF4J providers were found.SLF4J(W): Defaulting to no-operation (NOP) logger implementationSLF4J(W): See https://www.slf4j.org/codes.html#noProviders for further details.SLF4J(W): Class path contains SLF4J bindings targeting slf4j-api versions 1.7.x or earlier.SLF4J(W): Ignoring binding found at [jar:nested:/C:/Users/son/zipkin.jar/!BOOT-INF/lib/log4j-slf4j-impl-2.21.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]SLF4J(W): See https://www.slf4j.org/codes.html#ignoredBindings for an explanation.
-
해결됨실전! 스프링 데이터 JPA
AttributeConverter에 대해 질문이 있습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 네2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 네3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 네[질문 내용]안녕하세요 AttributeConverter 관련 질문이 있습니다. attribute와 dbDate를 암호화 & 복호화하는 사용자 정의 컨버터를 구현했는데 실제 query를 이용하여 조회했을 때 정상적으로 암호화된 데이터가 적재된 것을 확인했습니다.다만 애플리케이션에서는 converter가 동작하니 실제로 암호화 된 데이터가 적재되었는지를 애플리케이션 레벨에서 할 수 없는데 이를 위한 테스트 작성을 어떻게 해야하는지 궁금합니다.
-
미해결스프링 시큐리티 OAuth2
refresh Token 관련해서 궁금합니다.
15:56 시점에서 Access Token이 만료되는 시점에서는 Refresh Token을 가지고Access Token이 재발급이 되신다고 들었습니다. 질문 만료된 시점에서 AccessToKen이 어떤흐름으로 진행되는지 궁금합니다. 제 생각으로는 사용자는 Client에 요청을 하면 ResourceServer에서 Refresh Token을 검증을 하고 Authorization Server에 AccessToken을 재발급후 다시 사용자에게 새로운 AccessToken+이전의 RrefreshToken 주는 방식인가요? 질문ResourceServer의 소스를 모면 token을 검증이 이루어지느 시점이 어디에서 이루어지는지 궁금합니다.