zoukankan      html  css  js  c++  java
  • 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>
  • 相关阅读:
    Eluments ui 二级下拉菜单 回显问题
    数据结构与算法李春葆系列之二叉树设计性实验
    数据结构与算法李春葆之判断二叉树子树
    数据结构与算法李春葆系列 判断二叉树相同算法
    数据结构与算法李春葆系列之数组和广义表思维导图
    数据结构与算法李春葆系列之递归思维导图
    C语言之scanf函数
    c标准库(STL)系列-sscanf()
    一个可以把windows系统跑死的Java程序
    解决ubuntu19.0‘E: 无法获得锁 /var/lib/dpkg/lock-frontend
  • 原文地址:https://www.cnblogs.com/xb1223/p/10174987.html
Copyright © 2011-2022 走看看