SpringBoot  jdbctemplate使用方法解析

所属分类: 软件编程 / java 阅读数: 87
收藏 0 赞 0 分享

Spring为传统的jdbc API进行封装,简化持久层操作,虽然jdbcTemplate很灵活,但和ORM框架相比jdbcTemplate功能就显得力不从心了,学习jdbcTemplate是为学习ORM框架做铺垫

ORM:对象关系映射 O:对象 R:关系 M:映射

下面简单介绍下 Springboot 应用中如何使用 JdbcTemplate 对数据库进行操作;

1、使用 IDEA 创建 SpringBoot 项目,引入数据库连接依赖:

<dependency>
      <groupId>com.alibaba</groupId>
      <artifactId>druid-spring-boot-starter</artifactId>
      <version>1.1.10</version>
    </dependency>

    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.15</version>
    </dependency>

2、MYSQL 数据库建测试表 

CREATE TABLE `book` (
 `book_id` INT(11) NOT NULL AUTO_INCREMENT,
 `book_name` VARCHAR(200) DEFAULT NULL,
 `price` INT(11) DEFAULT NULL,
 PRIMARY KEY (`book_id`)
) ENGINE=INNODB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8

3、创建 bean

/**
 * @author wdh01
 * @create 2020-04-29 23:59
 */
public class Book {
  private Integer id;
  private String book_name;
  private double price;

  public Integer getId() {
    return id;
  }

  public void setId(Integer id) {
    this.id = id;
  }

  public String getBook_name() {
    return book_name;
  }

  public void setBook_name(String book_name) {
    this.book_name = book_name;
  }

  public double getPrice() {
    return price;
  }

  public void setPrice(double price) {
    this.price = price;
  }
}

4、编写 service

@Service
public class BookService {
  @Autowired
  JdbcTemplate jdbcTemplate;

  //insert
  public Integer addBook(Book book) {
    return jdbcTemplate.update("insert book (book_name,price) values (?,?)", book.getBook_name(), book.getPrice());
  }
  //update 操作
  public Integer updateBook(Book book) {
    return jdbcTemplate.update("update book set price = ? where book_id = ?", book.getPrice(),book.getId());
  }
  //delete
  public Integer deleteBook(Book book) {
    return jdbcTemplate.update("delete from book where book_id = ?",book.getId());
  }
}

5、编写测试类

@SpringBootTest
class JdbctemplateApplicationTests {
  @Autowired
  BookService bookService;
  @Test
  void contextLoads() {
    Book book = new Book();
    book.setBook_name("笑傲江湖");
    book.setPrice(120);

    bookService.addBook(book);
  }
  @Test
  public void testUpdate() {
    Book book = new Book();
    book.setPrice(10);
    book.setId(5);
    bookService.updateBook(book);
  }
  @Test
  public void testDelete() {
    Book book = new Book();
    book.setId(5);
    bookService.deleteBook(book);
  }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

更多精彩内容其他人还在看

Java基于反射机制实现全部注解获取的方法示例

这篇文章主要介绍了Java基于反射机制实现全部注解获取的方法,结合实例形式分析了java反射机制获取注解的具体实现方法与操作注意事项,需要的朋友可以参考下
收藏 0 赞 0 分享

Java 信号量Semaphore的实现

这篇文章主要介绍了Java 信号量Semaphore的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

eclipse+maven+spring mvc项目基本搭建过程

这篇文章主要介绍了eclipse+maven+spring mvc项目基本搭建过程,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

Spring boot集成swagger2生成接口文档的全过程

这篇文章主要给大家介绍了关于Spring boot集成swagger2生成接口文档的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Spring boot具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
收藏 0 赞 0 分享

Java冒泡排序法和选择排序法的实现

这篇文章主要介绍了Java冒泡排序法和选择排序法的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

Spring Cloud Alibaba教程之Sentinel的使用

这篇文章主要介绍了Spring Cloud Alibaba教程之Sentinel的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

Josephus环的四种解法(约瑟夫环)基于java详解

这篇文章主要介绍了Josephus环的四种解法(约瑟夫环)基于java详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
收藏 0 赞 0 分享

Java继承Thread类创建线程类示例

这篇文章主要介绍了Java继承Thread类创建线程类,结合实例形式分析了java线程操作相关使用技巧与注意事项,需要的朋友可以参考下
收藏 0 赞 0 分享

Java使用Callable和Future创建线程操作示例

这篇文章主要介绍了Java使用Callable和Future创建线程操作,结合实例形式分析了java使用Callable接口和Future类创建线程的相关操作技巧与注意事项,需要的朋友可以参考下
收藏 0 赞 0 分享

springBoot使用JdbcTemplate代码实例

这篇文章主要介绍了springBoot使用JdbcTemplate代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多