SpringBoot jdbctemplate使用方法解析
Spring為傳統(tǒng)的jdbc API進行封裝,簡化持久層操作,雖然jdbcTemplate很靈活,但和ORM框架相比jdbcTemplate功能就顯得力不從心了,學(xué)習(xí)jdbcTemplate是為學(xué)習(xí)ORM框架做鋪墊
ORM:對象關(guān)系映射 O:對象 R:關(guān)系 M:映射
下面簡單介紹下 Springboot 應(yīng)用中如何使用 JdbcTemplate 對數(shù)據(jù)庫進行操作;
1、使用 IDEA 創(chuàng)建 SpringBoot 項目,引入數(shù)據(jù)庫連接依賴:
<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 數(shù)據(jù)庫建測試表
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、創(chuàng)建 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
@Servicepublic 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、編寫測試類
@SpringBootTestclass 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); }}
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. Java8內(nèi)存模型PermGen Metaspace實例解析2. python如何實現(xiàn)word批量轉(zhuǎn)HTML3. python excel和yaml文件的讀取封裝4. python3實現(xiàn)往mysql中插入datetime類型的數(shù)據(jù)5. python爬蟲實戰(zhàn)之制作屬于自己的一個IP代理模塊6. moment轉(zhuǎn)化時間戳出現(xiàn)Invalid Date的問題及解決7. 關(guān)于 Android WebView 的內(nèi)存泄露問題8. Docker鏡像管理常用操作代碼示例9. Python中內(nèi)建模塊collections如何使用10. 詳解docker pull 下來的鏡像都存到了哪里
