Spring框架连接数据库

先写spring.config.xml配置文件

spring.config.xml文件中配置数据库连接按照以下套路
1.引入数据库配置   DataSource
有三种方式,一种手动,两种通过读取properties文件完成
(1)手动配置JDBC 
< bean class ="org.springframework.jdbc.datasource.DriverManagerDataSource" name ="dataSource2" >
     <!-- 驱动 -->
     < property name ="driverClassName" value ="com.mysql.jdbc.Driver" />
     <!-- 数据库地址 -->
     < property name ="url" value ="jdbc:mysql:///fruit?characterEncoding=utf-8&amp;useUnicode=true" />
     <!-- 账号密码 -->
     < property name ="username" value ="root" />
     < property name ="password" value =“123" />
</ bean >


通过 properties 文件配置需要先引入properties文件,有两种方法
     配置引入方法1:  引入 对应的 jdbc.properties文件
< bean class ="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer" >
     < property name ="location" value ="classpath*:jdbc.properties" />
</ bean >
     配置引入方法2:
< context : property-placeholder location ="classpath:jdbc.properties" />
两种方式选一种就够了,建议选第二种方法,因为代码少。。。
(2)通过propreties文件配置jdbc
< bean class ="org.apache.commons.dbcp.BasicDataSource" name ="dataSource" >

    < property name ="driverClassName" value ="${drivarname}" />
    < property name ="url" value ="${url}" />
    < property name ="username" value ="${username}" />
    < property name ="password" value ="${password}" />

</ bean >
(3)通过properties文件配置C3P0
< bean class ="com.mchange.v2.c3p0.ComboPooledDataSource" name ="comboPooledDataSource" >
    < property name ="driverClass" value ="${drivarname}" />
    < property name ="jdbcUrl" value ="${url}" />
    < property name ="user" value ="${username}" />
    < property name ="password" value ="${password}" />
</ bean >
2.创建模板对象  JdbcTemplate   依赖 DataSource

< bean name ="jdbcTemplate" class ="org.springframework.jdbc.core.JdbcTemplate" >
    <!-- 根据name把 数据库连接池注入到 JDBC 模板中 -->
     < property name = "dataSource" ref ="dataSource2" />
</ bean >
3.把模板注入到Dao层对象中  创建 Dao 层对象,依赖于 JdbcTemplate
< bean class ="com.lanou3g.dao.impl.HeroDaoImpl" name ="heroDao2" >
    < property name ="jdbcTemplate" ref ="jdbcTemplate" />
    <!-- 直接往 Dao 层注入数据库连接池 也会自动创建 jdbcTemplate -->
    <!--<property name="dataSource" ref="dataSource"/>-->
</ bean >

在dao层中连接数据库操作:

dao层要继承 JdbcDaoSupport类
模板会被注入到HeroDemoImpl的父类JdbcDaoSupport里面,父类中有一系列操作模板的方法
public class HeroDaoImpl extends JdbcDaoSupport implements HeroDao{
    @Override

    public void add() {
        System.out.println("实现数据库的增加方法");
        //编写SQL
        String sql ="INSERT INTO hero VALUES (NULL ,?,?,NULL )";
        //使用JDBC模板执行SQL
        this.getJdbcTemplate().update(sql,"小花","女");

    }

}


  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值