SpringDao操作——訪問數據庫


第一步訪問數據庫

1.做相關的准備工作

  新建一個java項目 (SpringDaoTest)
  新建一個lib:首先ioc是基礎,一定要把ioc的包放進去,然后是JDBC的包,然后是log和日志相關的東西,還差一個數據源的緩沖池  alibaba(第一個),別忘了ojdbc6.jar  
  新建一個resource(放入log4j.properties)
  加載所有的jar包  
  相關的准備工作就完成了,這時還要檢查一下數據庫可不可以用

2.接着進入到配置階段(spring.config)

  新建DataSourceConfig類     //數據源配置

 1 package spring.config;
 2 
 3 import javax.annotation.Resource;
 5 import org.springframework.context.annotation.Bean;
 6 import org.springframework.context.annotation.ComponentScan;
 7 import org.springframework.context.annotation.Configuration;
 8 import org.springframework.jdbc.core.JdbcTemplate;
 9 import com.alibaba.druid.pool.DruidDataSource;
10 
11 @Configuration
12 @ComponentScan("com.zhaoming")
13 public class DataSourceConfig {
14 
15     @Resource(name="dataSource")
16     private DruidDataSource dataSource;
17     
18     //獲取數據源
19     @Bean(name="dataSource")
20     public DruidDataSource getDruidDataSource(){
21         DruidDataSource dds = new DruidDataSource();
22         dds.setUrl("jdbc:oracle:thin:@localhost:1521:orcl");
23         dds.setUsername("zhaoming");
24         dds.setPassword("123");
25         dds.setDriverClassName("oracle.jdbc.driver.OracleDriver");
26         return dds;
27     }
28     
29     @Bean(name="jdbcTemplate")
30     public JdbcTemplate getJdbcTemplate(){
31         JdbcTemplate jdbcTemplate = new JdbcTemplate();
32         jdbcTemplate.setDataSource(dataSource);
33         return jdbcTemplate;
34     } 
35     
36 }

3.測試是否能連接成功

package spring.config;

import org.junit.Test;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.jdbc.core.JdbcTemplate;

public class DataSourceConfigTest {

    @Test
    public void testgetJdbc(){
        AnnotationConfigApplicationContext ac =    new AnnotationConfigApplicationContext(DataSourceConfig.class);
        JdbcTemplate jdbcTemplate = ac.getBean(JdbcTemplate.class);
        String sql = "select * from users";
        jdbcTemplate.queryForList(sql);
    }
    
}

 

  歐克啦啊啊啊``````可以訪問數據了``````

 

但是有沒有發現此時的測試很麻煩,接下里引入Spring的基於JUnit的測試環境,搭建mock環境

package spring.config;

import javax.annotation.Resource;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

@RunWith(SpringJUnit4ClassRunner.class)       
@ContextConfiguration(classes = {DataSourceConfig.class})
public class DataSourceConfigTest {

    @Resource(name="jdbcTemplate")
    private JdbcTemplate jdbcTemplate;

    @Test
    public void testgetJdbc1(){
        
        String sql = "select * from users";
        List<Map<String,Object>> list = jdbcTemplate.queryForList(sql);
        for (Map<String, Object> map : list) {
            System.out.println(map.get("name"));
        } } }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM