zoukankan      html  css  js  c++  java
  • 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"));
            } } }
  • 相关阅读:
    nunit2.5.7 单元测试时提示:“当前不会命中断点 还没有为该文档加载任何符号”
    文件下载报错:引发类型为“System.OutOfMemoryException”的异常-.Net 内存溢出
    asp.net 访问页面访问统计实现 for iis7
    easyui tree 更改图标
    asp.net 访问页面访问统计实现
    记一次空格引起的查询问题
    SVN如何忽略dll文件和bin目录
    vmware 中安装Ghost XP 版本心得
    冒泡排序
    JS数组去重
  • 原文地址:https://www.cnblogs.com/zmlion1995/p/5800661.html
Copyright © 2011-2022 走看看