当前位置:Gxlcms > 数据库问题 > Java Spring-JdbcTemplate

Java Spring-JdbcTemplate

时间:2021-07-01 10:21:17 帮助过:15人阅读

  • DBCP数据源,BasicDataSource;
  • C3P0数据源,ComboPooledDataSource;
  • 一、DriverManagerDataSource的配置

    配置文件:

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
    
        <!--配置连接池-->
        <bean id="datasource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
            <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
            <property name="url" value="jdbc:mysql://localhost:3306/testdb"/>
            <property name="username" value="host"/>
            <property name="password" value="hy1102"/>
        </bean>
    
        <!--定义模板-->
        <bean id="jdbctemplate" class="org.springframework.jdbc.core.JdbcTemplate">
            <property name="dataSource" ref="datasource"/>
        </bean>
    </beans>
    

    测试类:

    @RunWith(SpringJUnit4ClassRunner.class)
    @ContextConfiguration("classpath:config4.xml")
    public class Jdbc2 {
        @Resource(name = "jdbctemplate")
        private JdbcTemplate jt;
    
        @Test
        public void demo(){
            jt.execute("...");
        }
    }
    

     

    二、DBCP数据源,BasicDataSource的配置

    首先需要引入两个jar包,也就是commons.dbcp 和 commons.pool。和上一种方法略有区别,但差别很小。

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
    
        <!--配置连接池-->
        <!--<bean id="datasource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">-->
            <!--<property name="driverClassName" value="com.mysql.jdbc.Driver"/>-->
            <!--<property name="url" value="jdbc:mysql://localhost:3306/testdb"/>-->
            <!--<property name="username" value="host"/>-->
            <!--<property name="password" value="hy1102"/>-->
        <!--</bean>-->
    
        <!-- 配置DBCP连接池 -->
        <bean id="datasource" class=" org.apache.commons.dbcp.BasicDataSource ">
            <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
            <property name="url" value="jdbc:mysql://localhost:3306/testdb"/>
            <property name="username" value="host"/>
            <property name="password" value="hy1102"/>
        </bean>
    
        <!--定义模板-->
        <bean id="jdbctemplate" class="org.springframework.jdbc.core.JdbcTemplate">
            <property name="dataSource" ref="datasource"/>
        </bean>
    </beans>
    

     

    三、C3P0数据源,ComboPooledDataSource的配置

    首先先引入jar包c3p0-0.9.1.2.jar。

    C3P0的配置参数和前两个不太一样,这个要注意。

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
    
        <!--配置连接池-->
        <!--<bean id="datasource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">-->
        <!--<property name="driverClassName" value="com.mysql.jdbc.Driver"/>-->
        <!--<property name="url" value="jdbc:mysql://localhost:3306/testdb"/>-->
        <!--<property name="username" value="host"/>-->
        <!--<property name="password" value="hy1102"/>-->
        <!--</bean>-->
    
        <!-- 配置DBCP连接池 -->
        <!--<bean id="datasource" class=" org.apache.commons.dbcp.BasicDataSource ">-->
            <!--<property name="driverClassName" value="com.mysql.jdbc.Driver"/>-->
            <!--<property name="url" value="jdbc:mysql://localhost:3306/testdb"/>-->
            <!--<property name="username" value="host"/>-->
            <!--<property name="password" value="hy1102"/>-->
        <!--</bean>-->
    
        <!--  配置 c3p0 连接池 -->
        <bean id="datasource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
            <property name=" driverClass " value="com.mysql.jdbc.Driver"/>
            <property name=" jdbcUrl " value="jdbc:mysql://localhost:3306/testdb"/>
            <property name=" user " value="host"/>
            <property name=" password " value="hy1102"/>
        </bean>
    
        <!--定义模板-->
        <bean id="jdbctemplate" class="org.springframework.jdbc.core.JdbcTemplate">
            <property name="dataSource" ref="datasource"/>
        </bean>
    </beans>
    

     

    四、将参数设置写到属性文件中

    方法一:

    在src文件夹下新建jdbc.properties文件

    jdbc.driver = com.mysql.jdbc.Driver
    jdbc.url = jdbc:mysql://localhost:3306/testdb
    jdbc.user = root
    jdbc.password = hy1102
    

    配置文件:

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
    
        <!--配置连接池-->
        <!--<bean id="datasource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">-->
        <!--<property name="driverClassName" value="com.mysql.jdbc.Driver"/>-->
        <!--<property name="url" value="jdbc:mysql://localhost:3306/testdb"/>-->
        <!--<property name="username" value="host"/>-->
        <!--<property name="password" value="hy1102"/>-->
        <!--</bean>-->
    
        <!-- 配置DBCP连接池 -->
        <!--<bean id="datasource" class=" org.apache.commons.dbcp.BasicDataSource ">-->
            <!--<property name="driverClassName" value="com.mysql.jdbc.Driver"/>-->
            <!--<property name="url" value="jdbc:mysql://localhost:3306/testdb"/>-->
            <!--<property name="username" value="host"/>-->
            <!--<property name="password" value="hy1102"/>-->
        <!--</bean>-->
    
        <!--引入该属性文件-->
        <bean class="org.springframework.context.support.PropertySourcesPlaceholderConfigurer">
            <property name="location" value="classpath:jdbc.properties"/>
        </bean>
    
        <!--  配置 c3p0 连接池 -->
        <bean id="datasource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
            <property name=" driverClass " value="${jdbc.driver}"/>
            <property name=" jdbcUrl " value="${jdbc.url}"/>
            <property name=" user " value="${jdbc.user}"/>
            <property name=" password " value="${jdbc.password}"/>
        </bean>
    
        <!--定义模板-->
        <bean id="jdbctemplate" class="org.springframework.jdbc.core.JdbcTemplate">
            <property name="dataSource" ref="datasource"/>
        </bean>
    </beans>
    

     方法二:

    使用context标签。

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="
            http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
            http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">
    
        <!--配置连接池-->
        <!--<bean id="datasource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">-->
        <!--<property name="driverClassName" value="com.mysql.jdbc.Driver"/>-->
        <!--<property name="url" value="jdbc:mysql://localhost:3306/testdb"/>-->
        <!--<property name="username" value="host"/>-->
        <!--<property name="password" value="hy1102"/>-->
        <!--</bean>-->
    
        <!-- 配置DBCP连接池 -->
        <!--<bean id="datasource" class=" org.apache.commons.dbcp.BasicDataSource ">-->
            <!--<property name="driverClassName" value="com.mysql.jdbc.Driver"/>-->
            <!--<property name="url" value="jdbc:mysql://localhost:3306/testdb"/>-->
            <!--<property name="username" value="host"/>-->
            <!--<property name="password" value="hy1102"/>-->
        <!--</bean>-->
    
        <!--引入该属性文件-->
        <!--<bean class="org.springframework.context.support.PropertySourcesPlaceholderConfigurer">-->
            <!--<property name="location" value="classpath:jdbc.properties"/>-->
        <!--</bean>-->
    
        <!--使用context标签引入属性文件-->
        <context:property-placeholder location="classpath:jdbc.properties"/>
    
        <!--  配置 c3p0 连接池 -->
        <bean id="datasource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
            <property name=" driverClass " value="${jdbc.driver}"/>
            <property name=" jdbcUrl " value="${jdbc.url}"/>
            <property name=" user " value="${jdbc.user}"/>
            <property name=" password " value="${jdbc.password}"/>
        </bean>
    
        <!--定义模板-->
        <bean id="jdbctemplate" class="org.springframework.jdbc.core.JdbcTemplate">
            <property name="dataSource" ref="datasource"/>
        </bean>
    </beans>
    

     

    Java Spring-JdbcTemplate

    标签:orm   rem   配置   dem   new   帮助   arch   junit   代码   

    人气教程排行