Spring5 学习笔记 五 、JdbcTemplate

1、概念和准备

<1> 什么是 JdbcTemplate

Spring 框架对 JDBC 进行封装,使用 JdbcTemplate 方便实现对数据库操作

<2> 准备工作

【1】引入相关 jar 包

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

【2】新建数据库

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

【3】在 spring 配置文件配置数据库连接池

bean.xml:

<!-- 数据库连接池 -->
    <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource"
          destroy-method="close">
        <property name="url" value="jdbc:mysql:///user_db" />
        <property name="username" value="admin" />
        <property name="password" value="123456" />
        <property name="driverClassName" value="com.mysql.jdbc.Driver" />
    </bean>

【4】配置 JdbcTemplate 对象,注入 DataSource

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

在这里插入图片描述

【5】创建 service 类,创建 dao 类,在 dao 注入 jdbcTemplate 对象

bean.xml:

 <!-- 组件扫描 -->
<context:component-scan base-package="com.company.JdbcTemplate"></context:component-scan>   

在这里插入图片描述

Service:BookService

package com.company.JdbcTemplate.service;

import com.company.JdbcTemplate.dao.BookDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@Service
public class BookService {
    //注入 dao
    @Autowired
    private BookDao bookDao;
}

Dao:BookDaoImpl

package com.company.JdbcTemplate.dao;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Repository;

@Repository
public class BookDaoImpl implements BookDao {
    //注入 JdbcTemplate
    @Autowired
    private JdbcTemplate jdbcTemplate;
}

2、JdbcTemplate 操作数据库

<1> 操作数据库进行(添加)

在这里插入图片描述

【1】对应数据库创建实体类

package com.company.JdbcTemplate.entity;

public class Book {
    private String userId;
    private String userName;
    private String userStatus;

    public void setUserId(String userId) {
        this.userId = userId;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public void setUserStatus(String userStatus) {
        this.userStatus = userStatus;
    }

    public String getUserId() {
        return userId;
    }

    public String getUserName() {
        return userName;
    }

    public String getUserStatus() {
        return userStatus;
    }
}

【2】编写 service 和 dao

(1)在 dao 进行数据库添加操作
dao :

service:

package com.company.JdbcTemplate.service;

import com.company.JdbcTemplate.dao.BookDao;
import com.company.JdbcTemplate.entity.Book;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@Service
public class BookService {
    //注入 dao
    @Autowired
    private BookDao bookDao;

    //添加的方法
    public void addBook(Book book){
        bookDao.add(book);
    }
}

【3】调用 JdbcTemplate 对象里面 update 方法实现添加操作

package com.company.JdbcTemplate.dao;


import com.company.JdbcTemplate.entity.Book;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Repository;

@Repository
public class BookDaoImpl implements BookDao {
    //注入 JdbcTemplate
    @Autowired
    private JdbcTemplate jdbcTemplate;

    @Override
    public void add(Book book) {
        //1 创建 sql 语句
        String sql = "insert into t_book values(?,?,?)";
        //2 调用方法实现
        Object[] args = {book.getUserId(), book.getUserName(),
                book.getUserStatus()};
        int update = jdbcTemplate.update(sql, args);
        System.out.println(update);

    }
}

【4】测试

package com.company.JdbcTemplate;

import com.company.JdbcTemplate.entity.Book;
import com.company.JdbcTemplate.service.BookService;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class testDao {
    @Test
    public void testJdbcTemplate() {
        ApplicationContext context =
                new ClassPathXmlApplicationContext("bean.xml");
        BookService bookService = context.getBean("bookService",
                BookService.class);
        Book book = new Book();
        book.setUserId("1");
        book.setUserName("java");
        book.setUserStatus("a");
        bookService.addBook(book);
    }


}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值