2012-03-06 2 views
0

Dao 클래스에서 데이터 소스를 인스턴스화하려고합니다. Spring 튜토리얼 http://static.springsource.org/spring/docs/3.1.x/spring-framework-reference/html/jdbc.html을 따르고 있습니다. 이것은 내 코드 스 니펫입니다.은 Spring의 JdbcTemplate을 사용하여 데이터 소스를 인스턴스화합니다.

import org.springframework.jdbc.core.JdbcTemplate; 
import org.springframework.jdbc.datasource.*; 


public class JdbcUserDao implements UserDao { 

    private JdbcTemplate jdbcTemplate; 

    public void setDataSource(DataSource dataSource){ 
     this.jdbcTemplate = new JdbcTemplate(dataSource); 
    } 

그러나 "데이터 소스를 유형으로 확인할 수 없습니다."라는 메시지가 나타납니다. 어떻게 해결할 수 있습니까?

답변

2

당신은 그게 다야, 그것을 가져와야 :

import javax.sql.DataSource; 
1

당신이 Spring 설정에서 설정 한 데이터 소스는 무엇입니까? 프로젝트에 org.apache.commons.dbcp.BasicDataSource와 비슷한 데이터 소스 라이브러리가 있어야합니다. 튜토리얼 링크 http://static.springsource.org/spring/docs/3.1.x/spring-framework-reference/html/jdbc.html은 '13 .2.1.2 JdbcTemplate 모범 사례 '섹션의 구성을 보여줍니다.
작업 :
1) 프로젝트에 데이터 소스 라이브러리가 있는지 확인하십시오. 튜토리얼 (BasicDataSource)에서 언급 한 DataSource를 사용하는 경우 아파치 공유 DBCP 라이브러리가 클래스 경로에 있는지 확인하십시오.
2) DAO 클래스에서 동일한 것을 가져 왔는지 확인하십시오.

+0

가 어떻게이 라이브러리에 대한 메이븐의 종속성을 가져올 수 있습니다 "가져 오기 org.springframework.jdbc가 해결 될 수 없다"? – observer

+0

평민 - DBCP
평민 - DBCP 1.3 [어떤 버전 - 당신 - 필요]
jags

1

pom.xml 파일에 'org.springframework'의존성을 추가하여이 문제를 해결했습니다. 내 경우

<dependency> 
    <groupId>org.springframework</groupId> 
    <artifactId>spring-jdbc</artifactId> 
    <version>3.2.0.RELEASE</version> 
</dependency> 

, 내가 좋아하는 수입 방법 자체에 문제에 직면했다

관련 문제