inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

176만명의 커뮤니티!! 함께 토론해봐요.

9강 returnBookTest() 문의드립니다!

미해결

실전! 코틀린과 스프링 부트로 도서관리 애플리케이션 개발하기 (Java 프로젝트 리팩토링)

안녕하세요. 9강 returnBookTest() 질문 드립니다. 저는 강의 내용을 듣기 전에 미리 제가 테스트코드를 짜보고 이후에 비교해가면서 강의를 수강하는데요. 제가 짠 코드는 실패를 해서 문의드려봅니다. @Test @DisplayName("책 반납 성공") fun returnTest(){ //given val user = User("phd",31) userRepository.save(user) val book = Book("testBook") bookRepository.save(book) val loanHistory = UserLoanHistory(user,"testBook",false) userLoanHistoryRepository.save(loanHistory) //when assertThat(loanHistory.isReturn).isFalse() bookService.returnBook(BookReturnRequest(user.name, "testBook")) //then assertThat(loanHistory.isReturn).isTrue() } 저는 loanHistory 엔티티가 영속성 컨텍스트에 있기 때문에 user.userLoanHistroy 엔티티가 바뀔 때 loanHIstroy 객체의 상태 값 도 바뀔거라고 생각했는데요. 생각해보니까 각 엔티티를 save() 하는 메소드들의 트랜잭션이 각각 달라서 영속성 컨텍스트에 loanHistroy 객체가 없었을것 같아요. 뭔가 제대로 확인 할 방법은 없어서 그렇게 유추만 하고 있는데, 제가 유추한 내용이 맞을까요?... 강의 언제나 잘 보고 있습니다. 감사합니다!

  • java
  • spring
  • kotlin
  • spring-boot
  • 리팩토링
Ares 댓글 1 좋아요 0 조회수 324

빌드하려는데 오류가 떠요

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

cmd에서 ./gradlew /gradlew gradlew gradlew build 다 쳐봤는데 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다. 라고 나오거나 ERROR: JAVA_HOME is set to an invalid directory: C:\Program Files\Java\jdk-11\bin Please set the JAVA_HOME variable in your environment to match the location of your Java installation. 라고 떠요.. 그리고 버전 확인해봤는데 저렇게 나오는 게 맞나요? 다른 분들 질문한거 웬만한거 다봤는데 여기서 더이상 어떻게 진행해야 될 지 모르겠어서 막막하네요ㅠㅠ

  • java
  • spring
  • mvc
  • spring-boot
kimyuna52 댓글 1 좋아요 0 조회수 2917

yml설정 질문입니다.

해결됨

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

[질문 내용] 회원 목록 조회 강의수강중입니다. 어플리케이션을 재시작 할때마다 DB에 테이블이 재생성이 되면서 기존 데이터가 사라집니다. yml에 ddl-auto : create설정 때문인 것 같은데, none, 이나 update로 설정하면 테이블의 재생성은 방지가 되는데, 최초 구동 시 JPA가 테이블을 생성하는것도 막히는건지 궁금합니다.

  • java
  • spring
  • 웹앱
  • spring-boot
  • jpa
하리보 댓글 1 좋아요 1 조회수 417

@Transactional에 대한 질문드립니다.

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 안녕하세요. 강의 jpa부분을듣고 실습을 따라하다 다른방법이 있는지 문의드립니다. MemberServiceIntegrationTest 에서 @Transactional 를 사용하지않으면 데이터 세개가 들어감과 동시에 회원가입 메소드와 중복_회원_예외()의 함수를 실행하면 데이터가 들어가게 됩니다. 이런 오류가 나오는데.. 제가 궁금한것은 @Transactional 를 사용하지않고 트랜젝션? 처리하는 방법이 있을까요? 방법이 존재한다면 어떤방법으로 처리하면.. @Transactional 유사 처리가 되는지 궁금합니다. 강의를 보고 또 보고하면서도 많이 배우고있습니다. 감사합니다.

  • java
  • spring
  • mvc
  • spring-boot
이경용 댓글 1 좋아요 0 조회수 921

회원목록 연결 오류

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

순수 JDBC 강의를 따라가며 실행해보았는데 디버깅 오류는 없으나 페이지 실행시 이름등록에서 등록 버튼 클릭후, 회원목록 클릭 후 연결되지 않는 에러가 발생합니다. Whitelabel Error Page This application has no explicit mapping for /error, so you are seeing this as a fallback. Sat Mar 04 13:46:34 KST 2023 There was an unexpected error (type=Internal Server Error, status=500). 코드 링크 올려드립니다. 감사합니다. 링크 https://drive.google.com/file/d/1b8PmvEY2uQqk3TCS01tPzKYRXbq7-tGY/view?usp=share_link

  • java
  • spring
  • mvc
  • spring-boot
클리닉98 댓글 1 좋아요 0 조회수 419

테스트 코드 오류

미해결

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. id to load is required for loading; nested exception is java.lang.IllegalArgumentException: id to load is required for loading 오류 발생합니다 코드: package jpabook.jpashop.service; import jpabook.jpashop.domain.Address; import jpabook.jpashop.domain.Member; import jpabook.jpashop.domain.Order; import jpabook.jpashop.domain.OrderStatus; import jpabook.jpashop.domain.item.Book; import jpabook.jpashop.domain.item.Item; import jpabook.jpashop.repository.OrderRepository; import org.junit.Assert; import org.junit.jupiter.api.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 javax.persistence.EntityManager; import static org.junit.Assert.*; @RunWith(SpringRunner.class) @SpringBootTest @Transactional class OrderServiceTest { @Autowired EntityManager em; @Autowired OrderService orderService; @Autowired OrderRepository orderRepository; @Test public void 상품주문() throws Exception{ Member member=new Member(); member.setName("회원1"); member.setAddress(new Address("서울","강가","123-123")); em.persist(member); Book book=new Book(); book.setName("시골 JPA"); book.setPrice(10000); book.setStockQuantity(10); System.out.println(book.getId()); em.persist(book); int orderCount=2; Long orderId = orderService.order(member.getId(), book.getId(), orderCount); Order getOrder = orderRepository.findOne(orderId); assertEquals("상품 주문시 상태는 ORDER", OrderStatus.ORDER,getOrder.getStatus()); } @Test public void 주문취소() throws Exception{ } @Test public void 상품주문_재고수량초과() throws Exception{ } }

  • java
  • spring
  • 웹앱
  • spring-boot
  • jpa
댓글 1 좋아요 0 조회수 822

내장톰캣 서블릿 강의를 듣는 도중 문제가 생겼습니다.

미해결

스프링 부트 - 핵심 원리와 활용

[질문 내용] 내장톰캣 서블릿 강의 코드를 따라 작성하고 실행하는 도중 아래와 같은 문제가 발생했습니다. 제가 따로 작성한 코드도 없고 그냥 파일생성과 붙여넣기만 했는데.. 실행이 안되네요.. Gradle 설정 문제인가 싶어 Setting에 default 를 Intellij 로 바꾼 뒤 다시 실행했더니 아래와 같은 에러 메시지가 떴습니다. 그리고 영한님과 다르게 main 실행 후 디랙토리에 아래 사진과 같은 패키지가 생성되었습니다. 문제가 무엇일까요?

  • spring
  • spring-boot
  • prometheus
  • grafana
Hyeongjun Kim 댓글 2 좋아요 2 조회수 2275

7강 Static inner class 사용 이유

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

7강에서 @GetMapping("hello-api") @ResponseBody public Hello HelloApi(@RequestParam("name") String name){ Hello hello = new Hello(); hello.setName(name); return hello; } static class Hello{ private String name; public String getName() { return name; } public void setName(String name) { this.name = name; } } 코드 중 궁금한 사항이 있어 문의드립니다. static inner class를 쓰는 이유 알 수 있을까요?? 그냥 innerclass와 접근 범위가 다르다는 것밖에 이해가 어려워서 조금만 더 잘 알고 싶습니다.

  • java
  • spring
  • mvc
  • spring-boot
swanmo kim 댓글 1 좋아요 0 조회수 414

logging

미해결

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

로깅에서 이거 자체가 안 나오는데 무엇 때문일까요? 전 이렇게만 나옵니다ㅜㅜ yml 복붙했는데도 안됩니다ㅜ

  • java
  • spring
  • 웹앱
  • spring-boot
  • jpa
coolcool35 댓글 1 좋아요 0 조회수 607

학습 테스트 작성 시 정적 클래스 관련질문

미해결

토비의 스프링 부트 - 이해와 원리

안녕하세요. 강의 잘 보고 있는 수강생 입니다. @Configuration과 proxyBeanMethods 강의를 듣고 실습하던 도중 질문이 있습니다. Bean1, Bean2, Common, MyConfig 클래스들을 Static클래스로 만들어야 정상적인 테스트가 가능한것을 확인했는데요. 해당 클래스들을 정적 클래스가 아닌 내부 클래스로 작성하니 적절한 빈타입을 찾을 수 없다라는 에러메시지가 표출되었습니다. 이상해서 해당 클래스들을 별도의 java파일로 작성하니 문제없이 정상동작하는것을 확인하였는데요. 왜 내부클래스 작성 시 정적 클래스로 만들어야 동작하는지 이유를 잘 모르겠습니다. 감사합니다.

  • spring
  • spring-boot
  • spring-jdbc
이준희 댓글 2 좋아요 0 조회수 818

loginProcessingUrl 절대경로 상대경로 차이점

미해결

스프링 시큐리티

3) Form Login 인증 강의처럼 코드 작성하였는데 로그인이 안되고 계속 /login 페이지로 이동해서 코드를 자세히 보니 경로 설정이 잘못되었더군요. .loginProcessingUrl("/login_proc") 위 코드로 정상적으로 로그인이 되는데 경로를 슬래쉬를 붙이지 않고 'login_proc' 으로만 넣어주니까 로그인 먹통이었습니다. 혹시 어떤 이유에서 그런지 문의드려도 될까요? 아래처럼 태그를 보면 어차피 루트에서 이동하는건데 슬래쉬가 있고 없고의 차이점이 궁금하네요. 감사합니다. <form class="form-signin" method="post" action="login_proc">

  • java
  • spring-security
  • Spring Security
  • spring-boot
원데이 댓글 1 좋아요 0 조회수 1475

mysql 1064에러

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] h2말고 기존 mysql을 설치한게있어 heidisql을 이용하여 강의자료 코드 복붙하였습니다. 계속 1064 신택스 에러가 떠서 찾아봐도 해결이 되지않아 직접 생성했는데 아래처럼 해도 상관없나요?

  • spring
  • java
  • MVC
  • spring-boot
나마스테 댓글 1 좋아요 0 조회수 636

getter setter 질문

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 마지막 8분 22초에서 System.out.println 으로 member의 getName을 찍어서 확인하는데 Form html에서 input name을 name="name"이 아닌 name="asd"로 변경후 Form class에서도 private String name을 private String asd로 바꾸고 getter에서 return도 name->asd로 변경했습니다 이때 메서드명은 getName() 그대로 남겼는데 sout(시스템아웃프린트)로 찍어보니까 null이 뜹니다. 메서드명을 getAsd()로 바꾸니까 정상적으로 작동이 되구요 게터와 세터 메서드명을 꼭 변수의 이름과 맞춰야하는건가요? 이유가뭔가요?

  • spring-boot
  • spring
  • java
  • MVC
나마스테 댓글 1 좋아요 0 조회수 513

스프링 2.7.8 swagger 오류 해결법

미해결

[개정판 2023-11-27] Spring Boot 3.x 를 이용한 RESTful Web Services 개발

pom.xml <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-boot-starter</artifactId> <version>3.0.0</version> </dependency> application.yml spring: mvc: pathmatch: matching-strategy: ant_path_matcher messages: basename: messages

  • spring-boot
  • rest-api
Ond: 댓글 1 좋아요 0 조회수 1108

http://localhost:8080/hello-mvc?name=Spring 오류

해결됨

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

똑같이 한 거 같은데 오류가 뜨네요,,,

  • java
  • spring
  • spring-boot
  • MVC
모깅 댓글 2 좋아요 0 조회수 1221

http://localhost:8080/hello 로그인 ㅠㅠ

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. http://localhost:8080/hello 에 들어가면 로그인이 하라는 창이 뜨구요 취소 시 Unauthorized 이렇게 뜹니다. ㅠㅠ 프로젝트 새로 만들어도 똑같아서요 build.gradle 에 들어가도 시큐어리티가 없네요 ㅠㅠ

  • spring-boot
  • MVC
  • java
  • spring
박혜란 댓글 1 좋아요 0 조회수 793

23강 흐..너무어려워요...

미해결

[개념은 호옹~, 실습 빡] 스프링 부트, 입문!

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 분명 articleservice 에서는 더미 테이블에 들어있는 글목록을 가져올때. 엔티티를 -> dto로 변경안했거든요 ? dto -> 엔티티로 변경하는건 왜하는건지 알겠는데. 근데왜 23강 commentServic 에서는 댓글 목록가져오는데 엔티티를 -> dto로 변경해요 ? 그전강의에서는 바꾼적없잖아요 선생님

  • spring-boot
hyqooooo 댓글 1 좋아요 2 조회수 558

h2로 테이블 생성이 안됩니다.

미해결

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

모든 클래스에 entity를 넣은 것은 확인했고요 ㄴh2도 켜져있는 거 확인했습니다. 스프링부트는 3.0.3버전 h2는 2.1.214버전을 사용하고 있습니다. entity도 저렇게 diagram으로 잘 나오는 것을 확인했습니다. application.properties는 다음 사진과 같이 설정해뒀습니다. build파일에 classes에 entity들도 잘 들어가 있고 실행하는데는 에러가 안납니다. 실행시키고 h2에 들어가보면 테이블이 생성이 안돼있고 스프링부트 로그에도 테이블 생성 쿼리가 안보입니다. 뭐가 문제일까요?

  • JPA
  • spring-boot
  • spring
  • java
  • 웹앱
새벽형개발자 댓글 1 좋아요 0 조회수 988

빌드 실행

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. spring boot 에 내장되어 있는 tomcat 말고 따로 설치되어 있는 tomcat 으로 서버가 돌아가는 거 같은데 계속 오류가 뜨네요 내장되어 있는 tomcat으로 빌드하고싶은데 설정을 어떻게 바꿔야할까요 ??

  • spring-boot
  • java
  • spring
  • MVC
도연 댓글 1 좋아요 0 조회수 700

spring data jpa를 적용했을 때 회원가입과 중복회원 확인 메소드 오류가 납니다.

해결됨

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] 여기에 질문 내용을 남겨주세요. 코드는 강사님과 똑같이 작성했는데 Invalid property 'id' of bean class 라고 에러가 떴습니다. 제 생각엔 JpaRepository가 구현한 save 메소드가 setId를 해주지 못했거나 SpringDataJpaMemberRepository가 JpaRepository가 구현한 save 메소드를 주입을 못해준 거 같은데 어떻게 해결을 해야할지 모르겠어서 질문 올립니다ㅠㅠ Member.java 코드 @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String name; public long getId(){ return id; } public void setId(long id){ this.id = id; } MemberRepository.java 코드 package hello.hellospring.repository; import hello.hellospring.domain.Member; import java.util.List; import java.util.Optional; public interface MemberRepository { Member save(Member member); Optional<Member> findById(Long id); Optional<Member> findByName(String name); List<Member> findAll(); } SpringDataJpaMemberRepository.java 코드 package hello.hellospring.repository; import hello.hellospring.domain.Member; import org.springframework.data.jpa.repository.JpaRepository; import java.util.Optional; public interface SpringDataJpaMemberRepository extends JpaRepository<Member, Long>, MemberRepository { @Override Optional<Member> findByName(String name); } SpringConfig.java 코드 package hello.hellospring.service; import hello.hellospring.repository.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import javax.persistence.EntityManager; @Configuration public class SpringConfig { private final MemberRepository memberRepository; @Autowired public SpringConfig(MemberRepository memberRepository) { this.memberRepository = memberRepository; } @Bean public MemberService memberService() { return new MemberService(memberRepository); } } 에러 로그 org.springframework.beans.InvalidPropertyException: Invalid property 'id' of bean class [hello.hellospring.domain.Member]: Getter for property 'id' threw exception; nested exception is java.lang.reflect.InvocationTargetException 중략 Caused by: java.lang.NullPointerException at hello.hellospring.domain.Member.getId( Member.java:17 )

  • spring
  • java
  • MVC
  • spring-boot
김예찬 댓글 1 좋아요 0 조회수 1304

인기 태그

인프런 TOP Writers

주간 인기글