묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
Spring과 MySQL연동 실패 ..
dependencies { implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-web' runtimeOnly 'com.h2database:h2' runtimeOnly 'mysql:mysql-connector-java:8.3.0' testImplementation 'org.springframework.boot:spring-boot-starter-test'}위와 같이 dependencies를 설정했고 밑은 application.yml입니다. spring: datasource: url: "jdbc:mysql://loca lhost/library" username: "root" password: "비밀번호" driver-class-name: com.mysql.cj.jdbc.Driver비밀번호는 알아서 설정했습니다. 오류가 생겨서 dependencies에서 runtimeOnly 'mysql:mysql-connector-java:8.3.0'로 설정했습니다.밑에는 에러 표시입니다. Execution failed for task ':LibraryAppApplication.main()'.> Could not resolve all files for configuration ':runtimeClasspath'. > Could not find mysql:mysql-connector-java:8.3.0. Required by: project :Possible solution: - Declare repository providing the artifact, see the documentation at https://docs.gradle.org/current/userguide/declaring_repositories.html > Task :LibraryAppApplication.main() FAILEDExecution optimizations have been disabled for task ':LibraryAppApplication.main()' to ensure correctness due to the following reasons: - Type 'org.gradle.api.tasks.JavaExec' property 'classpath' cannot be resolved: Could not resolve all files for configuration ':runtimeClasspath'. Reason: An input file collection couldn't be resolved, making it impossible to determine task inputs. Please refer to https://docs.gradle.org/7.5/userguide/validation_problems.html#unresolvable_input for more details about this problem.Execution failed for task ':LibraryAppApplication.main()'.> Could not resolve all files for configuration ':runtimeClasspath'. > Could not find mysql:mysql-connector-java:8.3.0. Required by: project :Possible solution: - Declare repository providing the artifact, see the documentation at https://docs.gradle.org/current/userguide/declaring_repositories.html Could not find mysql:mysql-connector-java:8.3.0.Required by: project :Search in build.gradle files뭐가 에러인가요..? 만약 Runtimeonly뒤에 version을 따로 기입하지 않는다면, Caused by: com.mysql.cj.exceptions.CJCommunicationsException: Communications link failure라는 에러가 뜹니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
회원가입 로직 테스트 오류
https://drive.google.com/drive/folders/1unulH1E9G7a--c4InEpy_4NwIEKrvH4b?usp=sharing회원가입 로직 테스트 오류가 납니다. 필요:hello.demo.domain.Member@f48a080실제 :hello.demo.domain.Member@1d3a03fe<클릭하여 차이점 확인>org.opentest4j.AssertionFailedError: expected: hello.demo.domain.Member@f48a080 but was: hello.demo.domain.Member@1d3a03fe at java.base/jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:62)
-
미해결스프링 시큐리티
소스 부분 질문 드립니다.
home.html 내 messages() JS함수 안에보면 $.ajax 호출시 type이 post로 되어있던데요. MessageController.java 내에서는 @GetMapping에 @ResponseBody 던데요. 요거 호출시 get으로 맞져? 영상엔 post로 나오네요. post라면 form이 있어야 하는데요. 테스트 목적은 message ok 만 찍히는거 테스트 하는거구요.
-
미해결스프링 시큐리티
섹션4 7번 강의 문제가 있는거 같네요.
섹션4 6번강의까지 잘 따라왔습니다. 혹시 제가 잘못 본게 있을까 해서 3번 강의를 들었지만 안되네요. 강의 내용 그대로 코딩했습니다. 머가 문제일까요? 500에러면 문법에러인건데요. html내 meta위치가 문제인가여? 강의중에 특정파일 내 html meta가 중첩된것도 보입니다. _csrf값이 undefined나 null일 경우도 에러가 생기는것도 같네요. 강사님 답변좀 부탁드립니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
PATH 에러입니다..
[질문 내용]여기에 질문 내용을 남겨주세요. openjdk 22버전을 다운받아서 programfiles에 있는데다운 받은거를 어떻게 연동 시켜야하나요..?!
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
SpringConfig required a single bean, but 2 were found:
[질문 내용]여기에 질문 내용을 남겨주세요. Parameter 0 of constructor in hello.hellospring.SpringConfig required a single bean, but 2 were found: - memoryMemberRepository: defined in file [C:\Users\Han\IdeaProjects\hello-spring\out\production\classes\hello\hellospring\repository\MemoryMemberRepository.class] - springDataJpaMemberRepository: defined in hello.hellospring.repository.SpringDataJpaMemberRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfigurationspringconfig에 빈이 2개있어서 그런거 같은데어느 파일을 수정해야할까요 @Configuration public class SpringConfig { private MemberRepository memberRepository; private EntityManager em; @Autowired public SpringConfig(MemberRepository memberRepository) { this.memberRepository = memberRepository; } // @Autowired // public SpringConfig(DataSource dataSource) { // this.dataSource = dataSource; // } @Bean public MemberService memberService() { return new MemberService(memberRepository); } // @Bean // public MemberRepository memberRepository() { // return new MemoryMemberRepository(); // return new JdbcMemberRepository(dataSource); // return new JpaMemberRepository(em); // } } 생성자 주입을 못받고 있다고 합니다.@Autowired public SpringConfig(MemberRepository memberRepository) { this.memberRepository = memberRepository; }
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
jdbc 연결 오류
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.https://drive.google.com/file/d/13B3t74Z3Xy8CyY0XTSTYjosfFZOhgOMB/view?usp=sharing위는 프로젝트 파일입니다.db연결 까지 완료 했고 테이블까지 생성 했습니다.하지만, 홈 화면에서 회원 목록을 조회 하려고 하면,인텔리제이 콘솔창에 이와 같은 오류가 발생합니다.select * from member [42104-224]] with root causeorg.h2.jdbc.JdbcSQLSyntaxErrorException: Table "MEMBER" not found (this database is empty); SQL statement:select * from member [42104-224]db까지 연결을 잘 했다고 생각하는데, 대체 어디가 잘 못 되어 member테이블을 찾지 못하는지 모르겠습니다.
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
DTO 선언할 때 @AllArgsConstructor 붙여준 이유
DTO 선언 시 @AllArgsConstructor를 붙여주셨는데 그 이유가 궁금합니다.Jackson 라이브러리가 정상적으로 JSON 데이터를 객체에 바인딩 해주기 위해 모든 인스턴스 변수를 포함한 생성자가 필요해서 그런 것인가요?혹은 단순히 컨트롤러 메서드에서 DTO 데이터를 전체적으로 초기화하기 위함인가요?
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
재질문드립니다.(해결했습니다.)
무료버전 인텔리j라서 강사님처럼 sql문이 나오지않아서 확인은 못하나터미널에서 mysql확인 결과 테이블은 잘 생성되었습니다.//해결했습니다. 23/03/25 16:54기본생성자를 안해서 생긴 문제였고 에러코드에서 인지는 하고있었는데 최초 해결시 접근제어자 public과 void를 사용해버려서 기본생성자로 인식을 못했던것같습니다. 같은 증상있으신분들은 참고해주세요
-
미해결백엔드 개발자 성능 개선 초석 다지기
ngrinder쪽에 스크립트 클릭시 오류
실습도중 Script 클릭시 해당 오류가 납니다. 컴퓨터 스펙은 m1 입니다.. 2024-03-25 14:53:51,833 ERROR FileEntryRepository.java:192 : Error while fetching files from SVN for admin 다른 버전으로 설치해도 동일한 이슈가 나서 혹시 해결하셨던 내용이 있을지 문의드립니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
DB연결 오류
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 강의대로 h2데이터베이스 잘 들어가지는데 빌드하고 실행하면 조회와 멤버 등록에서 오류가 납니다 [2m2024-03-25T10:58:04.317+09:00[0;39m [31mERROR[0;39m [35m10840[0;39m [2m---[0;39m [2m[demo] [nio-8080-exec-5][0;39m [2m[0;39m[36mo.a.c.c.C.[.[.[/].[dispatcherServlet] [0;39m [2m:[0;39m Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: java.lang.IllegalStateException: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection] with root cause org.h2.jdbc.JdbcSQLInvalidAuthorizationSpecException: Wrong user name or password [28000-224] 오류는 이렇게 납니다. 어떻게 해야 하나요? 강의대로 application.properties도 잘 했고, h2디비 실행도 잘 됩니다. 디비 켜놓고 해도 오류나네요 ㅜㅡ
-
미해결스프링 시큐리티
파일이 수시로 이름이 바껴있네요 ㄷㄷ
CustomAuthenticationProvider 로 폼인증방식 강의 진행하셨는데요. Ajax인증방식에서는 FormAuthenticationProvider로 파일명이 Custom에서 바껴있는데 중간에 이름만 바꾸신건가여?? 강의를 듣다보면 파일이름이 달라져서 헷갈립니다. ㄷㄷ강의진행시에 바로직전까지 했던 소스의 버전관리가 필요해보입니다. 다음강의 들으면 파일명이 혹은 실제코드가 달라져있는게 초짜인 수강생들에겐 좀 힘듭니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
java 17을 깔고 세팅도 다 맞췄는데 이런메세지가 떠요
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]밑에 무슨 경고문이 뜨고 실행버튼이 여기서는 보이지 않아요 이걸 어떻게 하면 되나요 ㅠㅠ++)build.gradle 을 open as project 로도 해보았습니다.
-
미해결스프링 시큐리티 OAuth2
keycloak인증 인가 정보에 부가정보를 추가할 수 있나요?
안녕하세요. 인증 인가 방법에 대해서 강의를 통해 많은 도움이 되고 있습니다.인증 인가 후 또는 인증 인가시에 부가 정보를 토큰 정보에 포함시킬 수 있는지 궁금합니다.예를 들면 해당 사용자의 서비스별 구독 정보등을 토큰에 포함시켜 이 정보를 인가 정보로 활용하고 싶은데요. 이런 정보는 access_token과 별개로 인증 후에 따로 토큰을 생성하여 관리해야 하나요.아니면 혹시 keycloak에서 생성하는 access_token에 포함시키는 방법이 있는지 궁금합니다.조언 부탁드립니다. 감사합니다.
-
미해결코틀린 문법부터 실무까지 (자바 to 코틀린 실무)
실습. gradle update/script 강의 문의
강의내용대로 project structor와 setting에서 SDK설정을 하고 grade build를 했으나 다음과 같이 오류가 납니다.오류메시지/prince-maker-main/build.gradle.kts:5:59: Unresolved reference: id 오류 라인 소스id("org.springframework.boot") version springBootVersion id("io.spring.dependency-management") version "1.1.4"해당부분이 해결되지 않으면 이후 강의는 눈으로만 봐야될꺼 같아서 문의드립니다~
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
테스트실행중 테스트는 잘 되는데 오류가 한 줄 계속 발생합니다
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]Java HotSpot(TM) 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended이 오류는 무엇인가요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
model.addAttribute
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.이미지와 같이 model.addAttribute("data","hello!!"); 입력했을 때, 아래와 같은 오류가 발생합니다.Cannot resolve method 'addAttribute' in 'Model'
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
테스트가 올바르게 되지 않는 것 같아요
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]여기에 질문 내용을 남겨주세요.package hello.hellospring.service; import hello.hellospring.domain.Member; import hello.hellospring.repository.MemoryMemberRepository; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Test; import static org.assertj.core.api.Assertions.*; import static org.junit.jupiter.api.Assertions.*; class MemberServiceTest { MemberService memberService; MemoryMemberRepository memberRepository; @BeforeEach public void beforeEach() { memberRepository = new MemoryMemberRepository(); memberService = new MemberService(memberRepository); } @AfterEach public void afterEach() { memberRepository.clearStore(); } @Test public void 회원가입() throws Exception { //Given Member member = new Member(); member.setName("hello"); //When Long saveId = memberService.join(member); //Then Member findMember = memberRepository.findById(saveId).get(); assertEquals(member.getName(), findMember.getName()); } @Test public void 중복_회원_예외() throws Exception { //Given Member member1 = new Member(); member1.setName("spring"); Member member2 = new Member(); member2.setName("spring"); //When memberService.join(member1); IllegalStateException e = assertThrows(IllegalStateException.class, () -> memberService.join(member2));//예외가 발생해야 한다. assertThat(e.getMessage()).isEqualTo("이미 존재하는 회원입니다."); } }강의를 따라하다가 좀 잘 안되서 pdf내용을 그대로 긁어왔는데 import org.junit.jupiter.api.AfterEach;가 빠져있더라구요. 그것만 수정하면 될 줄 알았는데, get()과 assertThrows에서 문제가 발생하고있는것 같습니다 왜그럴까요?
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
맥 터미널창에서 파일을 찾을수 없다고 떠요,,
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]spring 파일에 hello-spring을 생성했고터미널에서 cd spring을 입력하면 파일을 찾을 수 없다고 뜨는데 어떻게 해야하나요??
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
MemberRepositoryTest 오류 NoMatching
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]테스트를 하는데 noMatch라는 문구가 뜹니다