스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
수강 중H2 다운로드페이지 : 1.4.200버전 설치
C드라이브-사용자-(사용자이름)
나 같은 경우는 C:\Users\user
였다.org.h2.jdbc.JdbcSQLInvalidAuthorizationSpecException: Wrong user name or password [28000-214]
application.properties
에 DB 접속을 위한 username, password 정보를 잘못 입력해서 발생하는 에러이다. 강의 당시에는 해당 정보가 없어도 연결이 되었는데, 그새 업데이트로 인해 반드시 필요하게 되어 다른 수강생분들도 자주 겪는 에러였다.
강의를 따라 H2 DB 설정 시 username=sa로 적고 password는 비워둔 상태인 경우를 가정한다. password는 비워뒀으니 username만 적었는데 위 에러가 발생했다. 검색해서 테스트해보니 password가 없어도 해당 코드는 적어주어야 연결이 된다.
참고 stackoverflow
# h2 데이터베이스 연결
spring.datasource.url=jdbc:h2:tcp://localhost/~/test
spring.datasource.driver-class-name=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=
// SpringConfig.java
@Configuration
public class SpringConfig {
// DB연결에 필요한 dataSource 추가
private DataSource dataSource;
@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);
}
}