Springboot 使用JdbcTemplate

book

package com.draymonder.book.jdbc;

public class Book {
private Integer id;
private String name;
private String author; @Override
public String toString() {
return "Book{" +
"id=" + id +
", name='" + name + '\'' +
", author='" + author + '\'' +
'}';
} public Integer getId() {
return id;
} public void setId(Integer id) {
this.id = id;
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public String getAuthor() {
return author;
} public void setAuthor(String author) {
this.author = author;
}
}

bookDao

package com.draymonder.book.jdbc;

import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Repository; @Repository
public class BookDao { @Autowired
JdbcTemplate jdbcTemplate; public int addBook(Book book) {
return jdbcTemplate
.update("insert into book(name, author) values (?, ?)", book.getName(), book.getAuthor());
} public int updateBook(Book book) {
return jdbcTemplate
.update("update book set name=?, author=? where id=?", book.getName(), book.getAuthor(),
book.getId());
} public int deleteBookById(Integer id) {
return jdbcTemplate.update("delete from book where id=?", id);
} public Book getBookById(Integer id) {
return jdbcTemplate.queryForObject("select * from book where id=?", new BeanPropertyRowMapper<>(Book.class), id);
} public List<Book> getAllBooks() {
return jdbcTemplate.query("select * from book", new BeanPropertyRowMapper<>(Book.class));
} }

bookService

package com.draymonder.book.jdbc;

import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; @Service
public class BookService { @Autowired
BookDao bookDao; public int addBook(Book book) {
return bookDao.addBook(book);
} public int updateBook(Book book) {
return bookDao.updateBook(book);
} public int deleteBookById(Integer id) {
return bookDao.deleteBookById(id);
} public Book getBookById(Integer id) {
return bookDao.getBookById(id);
} public List<Book> getAllBooks() {
return bookDao.getAllBooks();
} }

bookController

package com.draymonder.book.jdbc;

import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController; @RestController
public class BookController {
@Autowired
BookService bookService; @GetMapping("/bookOps")
public void bookOps() {
Book b1 = new Book();
b1.setName("西厢记");
b1.setAuthor("王实甫");
int i = bookService.addBook(b1);
System.out.println("add book >>> " + i); Book b2 = new Book();
b2.setId(1);
b2.setName("朝花夕拾");
b2.setAuthor("鲁迅");
int updateBook = bookService.updateBook(b2);
System.out.println("update book >>> " + updateBook); Book b3 = bookService.getBookById(1);
System.out.println("get book >>> " + b3); int delete = bookService.deleteBookById(1);
System.out.println("delete book >>> " + delete); List<Book> allBooks = bookService.getAllBooks();
allBooks.forEach(System.out::println);
}
}

最新文章

  1. 一.Jenkins安装
  2. Android之仿ele地图定位效果
  3. html5原生canvas内image旋转
  4. java变量和方法的覆盖和隐藏(翻译自Java Tutorials)
  5. LAMP编译参数查看
  6. JS中的自定义属性
  7. Flex 4.0及4.6发布的网络应用在内网内会访问很慢的解决方案
  8. Matlab中颜色线形和形状
  9. jdbc框架 commons-dbutils+google guice+servlet 实现一个例子
  10. 【风马一族_Android】Android 从命令行界面获取手机信息
  11. SQL 计算两个时间之差 分类: SQL Server 2014-07-04 10:57 119人阅读 评论(0) 收藏
  12. android 数字键盘制作
  13. oracle参数优化
  14. 给tcpdump加点颜色看看
  15. [INS-32052] Oracle基文件夹和Oracle主文件夹位置同样
  16. noip推荐系列:遥控车[字符串+高精+二分答案]
  17. Idea Maven 建本地仓库-导入本地JAR包
  18. 原生javascript 的MAP使用
  19. Windows Python requests 详细模块安装方法
  20. JGUI源码:解决手机端点击出现半透明阴影(4)

热门文章

  1. 解决The total number of locks exceeds the lock table size错误
  2. 设计模式:职责链模式(Chain of Responsibility)
  3. mongodb 数据操作(2)
  4. 如何用纯 CSS 创作一个慧星拖尾效果的 loader 动画
  5. linux 下如何将网页版应用生成桌面图标
  6. CentOS7 安装ffmpeg
  7. 日常用User-Agent列表
  8. Get MySQL这5个优化技巧
  9. sqlalchemy.exc.InternalError: (pymysql.err.InternalError) (1366, &quot;Incorrect string value: &#39;\\xE6\\xB1\\x89\\xE8\\xAF\\xAD...&#39; for column &#39;className&#39; at row 1&quot;) [SQL: INSERT INTO classmessage (`classId
  10. ORACLE (BLOB、CLOB、NCLOB、BFILE)