【Spring笔记】03_JDBC模板

本文介绍了Spring框架中的JdbcTemplate,它是一个简化JDBC API使用的工具。通过JdbcTemplate,可以方便地执行数据库的增删改查操作。首先,需要引入spring-jdbc和spring-tx依赖,然后创建数据源和JdbcTemplate实例,最后通过调用其update和query方法进行数据操作。示例代码展示了如何配置数据源、执行插入操作以及查询单个对象。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本博文笔记整理自黑马课程《SSM框架Spring+SpringMVC+MyBatis全覆盖》

Spring JdbcTemplate基本使用

JdbcTemplate概述

它是spring框架中提供的一个对象,是对原始繁琐的JdbcAPI对象的简单封装。spring框架为我们提供了很多的操作模板类。例如:操作关系型数据的JdbcTemplate和HibernateTemplate,操作nosql数据库的RedisTemplate,操作消息队列的JmsTemplate等等。

JdbcTemplate开发步骤

  • 导入spring-jdbc和spring-tx坐标

  • 创建数据库和表

  • 创建JdbcTemplate对象

    dbcTemplatejdbcTemplate= new JdbcTemplate();

    jdbcTemplate.setDataSource(dataSource);

  • 执行数据库操作

    • 更新操作(增删改)

      jdbcTemplate.update(sql,params)

    • 查询操作

      jdbcTemplate.query(sql,Mapper,params)

      jdbcTemplate.queryForObject(sql,Mapper,params)

        //创建数据源对象
        ComboPooledDataSource dataSource = new ComboPooledDataSource();
        dataSource.setDriverClass("com.mysql.jdbc.Driver");
        dataSource.setJdbcUrl("jdbc:mysql://localhost:3306/test");
        dataSource.setUser("root");
        dataSource.setPassword("root");

        JdbcTemplate jdbcTemplate = new JdbcTemplate();
        //设置数据源对象  知道数据库在哪
        jdbcTemplate.setDataSource(dataSource);
        //执行操作
        int row = jdbcTemplate.update("insert into account values(?,?)", "tom", 5000);

或者

    <!--加载jdbc.properties-->
    <context:property-placeholder location="classpath:jdbc.properties"/>

    <!--数据源对象-->
    <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.username}"/>
        <property name="password" value="${jdbc.password}"/>
    </bean>

    <!--jdbc模板对象-->
    <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
        <property name="dataSource" ref="dataSource"/>
    </bean>
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:applicationContext.xml")
public class JdbcTemplateCRUDTest {

    @Autowired
    private JdbcTemplate jdbcTemplate;

    @Test
    public void testQueryOne(){
        Account account = jdbcTemplate.queryForObject("select * from account where name=?", new BeanPropertyRowMapper<Account>(Account.class), "tom");
        System.out.println(account);
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值