当前位置:Gxlcms > 数据库问题 > spring jdbcTemplate

spring jdbcTemplate

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

bean id="datasource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="${divername}"></property> <!--驱动类配置--> <property name="url" value="${utl}"></property><!--数据库连接url--> <property name="username" value="${username}"></property><!--数据库用户名--> <property name="password" value="${passworld}"></property><!--数据库密码--> </bean>

c3p0数据源配置:

c3p0的数据原配置需要引入一个jar包如图所示:

技术分享

<bean id="datasource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
        <property name="driverClass" value="${divername}"></property> <!--驱动类配置-->
        <property name="jdbcUrl" value="${url}"></property><!--数据库连接url-->
        <property name="user" value="${username}"></property><!--数据库用户名-->
        <property name="password" value=""></property><!--数据库密码-->
    </bean>

dbcp数据原配置:

dbcp数据源的配置同样需要引入jar包如图所示:

技术分享

<bean id="datasource" class="org.apache.commons.dbcp.BasicDataSource">
        <property name="driverClassName" value="${divername}"></property> <!--驱动类配置-->
        <property name="url" value="${utl}"></property><!--数据库连接url-->
        <property name="username" value="${username}"></property><!--数据库用户名-->
        <property name="password" value="${passworld}"></property><!--数据库密码-->
    </bean>

3.在applicationContext.xml配置文件中配置jdbcTemplate,并为其注入dataSource。

<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
        <property name="dataSource" ref="datasource"/>
    </bean>

4.编写Dao接口即实现类并在其方法中使用jdbcTemplate API实现数据库操作。

JdbcTemplate API常用方法回顾:

技术分享

使用JdbcTemplate实现存储过程调用

spring JdbcTemplate支持对存储过程的调用,JdbcTemplate类支持存储过程回调如下:

CallableStatementCreator:通过回调获取JdbTemplate提供的,由用户使用该Connection创建想关的CallableStatement。

CallableStatementCallback:通过回调获取JdbcTemplate提供的CallableStatement,用户可以在该CallableStatement执行任何操作。

String departmentName=(String)getJdbcTemplate().execute(
                new CallableStatementCreator() {
                    @Override
                    public CallableStatement createCallableStatement(Connection con)
                            throws SQLException {
                        String storedProc="{调用存储过程的sql语句}";
                        CallableStatement cs=con.prepareCall(storedProc);
                        cs.setString(1,"sdfd");//向存储过程中传入String类型的输入参数(第一个是参数的下标从1开始第二个是参数值)
                        cs.registerOutParameter(2,Types.VARCHAR);//向存储过程中传入输出参数
                        return cs;
                    }
                },new CallableStatementCallback() {

                    @Override
                    public Object doInCallableStatement(CallableStatement cs)
                            throws SQLException, DataAccessException {
                            cs.execute();
                        return cs.getString(2);
                    }
                }
                );

spring jdbcTemplate

标签:

人气教程排行