JdbcTemplate(操作数据库-修改和删除功能)
生活随笔
收集整理的這篇文章主要介紹了
JdbcTemplate(操作数据库-修改和删除功能)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
目錄
?
JdbcTemplate(操作數據庫-刪除功能)
1.創建數據庫
2.配置文件實現
3.創建實體類
4.創建dao層
5.創建service層
6.測試類
7.測試結果:
?
JdbcTemplate(操作數據庫-刪除功能)
?
1.創建數據庫
user_db數據庫的t_book表中創建兩條記錄 user_id 和 username
?
2.配置文件實現
注意修改數據庫的端口號、表名、數據庫賬號密碼,特別是一些jar包的版本問題,降低版本號即可
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:context="http://www.springframework.org/schema/context"xmlns:aop="http://www.springframework.org/schema/aop"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd"><!-- 開啟組件掃描--><context:component-scan base-package="org.example"></context:component-scan> <!--數據庫連接池--><bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" destroy-method="close"><property name="url" value="jdbc:mysql://localhost:3306/user_db?useSSL=false&useUnicode=true&characterEncoding=UTF-8"/><property name="username" value="root"/><property name="password" value="sise"/><property name="driverClassName" value="com.mysql.jdbc.Driver"/></bean><!-- 創建jdbcTemplate對象--><bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"> <!--需要注入數據源信息--><property name="dataSource" ref="dataSource"></property></bean> </beans>?
3.創建實體類
Book實體類的屬性對應 t_book表中的記錄
package org.example.spring.entity;public class Book {private String userId;private String username;public String getUserId() {return userId;}public void setUserId(String userId) {this.userId = userId;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}}?
4.創建dao層
接口層:
package org.example.spring.dao;import org.example.spring.entity.Book;public interface BookDao {//添加的方法void add(Book book);//修改的方法void update(Book book);//刪除的方法void delete(int id); }實現層:
實現層中實現對數據的增刪改
package org.example.spring.dao;import org.example.spring.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對象@Autowiredprivate JdbcTemplate jdbcTemplate;//添加的方法,從實體類Book中傳遞對象進來@Overridepublic void add(Book book) {//1.創建sql語句String sql="insert into t_book values(?,?)";//2.調用方法實現//3.參數是可變參數,是一個數組形式,因此存在一種變式 // int update = jdbcTemplate.update(sql, book.getUserId(), book.getUsername());//變式為Object[] args= {book.getUserId(), book.getUsername()};int update = jdbcTemplate.update(sql, args);//輸出影響的值System.out.println(update);}@Overridepublic void update(Book book) {String sql="update t_book set username=? where user_id=?";Object[] args={book.getUsername(),book.getUserId()};int update=jdbcTemplate.update(sql,args);System.out.println(update);}@Overridepublic void delete(int id) {String sql="delete from t_book where user_id=?";int update=jdbcTemplate.update(sql,id);System.out.println(update);} }?
5.創建service層
調用dao層對象進行數據傳遞,這層寫邏輯代碼
package org.example.spring.service;import org.example.spring.dao.BookDao; import org.example.spring.entity.Book; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service;@Service public class BookService {//注入dao@Autowiredprivate BookDao bookDao;//添加的方法public void addBook(Book book){bookDao.add(book);}//修改的方法public void updateBook(Book book){bookDao.update(book);}//刪除的方法(注意,刪除是根據id去刪除)public void deleteBook(int id){bookDao.delete(id);} }?
?
6.測試類
package org.example.spring.test;import org.example.spring.entity.Book; import org.example.spring.service.BookService; import org.junit.jupiter.api.Test; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext;public class TestBook {@Testpublic void test01(){ApplicationContext context=new ClassPathXmlApplicationContext("bean1.xml");BookService bookService = context.getBean("bookService", BookService.class);//因為沒有寫到頁面數據,所以直接通過new對象實現//添加 // Book book=new Book(); // book.setUserId("2"); // book.setUsername("abc"); // // bookService.addBook(book);//修改 // Book book=new Book(); // book.setUserId("1"); // book.setUsername("123"); // // bookService.updateBook(book);//刪除bookService.deleteBook(1);}}?
?
7.測試結果:
第一條記錄已經刪除
?
總結
以上是生活随笔為你收集整理的JdbcTemplate(操作数据库-修改和删除功能)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java什么变量用作英文_Java基础之
- 下一篇: JAVA进阶教学之(StrngBuffe