JdbcTemplate基本使用

JdbcTemplate概述

它是spring框架中提供的一個對象,是對原始繁瑣的JdbcAPI對象的簡單封裝。spring框架為我們提供了很多的操作模板類。例如:操作關系型數據的JdbcTemplate和MbernateTemplate,操作nosql數據庫的RedisTemplate,操作消息隊列的JmsTemplate等等。

JdbcTemplate開發步驟

① 導入spring-jdbc和spring-tx坐標

② 創建數據庫表和實體

③ 創建JdbcTemplate對象

④ 執行數據庫操作

@Test// 測試JdbcTemplate的開發步驟public void test2() throws PropertyVetoException {ApplicationContext app = new ClassPathXmlApplicationContext("applicationContext.xml");JdbcTemplate jdbcTemplate = app.getBean(JdbcTemplate.class);int row = jdbcTemplate.update("insert into account values(?, ?)", "lisi11", 1000);System.out.println(row);}//-----------------------------------------------------<?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"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"><!--    加載jdbc.properties--><context:property-placeholder location="classpath:jdbc.properties"/><!--    數據源對象--><bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"><property name="driverClass" value="${jdbc.driver}"/><property name="jdbcUrl" value="${jdbc.url}"/><property name="user" value="${jdbc.username}"/><property name="password" value="${jdbc.password}"/></bean><!--    jdbc模板對象--><bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"><property name="dataSource" ref="dataSource"/></bean></beans>//----------------------------------------------jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/test
jdbc.username=root
jdbc.password=1234

?JdbcTemplate基本使用-常用操作-更新刪除操作

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:applicationContext.xml")
public class JdbcTemplateCRUDTest {@Autowiredprivate JdbcTemplate jdbcTemplate;@Testpublic void testUpdate(){jdbcTemplate.update("update account set money = ? where name = ?",10001, "wangwu");}@Testpublic void testDelete(){jdbcTemplate.update("delete from account where money = ?", 10001);}
}

?JdbcTemplate基本使用-常用操作-查詢操作

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:applicationContext.xml")
public class JdbcTemplateCRUDTest {@Autowiredprivate JdbcTemplate jdbcTemplate;@Testpublic void testUpdate(){jdbcTemplate.update("update account set money = ? where name = ?",10001, "wangwu");}@Testpublic void testDelete(){jdbcTemplate.update("delete from account where money = ?", 10001);}//查詢多個@Testpublic void estQuery(){List<Account> accountList = jdbcTemplate.query("select * from account", new BeanPropertyRowMapper<Account>(Account.class));System.out.println(accountList);}//查詢一個@Testpublic void testQueryOne(){List<Account> accountList = jdbcTemplate.query("select * from account where name=?", new BeanPropertyRowMapper<Account>(Account.class), "lisi");System.out.println(accountList);}//聚合查詢@Testpublic void testQueryCount(){Long count = jdbcTemplate.queryForObject("select count(*) from account", Long.class);System.out.println(count);}
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/76674.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/76674.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/76674.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

vue+leaflet 區域劃分_反向遮罩層

leaflet 區域劃分_遮罩層 geojson在線生成器網址:(https://datav.aliyun.com/portal/school/atlas/area_selector) 點擊前往阿里云geojson生成器 效果圖: 實現下面效果,只需要把addSateLayer函數的調用取消掉就好了. //添加遮罩層代碼function addMask() {var latlngs;var fe…

ESP32開發之ubuntu環境搭建

1. 在Ubuntu官網下載Ubuntu server 20.04版本https://releases.ubuntu.com/20.04.6/ 2. 在vmware下安裝Ubuntu 3. 改Ubuntu靜態IP $ sudo vi /etc/netplan/00-installer-config.yaml# This is the network config written by ‘subiquity’ network: renderer: networkd eth…

HTTP 1.1 比 HTTP1.0 多了什么?(詳盡版)

相較于HTTP 1.0&#xff0c;1.1 版本增加了以上特性&#xff1a; 1. 新增了連接管理即 keepalive&#xff0c;允許持久連接。 定義&#xff1a; Keepalive允許客戶端和服務器在完成一次請求-響應后&#xff0c;保持連接處于打開狀態&#xff0c;以便后續請求復用同一連接&am…

【深度學習】PyTorch實現VGG16模型及網絡層數學原理

一、Demo概述 代碼已附在文末 1.1 代碼功能 ? 實現VGG16網絡結構? 在CIFAR10數據集上訓練分類模型 1.2 環境配置 詳見【深度學習】Windows系統Anaconda CUDA cuDNN Pytorch環境配置 二、各網絡層概念 2.1 卷積層&#xff08;nn.Conv2d&#xff09; nn.Conv2d(in_cha…

解決RecyclerView在調用smoothScrollToPosition后最后一個item底部超出屏幕的問題

要解決RecyclerView在調用smoothScrollToPosition后最后一個item底部超出屏幕的問題&#xff0c;可以使用自定義的LinearSmoothScroller&#xff0c;使其底部對齊屏幕。步驟如下&#xff1a; 創建自定義的SmoothScroller類&#xff1a; 繼承LinearSmoothScroller并重寫getVerti…

k8s親和力和非親和力

在 Kubernetes 中&#xff0c;親和力&#xff08;Affinity&#xff09;和非親和力&#xff08;Anti-Affinity&#xff09;是用于控制 Pod 調度策略的機制&#xff0c;它們可以幫助優化資源利用率、提高應用性能和可用性。以下是親和力和非親和力的詳細解釋&#xff1a; 親和力…

開發一款游戲需要哪些崗位角色參與?

常見分類 1. 游戲策劃&#xff08;Game Designer&#xff09; 核心職責&#xff1a;設計游戲的玩法、規則、內容和整體體驗。 具體工作&#xff1a; 系統設計&#xff1a;設計游戲的戰斗、經濟、成長、社交等核心系統。 數值設計&#xff1a;平衡角色屬性、裝備數值、經濟系…

Asp.NET Core WebApi 創建帶鑒權機制的Api

構建一個包含 JWT&#xff08;JSON Web Token&#xff09;鑒權的 Web API 是一種常見的做法&#xff0c;用于保護 API 端點并驗證用戶身份。以下是一個基于 ASP.NET Core 的完整示例&#xff0c;展示如何實現 JWT 鑒權。 1. 創建 ASP.NET Core Web API 項目 使用 .NET CLI 或 …

Jenkins 發送釘釘消息

這里不介紹 Jenkins 的安裝&#xff0c;可以網上找到很多安裝教程&#xff0c;重點介紹如何集成釘釘消息。 需要提前準備釘釘機器人的 webhook 地址。&#xff08;網上找下&#xff0c;很多教程&#xff09; 下面開始配置釘釘機器人&#xff0c;登錄 Jenkins&#xff0c;下載 …

CentOS中離線安裝DockerCompos并用其部署Rabbitmq(使用離線導入導出docker鏡像方式)

場景 DockerDockerCompose實現部署jenkins,并實現jenkinsfile打包SpringBootVue流水線項目過程詳解、踩坑記錄(附鏡像資源、離線包資源下載)&#xff1a; DockerDockerCompose實現部署jenkins,并實現jenkinsfile打包SpringBootVue流水線項目過程詳解、踩坑記錄(附鏡像資源、離…

stm32week11

stm32學習 八.stm32基礎 2.stm32內核和芯片 F1系統架構&#xff1a;4個主動單元和4個被動單元 AHB是內核高性能總線&#xff0c;APB是外圍總線 總線矩陣將總線和各個主動被動單元連到一起 ICode總線直接連接Flash接口&#xff0c;不需要經過總線矩陣 AHB&#xff1a;72MHz&am…

貪心算法:部分背包問題深度解析

簡介&#xff1a; 該Java代碼基于貪心算法實現了分數背包問題的求解&#xff0c;核心通過單位價值降序排序和分階段裝入策略實現最優解。首先對Product數組執行雙重循環冒泡排序&#xff0c;按wm(價值/重量比)從高到低重新排列物品&#xff1b;隨后分兩階段裝入&#xff1a;循環…

13. Langchain異步處理:提升應用性能的關鍵技巧

引言&#xff1a;從"順序等待"到"并行加速" 2025年某電商平臺引入LangChain異步處理后&#xff0c;大促期間訂單處理能力提升5倍&#xff0c;系統響應延遲降低70%。本文將基于LangChain的異步架構&#xff0c;詳解如何通過并行執行流式處理&#xff0c;讓…

ros2-rviz2控制unity仿真的6關節機械臂,探索從仿真到實際應用的過程

文章目錄 前言&#xff08;Introduction&#xff09;搭建開發環境&#xff08;Setup Development Environment&#xff09;在window中安裝Unity&#xff08;Install Unity in window&#xff09;創建Docker容器&#xff0c;并安裝相關軟件&#xff08;Create Docker containers…

計算機組成原理筆記(十四)——3.4指令類型

一臺計算機的指令系統可以有上百條指令&#xff0c;這些指令按其功能可以分成幾種類型&#xff0c;下面分別介紹。 3.4.1數據傳送類指令 一、核心概念與功能定位 數據傳送類指令是計算機指令系統中最基礎的指令類型&#xff0c;負責在 寄存器、主存、I/O設備 之間高效復制數…

各開源協議一覽

在 GitHub 上&#xff0c;開源項目通常會使用一些常見的開源協議來定義項目的使用、修改和分發規則。以下是目前 GitHub 上最常見的幾種開源協議及其差異和示例說明&#xff1a; TL;DR 協議寬松程度是否強制開源專利保護適用場景MIT最寬松否無希望代碼被廣泛使用Apache 2.0寬松…

51c自動駕駛~合集17

我自己的原文哦~ https://blog.51cto.com/whaosoft/13793157 #匯聚感知、定位、規劃控制的自動駕駛系統 自動駕駛技術在應用到車輛上之后可以通過提高吞吐量來緩解道路擁堵&#xff0c;通過消除人為錯誤來提高道路安全性&#xff0c;并減輕駕駛員的駕駛負擔&#xff0c;從…

小程序開發指南

小程序開發指南 目錄 1. 小程序開發概述 1.1 什么是小程序1.2 小程序的優勢1.3 小程序的發展歷程 2. 開發準備工作 2.1 選擇開發平臺2.2 開發環境搭建2.3 開發模式選擇 3. 小程序開發流程 3.1 項目規劃3.2 界面設計3.3 代碼開發3.4 基本開發示例3.5 數據存儲3.6 網絡請求3.7 …

Day15:關于MySQL的編程技術——基礎知識

前言&#xff1a;先創建一個練習的數據庫和數據 1.創建數據庫并創建數據表的基本結構 -- 創建練習數據庫 CREATE DATABASE db_programming; USE db_programming;-- 創建員工表&#xff08;包含各種數據類型&#xff09; CREATE TABLE employees (emp_id INT PRIMARY KEY AUTO…

批處理腳本bat丨遍歷一個包含項目名稱的數組,并對每個文件中的項目執行 git pull 操作 (一鍵拉很多文件的代碼)

文章目錄 前言一、操作方式二、文件展示三、分析代碼結構四、代碼五、需要注意的潛在問題六、改進后的代碼七、改進說明八、感謝 前言 由于之前git服務部署在本地服務器&#xff0c;處于代碼安全角度考慮。領導讓我將所有的項目代碼手動物理備份一份并且發給他。 這種傻傻的操…