• Spring配置连接池和 Dao 层使用 jdbcTemplate


    1、Spring 配置 c3p0 连接池

      (1)导入jar包(Maven项目)

    <dependency>
        <groupId>com.mchange</groupId>
        <artifactId>c3p0</artifactId>
        <version>0.9.2.1</version>
    </dependency>

      我们引入 c3p0 的依赖后会自动引入 mchange-commons-java 的 jar 包

      (2)创建Spring配置文件,配置连接池

      原始的代码实现

    // c3p0 连接池代码实现
    ComboPooledDataSource dataSource = new ComboPooledDataSource();
    dataSource.setDriverClass("com.mysql.jdbc.Driver");
    dataSource.setJdbcUrl("jdbc:mysql:///lianxi");
    dataSource.setUser("root");
    dataSource.setPassword("root");

      把代码在配置文件中进行配置

    <!-- 配置c3p0连接池 -->
    <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
        <!-- 注入属性值 -->
        <property name="driverClass" value="com.mysql.jdbc.Driver"></property>
        <property name="jdbcUrl" value="jdbc:mysql:///lianxi"></property>
        <property name="user" value="root"></property>
        <property name="password" value="root"></property>
    </bean>

    2、dao使用 jdbcTemplate

      (1)创建service和dao,配置service和dao对象,在service注入dao对象(类中设置属性的set方法 + 配置文件)

    private UserDao userDao;
    
    public void setUserDao(UserDao userDao) {
        this.userDao = userDao;
    }

      (2)创建 jdbcTemplate 对象,把模板对象注入到 dao 里面(类中设置属性的set方法 + 配置文件)

    // 得到jdbcTemplate对象
    private JdbcTemplate jdbcTemplate;
    
    public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
        this.jdbcTemplate = jdbcTemplate;
    }

      (3)在 jdbcTemplate 对象里面注入dataSource(配置文件完成)

      配置文件如下:

    <!-- 配置c3p0连接池 -->
    <bean id="dataSource"
        class="com.mchange.v2.c3p0.ComboPooledDataSource">
        <!-- 注入属性值 -->
        <property name="driverClass" value="com.mysql.jdbc.Driver"></property>
        <property name="jdbcUrl" value="jdbc:mysql:///lianxi"></property>
        <property name="user" value="root"></property>
        <property name="password" value="root"></property>
    </bean>
    
    <!-- 创建service和dao对象,在service注入dao对象 -->
    <bean id="userService" class="com.bjxb.c3p0.UserService">
        <!-- 注入dao对象 -->
        <property name="userDao" ref="userDao"></property>
    </bean>
    
    <bean id="userDao" class="com.bjxb.c3p0.UserDao">
        <!-- 注入jdbcTemplate -->
        <property name="jdbcTemplate" ref="jdbcTemplate"></property>
    </bean>
    
    <!-- 创建jdbcTemplate对象 -->
    <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
        <!--dataSource传递到模板对象中去 -->
        <property name="dataSource" ref="dataSource"></property>
    </bean>
  • 相关阅读:
    数据库回滚解决删除数据库出错
    教大家支付宝抢红包
    MySql 连接字符串
    搭建Git服务器
    队列的顺序存储结构
    栈的应用---递归
    栈的链式存储结构及应用(C、Java代码)
    栈的顺序存储结构及应用(C、Java代码)
    静态链表、循环链表、双向链表(C代码实现)
    线性表的链式存储结构(Java代码实现)
  • 原文地址:https://www.cnblogs.com/xb1223/p/10174987.html
Copyright © 2020-2023  润新知