묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
AOP 의존성 추가
두가지 궁금사항이 있습니다.1.첫번째@Aspect 애노테이션 을 사용한다면의존성 추가해야된다고 인터넷에 나와있는데,꼭 안해도 되는건가요???implementation 'org.springframework.boot:spring-boot-starter-aop' 2.두번째TimeTraceAop class에 @Component 애노테이션을 추가하면 에러가 안나는데,SpringConfig class에 @bean 으로 등록시 에러가 납니다.콘피그에 빈으로 등록코드를 적을경우 또다른 코드를 주입해야되나요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
라이브러리 살펴보기 3:45 질문
저는 왜 강사님처럼 오른쪽 창에 gradle이랑 database가 안보이는 걸까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
템플릿엔진이 없을경우 뷰리졸버는 작동을 못하나요??
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]안녕하세요 처음에 타임리프 의존성 추가 없이 해서 계속 페이지가 없다고 404오류가 나왔습니다.다른분이 타임리프 없이 할 경우 어떻게 해야하는지 질문주신것에 restapi방식을 많이 사용한다고 답해주신것은 보았는데템플릿엔진이 없으면 아예 뷰리졸버가 동작하지 않는 것인지 궁금합니다.application.properties 파일에 spring.mvc.view.prefix=/resources/templates/ spring.mvc.view.suffix=.html이 코드도 추가해보고, static, templates 폴더에 모두 보여주고싶은 html파일도 넣어보았는데 controller는 동작하고 뷰가 없다고 합니다감사합니다 :)
-
해결됨실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
OrderRepository를 JpaRepository를 사용하여 작성하고 싶습니다.
MemberReposiotry처럼 OrderRepository도 JpaRepository를 사용하여 변경해봤습니다.근데 여기서 기존의 검색 기능을 담당하던 findAllByString의 메서드를 구현함에 있어서 오류가 발생하여 질문드립니다.기존과 같이 OrderSearch를 이용하여 작성하고 싶어서 findALlByMemberName으로 OrderSearch의 필드인 MemberName을 가져오고 싶었으나 타입 불일치로 오류가 발생합니다.기존의 Service와 Controller의 변경 없이 Repository만으로 해결하고 싶은데 어떻게 작성해야 할까요?findAllByString은 동적쿼리라서 JpaRepsitory의 기능으로 해결하기엔 한계가 있나요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
gradle build후 dir에서 jar파일이 안보여요..!
gradle build는 됐는데, 그 뒤에 dir에서 snapshot.jar파일이 안보입니다.이건 왜그럴까요..?ㅠㅠ?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
MemberRepositoryTest 실행 에러
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요강의를 진행하던 중, 테스트를 실행하게 되면 에러가 나서 찾아보았지만 해결하지 못하였습니다ㅜㅜ 또한, 'MemberRepositoryTest.java' 파일에 'Long savedId = MemberRepository.save(member);' 작성 중, save()에 에러가 나서 'MemberRepository.java' 파일에 'EntityManager em' 구문과 'save()' 메서드에 static을 추가한 상황입니다.. 스프링 부트의 버전은 3.0.6이고 h2 database의 버전은 2.1.214입니다! 구글 드라이브에 업로드할테니 확인 부탁드립니다! 감사합니다!
-
해결됨실전! 스프링 데이터 JPA
질문은 아니지만 약간 바뀐 부분이 있는거 같아요.
강의자료 27페이지에 사진이랑 구조가 약간 바뀐거 같아요.현재 저는 스프링 3.0.6에 Java 17을 사용하고 있습니다.JpaRepository는 ListCrudRepository<T, ID>, ListPagingAndSortingRepository<T, ID>, QueryByExampleExecutor<T>를 상속하고 있어요ListPagingAndSortingRepository는 결국 강의에서 말씀하신 PagingAndSortingRepository를 상속하네요.큰 틀에서 이해하는데는 문제없었습니다!좋은 강의 감사합니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
Spring boot 3.0.6
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요현재 spring boot 3.0.6 버전으로 생성해서 진행중인데 h2 database는 1.4.199 버전을 사용해도 되는건가요? 현재 설치되어 있는 h2는 2.1.214 버전입니다!
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
DTO 사용범위
안녕하세요.아직 강의를 듣는중이지만, 여러가지 찾아보다가 궁금증이 생겨 질문 남겨봅니다.궁금한 것은 DTO의 사용범위(세분화 정도)와 Request 파라미터 Null 체크입니다.DTO는 클라이언트-서버 사이의 요청/응답 데이터를 전송하는 객체라고 이해했습니다.다른 기능을 하는 aController, bController내 API가 있고 회원 정보를 담고있는 MemberDTO가 있다고 상황을 가정했습니다.MemberDTO에는 name, email, number, sequence 파라미터 등등이 담겨 있고 sequence 파라미터에는 @NotNull 애노테이션이 붙어있습니다.이때, DTO 에서 @NotNull 등을 설정 후 사용하고자 하는 aController 내 API에서는 @NotNull 애노테이션이 적용된 sequence를 response값에 넣어주고 싶지만, bController에서는 MemberDTO 객체 중 sequence만 제외한 response가 필요하면 이때 bController에 맞는 DTO 객체를 하나 생성해 주는 게 더 옳은 것일까요? 이런 경우 실무에서 어떻게 해결하는 지 궁금합니다! 생각을 해봤을 때,기능을 달리하는 Controller 내 API마다 DTO 객체 생성하나의 DTO 객체에 각 기능 별로 보내도 되지 않는 파라미터는 제거 (2번이 그렇다면 방법이 궁금합니다. 찾아보면 좋은 키워드를 알려주셔도 감사하겠습니다. 질문이 두서없을 수 있지만 답변 주시면 감사하겠습니다.제가 이해를 잘못하고 있는 부분이나 영한 님의 강의 중 관련 내용이 있는 파트가 있다면 알려주시면 감사하겠습니다.
-
해결됨실전! 스프링 데이터 JPA
마지막 bulkUpdate 테스트부분 질문입니다
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용] 질문1. 마지막 bulkUpdate 테스트는 통과되었으나 member5 코드 부분에서 sout 이찍히지 않습니다. 어떤 문제일까요 ?@Test public void bulkUpdate() { memberRepository.save(new Member("member1", 10)); memberRepository.save(new Member("member2", 19)); memberRepository.save(new Member("member3", 20)); memberRepository.save(new Member("member4", 21)); memberRepository.save(new Member("member5", 40)); int resultCount = memberRepository.bulkAgePlus(20); em.clear(); List<Member> result = memberRepository.findListByUsername("member5"); Member member5 = result.get(0); System.out.println("member5 = " + member5); Assertions.assertThat(resultCount).isEqualTo(3); } 질문2. 첫번째 코드보시면 아시겠지만 Member member5 = result.get(0);여기에서 get(0)은 인덱스를 의미하는건가요??아니면 db의첫번째 로우를 가져오겠다는 건가요??
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
MemberServiceTest 중 질문
1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예-------------------------------------------------------[질문 내용]스프링 입문 강의 > 섹션3 > 회원 서비스 테스트 > 11:45 지점회원가입() 메서드 내에 member 객체의 이름을 spring으로 바꾸면, 중복_회원_예외() 메서드에서 join한 member1 객체와 충돌하여 에러가 난다고 설명해주셨습니다 . -> 질문 : 중복_회원_예외() 내부에서는 member1와 member2의 이름이 같기 때문에, 예외가 발생하며 member2가 가입되지 않았습니다.그런데 왜 그 후에 회원가입() 메서드에서 member1과 이름이 같은 member가 join할 때는 위와 같이 실행되지 않고, 런타임에러가 발생하는걸까요 ?? ( 이 때도 마찬가지로 join() 내부에 있는 validateDuplicateMember()가 실행되어서 member는 가입되지 않고, 정상적으로 종료할 것이라고 예상했는데, 왜 이렇게 되는지 궁금합니다 ..!! )
-
미해결스프링 부트 웹 개발 입문 - 따라하며 배우기
안녕하세요 강의를 듣고 따라하다가 등록일부분과 수정일부분에서 데이터가 갑자기 조회가 안되는 현상이 발생해서 질문드립니다 .
다른부분은 이상이없는데 무었이 잘못일까요?구글드라이브 링크 남겨드립니다 :https://drive.google.com/file/d/1ZxdPrRNo-zlr_IkRXwidukMYrpDr8Af5/view?usp=share_link
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
[에러] DB생성 중 에러
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요 강의를 듣던 중 에러가 발생하여 질문을 남깁니다.7분정도에 메인 어플리케이션을 실행하던 중 에러가 발생했는데요 에러는 다음과 같습니다.디비에도 OrderItem이 생성되지 않았습니다. 깃허브 주소입니다.https://github.com/heechanCho/jpashop 도움주시면 감사하겠습니다.
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
mysql 비밀번호 초기화 후 재설정
안녕하세요! 지난번 질문에 답 주셔서 감사합니다.다름이 아니라 제 pc에 mysql이 설치되어 있어서 강의대로 mysql로 사용하려고 합니다.그런데 비밀번호가 생각 나지 않아서, 인터넷에 나와있는 방법으로 하려고 했는데, 비밀번호 초기화 까지는 했는데 그다음으로 넘어가질 않아서요..ㅠㅠ암호를 설정하려면 cmd창에 mysql -r root -p 를 입력한 후 password가 나왔을 때 엔터만 쳐도 mysql로 접속이 된다고 하면서, 거기서 비밀번호를 설정하면 된다고 합니다.하지만 저는여기 나온 에러만 계속 나와서...비밀번호 설정을 못하고 있습니다.제발 방법 좀 알려주세요ㅠㅠ
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
상품 등록
<BookForm>@Getter @Setter public class BookForm { private Long id; private String name; private int price; private int stockQuantity; private String author; private String isbn; } <Controller>@PostMapping("/items/new") public String create(BookForm form){ Book book = new Book(); book.setName(form.getName()); book.setPrice(form.getPrice()); book.setStockQuantity(form.getStockQuantity()); book.setAuthor(form.getAuthor()); book.setIsbn(form.getIsbn()); itemService.saveItem(book); return "redirect:/"; } <Service>@Service @RequiredArgsConstructor @Transactional(readOnly = true) public class ItemService { private final ItemRepository itemRepository; public void saveItem(Item item){ itemRepository.save(item); } public Item findOne(Long itemId){ return itemRepository.findOne(itemId); } public List<Item> findAll(){ return itemRepository.findAll(); } } <Repository>@Repository @RequiredArgsConstructor @Slf4j public class ItemRepository { private final EntityManager em; public void save(Item item){ if(item.getId() == null){ log.info("item={}", item); em.persist(item); //신규등록 }else{ em.merge(item); } } public Item findOne(Long id){ return em.find(Item.class, id); } public List<Item> findAll(){ return em.createQuery("select i from Item i", Item.class) .getResultList(); } } <Log>2023-04-21 15:08:16.380 INFO 7536 --- [nio-8080-exec-2] j.jpashop2.repository.ItemRepository : item=Book(author=qwe, isbn=1234)<Test>로그에 찍히는거 보면 값이 다 전달이 되고 테스트 코드에서도 성공으로 떠서 저장이 되야 될거 같은데 h2 db에 가면 값이 저장이 안되어 있네요아예 디비랑 연동이 안되나 싶었는데 멤버는 정상적으로 회원가입이 되는데 아이템만 저장이 안되네요 뭐가 문제일까요... ddl-auto 는 create로 되어있구요 h2 db 버전은 1.4.2 입니다
-
해결됨토비의 스프링 부트 - 이해와 원리
@ComponentScan과 @Import 질문있습니다.
@ComponentScan을 하게되면해당 패키지 이하로 컴포넌트가 어노테이션으로 있으면빈으로 등록해주고@Import를 하면 @Configuration class를 넣으면해당 구정 정보 클래스가 빈 등록이 되는데 제가 생각한 @ComponentScan과 @Import차이는컴포넌트 스캔은 패키지나 클래스를 기점으로 쭉 클래스를 찾아 돌아다녀야하지만자동 구성빈에서 사용되는 많은 빈들을 다 컴포넌트 스캔으로 사용하는거보다필요한 구성 정보 클래스만 스프링 부트가 @Conditional로 판단해서 빈으로 등록할수 있다보니컴포넌트 스캔보다 더 빠르고 구성 정보끼리 관계를 알수 있다고 생각이 되더라구요 제가 이해한게 맞는지 아니면 잘못 이해하고 있는지 추가로 설명해주실수 있으신가요..?
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
윈도우 빌드 오류
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]인텔리제이 터미널에서 gradlew.bat build를 치니 오류가 뜹니다. 해결방법 알 수 있을까요?
-
미해결토비의 스프링 부트 - 이해와 원리
안녕하세요.
안녕하세요. 토비님덕분에 좋은 강의를 잘 보고 있습니다!강의와는 다른 내용인데.토비님은 REST API를 개발하실때다양한 쿼리스트링 요청이 들어올때 값의 유무 체크를 어떻게 하시는지 궁금합니다.if문으로 null을 각각 확인하고 있긴 한데..코드도 길어지고 가독성도 안좋아 질문드립니다 ㅠㅠpublic class User { private String name; private String phone; private String email; } @GetMapping("/v1") public void list(@ModelAttribute User user) { } :8080/v1?name=apple :8080/v1?name=apple&phone=01012345678 :8080/v1?phone=01012345678
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
환경 세팅 질문입니다.
안녕하세요. 강의에서 보여주셨던 것과는 start.spring.io 의 화면이 달라서, 강의를 따라가기 위해서는 어떻게 선택해야 하는지 여쭙고자 합니다.Project에서는 Gradle-Groovy를 사용하면 되는건가요?Spring Boot는 3.0.5로 해야할까요 2.7.10으로 해야 할까요java버전은 17이 좋을까요 11이 좋을까요? 버전에 따라 dependencies가 먹히거나 안먹히거나 하는거 같습니다.답변에 미리 감사합니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
HelloController 밒 hello.html 실행 오류
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)예{[질문 내용]여기에 질문 내용을 남겨주세요. 제 hello.html에는 강사님과 다르게 ${data}" 부분에 주황색 글씨로 표기가 안되고 HelloControlle에서 string hello 부분에도 주황색 글씨로 표기가 안되는데 어떤 오류가 있을까요..?