🐞Failed to configure a DataSource:'url' attribute is not specified🐞
보드 클라이언트를 보드 컨트롤러로 바꾼뒤 테스트 차 스프링 부트를 실행해봤는데 이러 에러창이 떳다

🔎원인 분석
에러의 문구를 해석해보면 “스프링 부트가 DB에 연결하려고 했는데, DB 정보(URL/드라이버)를 하나도 못 찾았다” 는 뜻이다
이 에러가 뜨는경우 3가지
1. DB설정 안했는데 JDBC의존성은 있을때
spring-boot-starter-data-jpa
spring-boot-starter-jdbc
pom.xml에 이게 있으면 스프링부트를 실행할때 자동으로 데이터 소스를 만들려고 하는데 설정이 없으니까 에러가 생긴다
2. application.properties에 DB정보가 없을때
spring.datasource.url
spring.datasource.username
spring.datasource.password
spring.datasource.driver-class-name
이중에 하나라도 없으면 에러가 생길수 있다
3. DB 드라이버 의존성 없음
mysql-connector-j
현재 MySQL 사용하는데 pom.xml 설정에 드라이버 의존성을 넣지 않은경우 에러가 생길수 있다
🛠️해결방법
1.pom.xml에 드라이버 의존성이 있는지 체크한다
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
</dependency>
드라이버 있는것을 확인하였다
2. application.properties에 DB정보 추가하기
현재 XML에 빈클래스로 데이터 소스가 정의되어있다
<bean class="org.apache.commons.dbcp.BasicDataSource" id="dataSource">
<property name="driverClassName" value="com.mysql.cj.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/데이터베이스명" />
<property name="username" value="계정명" />
<property name="password" value="비번" />
</bean>
이 정보를 이제 스프링 부트실행을 위해서 application.properties에 추가해주어야한다
spring.datasource.url=jdbc:mysql://localhost:3306/데이터베이스명?serverTimezone=Asia/Seoul&characterEncoding=UTF-8
spring.datasource.username=계정명
spring.datasource.password=비밀번호
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
이렇게 application.properties에 추가해주면 xml없이도 부트가 알아서 DataSource를 만들고 jdbcTemplate도 사용할수 있다
만약 정말로 xml로 사용하고 싶다고하면
@ImportResource("classpath:applicationContext.xml")
@ImportResource라는 어노테이션을 설정해서 코드가 xml을 읽게 해주어야 되서 번거롭다
'🐢🐢꼬부기 LV.2 | 실습•에러 > 🛡️껍질에 숨기(에러해결)' 카테고리의 다른 글
| Git Clone 후 Eclipse 프로젝트 Import 실패 해결 (0) | 2026.02.07 |
|---|---|
| 스프링 부트 실행에러 해결 (0) | 2026.01.31 |
| 스프링 부트 과제 에러 해결 (0) | 2026.01.19 |
| SQLException : No value specified (0) | 2026.01.15 |
| NoSuchBeanDefinitionException (0) | 2026.01.14 |