Spring5 学习笔记 五 、JdbcTemplate

1、概念和准备

<1> 什么是 JdbcTemplate

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

<2> 准备工作

【1】引入相关 jar 包

Spring5 学习笔记 五 、JdbcTemplate_第1张图片
Spring5 学习笔记 五 、JdbcTemplate_第2张图片
在这里插入图片描述
Spring5 学习笔记 五 、JdbcTemplate_第3张图片

Spring5 学习笔记 五 、JdbcTemplate_第4张图片
Spring5 学习笔记 五 、JdbcTemplate_第5张图片
在这里插入图片描述

【2】新建数据库

Spring5 学习笔记 五 、JdbcTemplate_第6张图片

Spring5 学习笔记 五 、JdbcTemplate_第7张图片
Spring5 学习笔记 五 、JdbcTemplate_第8张图片

Spring5 学习笔记 五 、JdbcTemplate_第9张图片

【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

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

Spring5 学习笔记 五 、JdbcTemplate_第10张图片

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

bean.xml:

 
<context:component-scan base-package="com.company.JdbcTemplate">context:component-scan>   

Spring5 学习笔记 五 、JdbcTemplate_第11张图片

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> 操作数据库进行(添加)

Spring5 学习笔记 五 、JdbcTemplate_第12张图片

【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);
    }


}

你可能感兴趣的:(学习笔记,学习,java,spring)