使用纯注解开发
目录结构

JdbcConfiguration
package com.itheima.Config;import com.mchange.v2.c3p0.ComboPooledDataSource;
import org.apache.commons.dbutils.QueryRunner;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;import javax.sql.DataSource;
import java.beans.PropertyVetoException;/*** @author :lijunxuan* @date :Created in 2019/5/25 21:41* @description :* @version: 1.0*/
@Configuration
@ComponentScan("com.itheima")
public class JdbcConfiguration {@Value("${jdbc.driver}")private String driver;@Value("${jdbc.url}")private String jdbcUrl;@Value("${jdbc.user}")private String user;@Value("${jdbc.password}")private String password;@Bean("dataSource")public DataSource createDataSouce(){ComboPooledDataSource dataSource = new ComboPooledDataSource();try {dataSource.setDriverClass(driver);} catch (PropertyVetoException e) {e.printStackTrace();}dataSource.setJdbcUrl(jdbcUrl);dataSource.setUser(user);dataSource.setPassword(password);return dataSource;}@Bean("queryRunner")public QueryRunner createQueryRunner(DataSource dataSource){QueryRunner queryRunner = new QueryRunner(dataSource);return queryRunner;}
}
SpringConfiguration
package com.itheima.Config;import com.mchange.v2.c3p0.ComboPooledDataSource;
import org.apache.commons.dbutils.QueryRunner;
import org.springframework.context.annotation.*;import javax.sql.DataSource;
import java.beans.PropertyVetoException;/*** @author :lijunxuan* @date :Created in 2019/5/25 21:41* @description :* @version: 1.0*/
@Configuration
@ComponentScan("com.itheima")
@PropertySource("db.properties")
@Import(JdbcConfiguration.class)
public class SpringConfiguration {}
TestCRUD
package com.itheima;import com.itheima.Config.SpringConfiguration;
import com.itheima.domain.Account;
import com.itheima.service.AccountService;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;import java.util.List;/*** @author :lijunxuan* @date :Created in 2019/5/25 17:36* @description :* @version: 1.0*/
public class TestCRUD {/*** 查询所有用户信息* @param*/@Testpublic void testfindAll(){ApplicationContext ac = new AnnotationConfigApplicationContext(SpringConfiguration.class);AccountService accountService = ac.getBean(AccountService.class);System.out.println("accountService:"+accountService);List<Account> accountList = accountService.findAll();System.out.println("accountList:"+accountList);for (Account account1 : accountList) {System.out.println(account1);}}
}
db.properties配置文件
