학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요! 열심히 백엔드 강좌를 수강하고 있는 학생입니다! 다름이 아니라 Spring MVC 배우기 전 핸들러와 핸들러 어댑터 , 뷰 리졸버 등등.. 배웠는데 이걸 코드와 동작과정을 다 외워야하는지 아니면 핸들러어댑터는 핸들러를 사용할 수 있는 지 판별하는 기능인것이고, 뷰 리졸버는 논리적인 매핑주소를 물리적으로 바꾸어주는 기능인 것이다. 이렇게만 이해하고 Spring MVC로 넘어가도 되는 것일까요?
build.gradle에 compileJava { options.compilerArgs << '-parameters'} 를 추가했는데 안됩니다. IDE 또는 빌드 도구(Gradle, Maven 등)의 설정에서 Java 컴파일러 옵션에 ‘-parameters’를 추가하라고 하는데, 인텔리제이 메뉴의 설정에서 하는건지, 어떻게 하는건지 자세한 방법을 알려주세요.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? [질문 내용] response.sendError(404, "404 오류!"); 해당 코드에서 두번째 매개변수는 콘솔에도 브라우저의 응답에서도 확인할 수 없는데 왜그런걸까요? 검색해보니까 server.error.include-message and server.error.include-binding-errors 이런설정들을 해보라고해서 해봤는데 그래도 응답에 포함되는거같지않아서요..ㅠ "404 오류!" 이 텍스트는 어디서 확인할 수 있을까요?
상품상세 실행 중 java.lang.IllegalArgumentException: Name for argument of type [java.lang.Long] not specified, and parameter name information not available via reflection. Ensure that the compiler uses the '-parameters' flag. 오류 메세지가 나옵니다. https://drive.google.com/file/d/1Uqz3Fdgnh66wMES8vdChuriSCb3zXb_S/view?usp=sharing
메서드 코딩하고 @GetMapping("/{itemid}") public String item(@PathVariable Long itemId, Model model){ Item item = itemRepository.findById(itemId); model.addAttribute("item", item); return "basic/item"; } html은 basic에 카피해서 tymeleat와 css 부분만 수정했습니다. <!DOCTYPE HTML> <html xmlns:th="http://www.thymeleaf.org"> <head> <meta charset="utf-8"> <link th:href="@{/css/bootstrap.min.css}" href="../css/bootstrap.min.css" rel="stylesheet"> <style> .container { max-width: 560px; } </style> 실행하면 java.lang.IllegalArgumentException: Name for argument of type [long] not specified, and parameter name information not available via reflection. Ensure that the compiler uses the '-parameters' flag. 오류가 뜹니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 강의 중 아래 부분에서 의문이 들어 질문 남깁니다. pstmt.setString(1, member.getMemberId()); pstmt.setInt(2, member.getMoney());. 이 부분에서 저희가 만든 member클래스에는 get 함수를 넣지 않았는 데 get 함수를 어떻게 쓸 수 있는 걸까요??
mv.getModel().put("member", member) 이 부분이 이해가 정말 안되고 있어서 GPT 사용해봤는데 이렇게 이해 해도 될까요? chatGPT 네, 맞습니다. 일반적으로 setModel() 메서드는 새로운 모델을 설정하는데 사용됩니다. 이것은 기존 데이터를 모두 대체합니다. 반면에 getModel()을 사용하여 모델을 가져오고 put() 메서드를 사용하면, 이미 설정된 모델에 새로운 데이터를 추가하거나 기존 데이터를 변경할 수 있습니다. 따라서 setModel()을 사용하면 기존 모델은 없어지고 새로운 모델이 설정됩니다. 반면에 getModel()을 사용하여 모델을 가져온 후에 put()을 사용하면, 기존 모델에 데이터를 추가하거나 변경할 수 있습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. H2.bat 처음부터 이렇게뜨고 강의처럼 바꿔서 해보았는데도 안됩니다 어디가 문제인가요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] name이 varchar로 알고이는데 글자를 넣으면 안되고 숫자를 넣으면 되는데 뭐가 문제인가요 create table member ( id bigint generated by default as identity, name varchar(255), primary key (id) ); 이래도해서 넣었는데
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 강의 대로 코드를 똑같이 따라하였고 오류 사항도 없는것같은데 basic/items 에서 상품명을 클릭해서 상품 상세로 갈때 whitelabel이 뜹니다 이유를 모르겠습니다 ㅠㅠ 상품명 클릭시 basic/items/1 과 같이 itemId는 url에 잘 뜨고 html 역시 두개다 절개경로로 열게되면 잘 나옵니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 연견을 누르면 아래와같은 오류가 나옵니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. package lang.String.method; public class StringChangeMain1 { public static void main(String[] args) { String str = "Hello, Java! Welcome to Java"; //x001 Object object = new Object(); String str1 = str.concat("!!!"); //x002 System.out.println(str); System.out.println(str1); str = object.toString(); str1 = object.toString(); System.out.println(str1.equals(str)); System.out.println(str1==str); System.out.println(str); System.out.println(str1); } } 결과로 Hello, Java! Welcome to Java Hello, Java! Welcome to Java!!! true false java.lang.Object@b4c966a java.lang.Object@b4c966a 가 나오는데, 배운 내용대로라면 str1은 str과 다른 새로운 객체값니간, str이랑 다른 객체값이 나올거라 생각했는데, str과 같은 객체값이 출력이 되어서 질문드립니다. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오)예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)예 import 에 문제가 있는 것 같은데 도저히 구글링이랑 전의 질문에서도 찾을 수가 없어요... 계속 고민하다가 안돼서 질문 올려요.. gradle도 했고 jdk는 17 사용중이고 설정도 됐습니다 그리고 C드라이브 하위에있고 spring-hello 프로젝트도 C드라이브 하위에 있고 intellij도 C드라이브 하위에 있습니다. +사용자 명도 tmddnjs 으로 되어있습니다 도저히 없어요... 어떡하죠.... [질문 내용] 여기에 질문 내용을 남겨주세요.
========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] Enum 타입이 생성자를 private로 하여 외부 생성을 막은 클래스와 거의 동일하다고 하셨는데 그 부분에 이해가 안되는 부분이 생겨 질문 드립나다. public class Grade { public static final Grade BASIC = new Grade(); public static final Grade GOLD = new Grade(); public static final Grade DIAMOND = new Grade(); private Grade() { } //자기 자신의 클래스에서 새로운 인스턴스 생성 (가능) public static Grade generate() { return new Grade(); } } 위의 코드처럼 class로 만든 경우 private으로 외부 인스턴스 생성을 막아도 자신 클래스 내부에서는 새로운 인스턴스 생성하는 코드에 빨간줄이 나타나지 않았습니다. public enum Grade { BASIC, GOLD, DIAMOND //자기 자신의 클래스에서 새로운 인스턴스 생성 (불가능) public static Grade generate() { return new Grade(); } 강의에서 위의 코드와 거의 동일한 코드라고 해주셨던 Enum타입으로 클래스를 만들경우는 아래의 generate 메서드에서 새로운 인스턴스를 만들 수 없다며 빨간줄이 생깁니다. 위의 코드와 아래 코드의 어떤 부분에서 이러한 차이가 생기는지 궁금합니다. 단순히 private으로 외부 인스턴스 생성만 막은 경우라면 자기 자신 안에서는 인스턴스 생성이 가능해야 할 것 같은데 어째서 Enum에서는 자기 자신 내부에서 생성이 불가능한 건가요? private으로 외부 생성을 막더라도 저런식의 generate 메서드를 만들면 외부에서 인스턴스 생성이 가능해 지지 않을까 하는 생각에 만들다가 이런 차이를 발견해 질문 드립니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 쿠키를 이용한 로그인 여부를 처리하기 위해 @RequirdArgsConstructor를 사용 하였는데 이 어노테이션은 생성자를 직접 작성하지 않도록 해주는 어노테이션으로 이해 하였는데 굳이 작성해주는 이유가 있나요? 멤버리포지토리에서 값을 꺼내오기 위해 의존성을주입하여 private final MemberRepository memberRepository; 를 작성해주셨는데 final을 실수로 생략 하였더니 500 오류가 발생하였습니다. 그 이유가 있나요?
자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
> Task :LibraryAppApplication.main() FAILED . ____ _ /\\ / ___'_ __ ( _)_ _ \ \ \ \ ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / / =========|_|==============|___/=/_/_/_/ :: Spring Boot :: (v2.7.6) 2024-04-04 17:09:40.815 INFO 12468 --- [ main] c.g.libraryapp.LibraryAppApplication : Starting LibraryAppApplication using Java 17.0.9 on KONG with PID 12468 (C:\Project\project\library-app\build\classes\java\main started by jinju in C:\Project\project\library-app) 2024-04-04 17:09:40.819 INFO 12468 --- [ main] c.g.libraryapp.LibraryAppApplication : No active profile set, falling back to 1 default profile: "default" 2024-04-04 17:09:41.422 INFO 12468 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode. 2024-04-04 17:09:41.474 WARN 12468 --- [ main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.support.BeanDefinitionOverrideException: Invalid bean definition with name 'userRepository' defined in com.group.libraryapp.domain.user.UserRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Cannot register bean definition [Root bean: class [org.springframework.data.jpa.repository.support.JpaRepositoryFactoryBean]; scope=; abstract=false; lazyInit=false; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=null; factoryMethodName=null; initMethodName=null; destroyMethodName=null; defined in com.group.libraryapp.domain.user.UserRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration] for bean 'userRepository': There is already [Root bean: class [null]; scope=; abstract=false; lazyInit=null; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=userConfiguration; factoryMethodName=userRepository; initMethodName=null; destroyMethodName=(inferred); defined in class path resource [com/group/libraryapp/config/UserConfiguration.class]] bound. 2024-04-04 17:09:41.505 INFO 12468 --- [ main] ConditionEvaluationReportLoggingListener : Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled. 2024-04-04 17:09:41.521 ERROR 12468 --- [ main] o.s.b.d.LoggingFailureAnalysisReporter : *************************** APPLICATION FAILED TO START *************************** Description: The bean 'userRepository', defined in com.group.libraryapp.domain.user.UserRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration, could not be registered. A bean with that name has already been defined in class path resource [com/group/libraryapp/config/UserConfiguration.class] and overriding is disabled. Action: Consider renaming one of the beans or enabling overriding by setting spring.main.allow-bean-definition-overriding=true Execution failed for task ':LibraryAppApplication.main()'. > Process 'command 'C:/Program Files/Java/jdk-17/bin/java.exe'' finished with non-zero exit value 1 찾아본 결과 이 문제는 Spring 애플리케이션의 빈(bean) 정의 중에 중복이 발생하여 발생한 것으로 보입니다. 에러 메시지에 따르면 userRepository 빈이 이미 UserConfiguration 클래스에서 정의되어 있으며, 또한 Spring Data JPA가 자체적으로 해당 빈을 생성하려고 시도하고 있는 것으로 보인다고 합니다. 혹시 UserConfiguration 부분에 변경이 적용 안된게 있어서 그런걸까요? 저 bean 부분을 지워도 .UserServiceV1 때문에 컴파일 에러가 발생하더라구요,.,..
map<string, object>와 map<string, string> 모두 정상 수행이 됩니다. 받아들인 변수를 처리하는데 차이가 있을까요? public String requestParamMap(@RequestParam Map<String, Object> paramMap){ public String requestParamMap(@RequestParam Map<String, String> paramMap){
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] JPA사용법에 관한 강의를 듣다가 정확히 따로 정리를 하는데 스스로 정리를 어떻게 해야할 지 모르겠어서 문의 남깁니다. JpaRepository에서 findById함수 아래 코드가 Member member = em.find(Member.class, id); 라고 작성이 되는데 find 괄호 안에 Member.class에 저런 ,class방식으로 작성이 되는 설명이나 이유를 좀 알려주실 수 있으실까요?