SpringBoot  jdbctemplate使用方法解析

 更新时间:2020年05月06日 10:07:35   作者:1024快乐  
这篇文章主要介绍了SpringBoot jdbctemplate使用方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

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

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

相关文章

  • Mybatis-Plus处理Mysql Json类型字段的详细教程

    Mybatis-Plus处理Mysql Json类型字段的详细教程

    这篇文章主要给大家介绍了关于Mybatis-Plus处理Mysql Json类型字段的详细教程,Mybatis-Plus可以很方便地处理JSON字段,在实体类中可以使用@JSONField注解来标记JSON字段,同时在mapper.xml中使用json函数来操作JSON字段,需要的朋友可以参考下
    2024-01-01
  • mybatis判断list不为空/大小的问题

    mybatis判断list不为空/大小的问题

    这篇文章主要介绍了mybatis判断list不为空/大小的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-01-01
  • java求三个数的最大值的示例分享

    java求三个数的最大值的示例分享

    这篇文章主要介绍了java求三个数的最大值的示例分享,需要的朋友可以参考下
    2014-03-03
  • java8 集合求差集、并集、交集的实例

    java8 集合求差集、并集、交集的实例

    下面小编就为大家分享一篇java8 集合求差集、并集、交集的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-12-12
  • Spring与Mybatis相结合实现多数据源切换功能

    Spring与Mybatis相结合实现多数据源切换功能

    这篇文章主要介绍了Spring与Mybatis相结合实现多数据源切换功能的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-06-06
  • B/S与C/S架构的区别介绍

    B/S与C/S架构的区别介绍

    本文详细讲解了B/S与C/S架构的区别,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-12-12
  • IntelliJ IDEA 编辑器的全局搜索中使用正则表达式的操作方法

    IntelliJ IDEA 编辑器的全局搜索中使用正则表达式的操作方法

    这篇文章主要介绍了IntelliJ IDEA 编辑器的全局搜索中使用正则表达式的相关知识,补充介绍了IDEA查找和替换实用正则,感兴趣的朋友跟随小编一起看看吧
    2024-01-01
  • Java中的getClass()以及getName()方法使用

    Java中的getClass()以及getName()方法使用

    这篇文章主要介绍了Java中的getClass()以及getName()方法使用,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • Java获取接口所有实现类的方式详解

    Java获取接口所有实现类的方式详解

    这篇文章主要介绍了Java获取接口所有实现类的方式详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • 解决mybatis无法给带有下划线属性赋值问题

    解决mybatis无法给带有下划线属性赋值问题

    这篇文章主要介绍了解决mybatis无法给带有下划线属性赋值问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-01-01

最新评论