묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
테스트할때 이해한게 맞는지, 또 이 문장이 왜 들어가있는지 궁금합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)네2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)네3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)네[질문 내용]1-1)MemberServiceIntegrationTest 파일에서@Autowired MemberService "memberService"@Autowired MemberRepository "memberRepository"임의로 제가 "" 를 표시했는데,위 내용의 의미가 앱이 실행될때 @configuration 에서 @Bean 된 MemberService,MemberRepository 메서드를 찾아서 호출한다음 반환값을 제가 임의로 ""표시한 memberService, memberRepository 로 넣어주는걸로 이해했는데 맞는지 궁금합니다!1-2)test파일에서 @Autowired MemberService memberService 이 문장이 실행되면 스프링 빈에서 땡겨온 (db에 연결된)멤버 서비스 객체를 이용할 수 있다고 이해했는데요, @Autowired MemberRepository memberRepository 이 문장은 왜 들어가있는지 이해가 안갑니다. 필요한 문장인가요?? 2). 테스트라는게 저는 처음에 다른 특별한 무언가로 처음부터 규격이 정해져 있고 뭐 그런건줄 알았는데, 그냥 test 폴더에 test 객체를 생성해서 돌리는거같다고 생각되서요. 어렵게 생각 안해도 되겠죠?? 3) 강의 듣다보니 Jdbc 쪽은 이해가 잘 안되는데 가볍게 받아드리고 JPA 부터 신경써도 되겠죠?다소 긴 질문 죄송합니다 ㅠㅠ
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
SpringConfig에서 자동 주입을 할 수 없습니다. 'EntityManager' 타입의 bean을 찾을 수 없습니다. 의 문제
위와 같은 오류가 있습니다. 이 상태에서 통합테스트 회원가입()을 실행하면이렇게 실패합니다. 해결 방법을 잘 모르겠어서 질문드립니다.
-
미해결스프링 부트 웹 개발 입문 - 따라하며 배우기
Back-end 에서 View(Thymeleaf) 에 데이타를 던지자. 질문
파싱 에러가 발생하는 것 같은데 원인을 잘 모르겠습니다.에러는 템플릿 구문 분석 중 오류가 발생을 하였습니다. 필드 ${prod.No}에서 발생을 하고 있는데.우선 설명을 주신 내용 그대로 오프젝트 get() 타입으로 반환할 때 파싱에서 결괏값을 보여주지 못하고 백지로 뿌리고 있는 상태이며, 필드 타입으로 반환할 때인식을 하지 못하는 문제가 발생을 하고 있습니다.물론 필드의 대소문자는 영상에서 적용한 No 과 동일하며 SpringEL의 경우도 동일한 ${prod.No}인데 해결 방법이 없을까요?해결 : map.clear() 해제하여 정상적인 결과가 나오고 있습니다.
-
미해결실전! 스프링 데이터 JPA
Unknown entity 에러
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]선생님 안녕하세요 현재 스프링 데이터 JPA와 DB 설정, 동작확인 15:43 부분 강의 수강중입니다.코딩은 다음과 같이 진행 하였는데요 Unknown entity 오류가 나오고 있습니다 ㅠㅠ 어떻게 처리하면 될까요 ? ㅠnknown entity: com.sun.proxy.$Proxy100; nested exception is java.lang.IllegalArgumentException: Unknown entity: com.sun.proxy.$Proxy100org.springframework.dao.InvalidDataAccessApiUsageException: Unknown entity: com.sun.proxy.$Proxy100; nested exception is java.lang.IllegalArgumentException: Unknown entity: com.sun.proxy.$Proxy100
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
hellospring 처음 시작 실행 오류
No matching variant of org.springframework.boot:spring-boot-gradle-plugin:3.0.4 was found. The consumer was configured to find a runtime of a library compatible with Java 8, packaged as a jar, and its dependencies declared externally, as well as attribute 'org.gradle.plugin.api-version' with value '7.6.1' but: java 버전 8을 깔아서 그런 건지 잘 모르겠지만 실행이 안 되네요 ㅜ
-
미해결호돌맨의 요절복통 개발쇼 (SpringBoot, Vue.JS, AWS)
인증요청시 문의드립니다.
강의진행중 궁금한게 있어서 문의드렸습니다!강의중에 토큰이 탈취될수도 있다고하셔서 String jws = Jwts.builder() .setSubject(String.valueOf(userId)) .signWith(key) .setIssuedAt(new Date()) .compact();코드를 넣어주셨습니다. 매번 다른 accessToken값이 나올수 있도록이요! 그 결과 로그인 시마다 매번 다른 토큰값이 나오는데, 로그인을 하고나서 기존의 토큰값으로 /foo 메소드를 호출하여도 인증이 되는데 왜 그런걸까요??1. 로그인시 abc토큰이 나와서 abc토큰으로 /foo 컨트롤러를 호출함 인증됨2. 또 한번 로그인시 abcd토큰이 나옴. 그런데 이전 로그인 토큰이였떤 abc토큰으로 /foo 컨트롤러를 호출하여도 인증 성공됨.왜 그런지 궁금합니다!
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
강의 중에 등장한 구글 확장프로그램 이름 문의
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]View 환경설정 강의에서 3분 45초에 공식 문서를 볼 때 오른쪽 위에 등장하는 구글 확장 프로그램 이름이 어떻게 되나요?
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
AOP 출력시간 개수
6분20초 경 강사님께서는 START가 3개 나오는데 전 1개만 나옵니다. 상관없는걸까요??
-
미해결호돌맨의 요절복통 개발쇼 (SpringBoot, Vue.JS, AWS)
시즌3 예정에 열렬한 환호를 보냅니다.
시즌3 예정에 열렬한 환호를 보냅니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
h2 회원정보 저장 오류
회원가입과 돌아오는 페이지는 정상으로 작동은 하나 h2에 저장 되지도 않고 강의 내용처럼 insert 문이 나오지 않습니다https://drive.google.com/file/d/1Mnh-hxiK1AQlaSlFOuuQrzRgAT0lEI9t/view?usp=sharing
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
findByName() 테스트 시 NoSuchElementException 에러
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)예[질문 내용]안녕하세요 강의 잘 보고 있습니다 ㅎㅎ다름이 아니라 저는 getter와 setter를 따로 작성하지 않고 Lombok을 이용해서 getter, builder 어노테이션으로 getter와 setter를 생성했는데요save() 테스트는 정상적으로 통과하지만findByNmae() 테스트 시에는 아래와 같은 오류가 발생합니다. 그리고 아래 처럼 get() 메서드에 노란 점선이 표시되며 옆에 이상한 문구가 뜨는데 lombok을 사용해서 발생한 오류일까요 ??스프링 부트 버전은 강의와 똑같이 2.3.1 버전을 사용중이며각 클래스별 코드는 아래와 같습니다.Memberpackage com.example.hellospring.domain; import lombok.Builder; import lombok.Getter; @Getter public class Member { private Long id; private String name; @Builder public Member(Long id, String name) { this.id = id; this.name = name; } } MemberRespositorypackage com.example.hellospring.repository; import com.example.hellospring.domain.Member; import java.util.List; import java.util.Optional; public interface MemberRepository { // 회원 저장 Member save(Member member); // id로 회원 찾기 Optional<Member> findById(Long id); // Optional 타입은 값이 Null일 때 null 반환 // name으로 이름 찾기 Optional<Member> findByName(String name); // 전체 찾기 List<Member> findAll(); } MemoryMemberRepositorypackage com.example.hellospring.repository; import com.example.hellospring.domain.Member; import java.util.*; public class MemoryMemberRepository implements MemberRepository { private static Map<Long, Member> store = new HashMap<>(); private static long sequence = 0L; @Override public Member save(Member member) { Member.builder() .id(++sequence) .build(); store.put(member.getId(), member); return member; } @Override public Optional<Member> findById(Long id) { return Optional.ofNullable(store.get(id)); } @Override public Optional<Member> findByName(String name) { return store.values().stream() .filter(member -> member.getName().equals(name)) .findAny(); } @Override public List<Member> findAll() { return new ArrayList<>(store.values()); } }
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
/hello 404에러
경로도 바탕화면에 두었다가 영어로 된 파일로 옮겼다가고 해보고, 이것저것 건드려 봤는데 404에러가 사라지지 않습니다. https://drive.google.com/file/d/1Ll-596n9jFVOQtlAAJpPz4_CsVO-dmuO/view?usp=sharing
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
통합테스트로 회원가입 실행 시 에러
16:45분경에 통합테스트로 회원가입을 실행하는데 에러가 발생합니다. 해결방법이 있을까요?
-
미해결스프링 시큐리티
루트에서 로그인 성공후 에러 메시지가 보입니다.
7) 로그아웃 및 인증에 따른 화면 보안 처리 강의 입니다. http://localhost:8080URL 이 위와 같은 상태에서 로그인 페이지로 이동해서 로그인을 하면 아래와 같은 메시지가 나타납니다.http://localhost:8080/mypage 경로 상태에서 로그인 페이지로 이동해서 로그인하면 정상적으로 오류 메시지 없이 잘 되는데 서브 경로가 없는 상태에서 로그인을 하니까 문제가 있어요세션에는 등록이 되고 로그인처리는 되었는데 마지막화면에서 오류메시지만 떠요.답변 부탁드릴게요 로그인 이후 URL : http://localhost:8080/error{"timestamp":"2023-03-10T01:58:06.693+00:00","status":999,"error":"None","message":"No message available"}
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
addAttribute
이전 강의 복습하다가 의문점이 생겨서 질문드립니다!addAttribute가 궁금해서 들어가보니 Model 인터페이스의 메서드더라구요.그런데 구현부 없이 어떻게 코드에서 실행되는지 궁금합니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
Test에서 말씀하신 //given, //when, //then 중에 then은 어떤걸 뜻하는지 잘 안들려서요.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]안녕하세요~ 강의 넘 잘 듣고 있습니다. 질문은 Test에서 말씀하신 //given, //when, //then 중에 then은 어떤걸 뜻하는지 잘 안들려서요. given은 이 데이터를 기반으로 검증하고when은 이걸 검증하는구나then은 여기가 검증부구나? 이렇게 들렸는데 검증부라는게 어떤 뜻인지 모르겠습니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
intelliJ 열기
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요! 강의에서는 intelliJ를 열고 그 안에서 build.gradle 폴더를 프로젝트로 열어서 사용을 하는데 저는 보통 바탕화면에서 프로젝트 폴더 안으로 들어가서 우클릭 후 intelliJ 열어서 사용했습니다. 혹시 차이가 있을까요? 더불어 build.gradle 파일로 프로젝트를 여는 이유가 있을까요? 답변 미리 감사합니다!
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
no candidates found ...
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.위와 같이 build.gradle에 underlined가 쳐지면서 에러메시지가 뜹니다.구글링하니 reload gradle project후 restart하라고 해서 여러번 따라해봤는데도 여전히 저 에러 메시지가 뜹니다.저 메시지가 뜨는 원인과 해결 방법에 대해 알려주시면 감사하겠습니다.
-
미해결스프링 시큐리티
SecurityConfig.java 에서 AuthenticationManager 부분에 대한 질문입니다.
실전 프로젝트 보고 있습니다.DB 연동 인증 처리(2) : CustomAuthenticationProvider 학습 중인데요.스프링 버전이 2.7x 이라서 SecurityConfig.java 설정이 맞지를 않네요. 검색하니깐 아래 코드 처럼 설정하면 된다고 하던데 근데 아래 코드, authenticationManager 메서드 부분이 없어도 CustomAuthenticationProvider 클래스에 @Component 어노테이션 넣으니깐 사용되더라구요... 로그인도 잘되구요.CustomUserDetailsService 클래스도 마찬가지인데, 아래 authenticationManager 메서드가 없어도 되는건지 궁금합니다.혹시 나중에 문제가 생기지 않을까 불안하기도 하네요.답변 부탁드리겠습니다.~ @Beanpublic AuthenticationManager authenticationManager(AuthenticationConfiguration authenticationConfiguration) throws Exception {ProviderManager authenticationManager = (ProviderManager) authenticationConfiguration.getAuthenticationManager();authenticationManager.getProviders().add(customAuthenticationProvider());return authenticationManager;}
-
해결됨실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
OSIV false로 설정할 때
궁금증이 생겨 한가지 질문할게요.만약 Service 계층에서 validate(), update()라는 메소드가 있을 때 두 메소드 모두 로직 시작부분에 엔티티를 조회한다고 하면 두 메소드에서 모두 select 쿼리가 나갑니다. OSIV 설정을 true로 하면 Controller 영역까지 트랜잭션이 유지 되기 때문에 컨트롤러 안에 xxxService.validate();xxxService.update();이렇게 해도 같은 트랜잭션 안에 있었기 때문에 select 쿼리는 한번만 나갑니다. 하지만 OSIV 설정을 false로 하면 Controller 영역까지 트랜잭션이 유지 되지 않기 때문에 위와 같이 작성하면 select 쿼리가 두번 나갑니다. 이를 해결하기 위해 두가지 메소드를 하나로 합쳐 Controller 영역에서 사용할 수 있습니다.xxxService.updateSet();하지만 이때는 입력 받아야 하는 인자 수가 많을 경우 3, 4개 넘게 받는 경우가 생겨 질문드립니다...쿼리 성능으로는 합치는게 맞지만 구조적으로 이러한 설계가 맞는지 궁금합니다. 감사합니다~!