Spring jdbc----JdbcTemplate

为了使 JDBC 更加易于使用,Spring 在 JDBCAPI 上定义了一个抽象层, 以此创建一个JDBC存取框架.java

做为 SpringJDBC 框架的核心, JDBC 模板的设计目的是为不一样类型的JDBC操做提供模板方法. 每一个模板方法都能控制整个过程,并容许覆盖过程当中的特定任务.经过这种方式,能够在尽量保留灵活性的状况下,将数据库存取的工做量降到最低.spring

JdbcTemplate主要提供如下五类方法:
execute方法:能够用于执行任何SQL语句,通常用于执行DDL语句;
update方法及batchUpdate方法:update方法用于执行新增、修改、删除等语句;batchUpdate方法用于执行批处理相关语句;
query方法及queryForXXX方法:用于执行查询相关语句;
call方法:用于执行存储过程、函数相关语句。数据库

 

一、配置Spring JDBCexpress

<!--********************************************配置Spring***************************************-->
<!-- 自动扫描 -->
<context:component-scan base-package="com.demo">
    <!-- 扫描时跳过 @Controller 注解的JAVA类(控制器) -->
    <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
</context:component-scan>

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


<!--********************************************配置hibernate********************************************-->

<!--扫描配置文件(这里指向的是以前配置的那个config.properties)-->
<context:property-placeholder location="classpath:/config.properties" />

<!--配置数据源-->
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">

    <property name="driverClass" value="${jdbc.driver}" />  <!--数据库链接驱动-->
    <property name="jdbcUrl" value="${jdbc.url}" />     <!--数据库地址-->
    <property name="user" value="${jdbc.username}" />   <!--用户名-->
    <property name="password" value="${jdbc.password}" />   <!--密码-->
    <property name="maxPoolSize" value="40" />      <!--最大链接数-->
    <property name="minPoolSize" value="1" />       <!--最小链接数-->
    <property name="initialPoolSize" value="10" />      <!--初始化链接池内的数据库链接-->
    <property name="maxIdleTime" value="20" />  <!--最大空闲时间-->
</bean>

二、dao层用法  只写了insert方法框架

package com.demo.dao.impl;

import com.demo.dao.UserJdbc;
import com.demo.pojo.User;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Repository;

import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
@Repository
public class UserJdbcImpl implements UserJdbc {

    @Resource
    private JdbcTemplate jdbcTemplate;


    public void save(User user) {

        jdbcTemplate.update("insert into t_user(id,username,password,age,tel,cjsj,deleted) values (?,?,?,?,?,?,?)",
                new Object[]{
                             user.getId(),
                             user.getUsername(),
                             user.getPassword(),
                             user.getAge(),
                             user.getTel(),
                             user.getCjsj(),
                             0});
    }
}
相关文章
相关标签/搜索