(自用)Java學習-5.19(地址管理,三級聯動,預支付)

1. 地址管理模塊
  • 地址展示

    • 前端:通過?showAddress()?發起 Ajax GET 請求,動態渲染地址列表表格,使用?#{tag}#{name}?等占位符替換真實數據。

    • 后端

      • 控制器層調用?AddressService,通過?AddressMapper?查詢用戶地址數據。

      • SQL 按?is_default?降序排序,優先展示默認地址。

  • 設置默認地址

    • 前端:點擊“設為默認”觸發?setDefault(aid),發送 POST 請求。

    • 后端

      • 服務層事務操作:先將用戶所有地址?is_default?設為 0,再設置指定?aid?的地址為 1。

      • SQL 通過兩個?<update>?標簽分別處理用戶 ID 和地址 ID 的更新。

  • 三級聯動地址選擇

    • 前端:基于省、市、區下拉框的?change?事件,動態加載下級區域數據。

    • 后端

      • 控制器調用?DistrictService,查詢?t_dict_district?表,按?parent?字段返回層級數據。

  • 地址添加

    • 前端:提交表單數據,觸發?/address/saveAddress?請求。

    • 后端

      • 檢查用戶地址數量(上限 10 條),首次添加設為默認地址。

      • 通過?DistrictMapper?查詢省市區名稱,填充完整地址信息。

      • SQL 插入語句覆蓋地址表全字段。


2. 購物車與訂單模塊
  • 購物車勾選與統計

    • 前端:通過勾選事件實時計算選中商品的總數量和總金額,同步更新隱藏域數據。

    • 后端

      • 控制器接收勾選的購物車 ID 數組,聯合查詢商品信息(t_cart?與?t_product?表關聯)。

  • 訂單確認頁回顯

    • 前端:解析 URL 參數(cttpids),展示商品列表和支付總金額。

    • 后端:通過?CartService?查詢勾選商品詳情,返回?CartVO?列表。

  • 預支付訂單生成

    • 前端:提交地址和總金額,觸發?/orders/createOrder?請求,跳轉支付頁。

    • 后端

      • 生成唯一訂單號(UUID),關聯用戶地址信息。

      • 使用 Redis 緩存訂單數據(30 分鐘過期),避免重復提交。


3. 關鍵技術點
  • 前后端交互:Ajax 異步請求、JSON 數據格式、URL 參數傳遞。

  • 數據庫操作

    • MyBatis 動態 SQL(如?<foreach>?遍歷數組)。

    • 事務管理(@Transactional?注解)。

  • 緩存應用:Redis 存儲臨時訂單數據,防止支付超時。

  • 安全控制:用戶會話(HttpSession)管理,參數合法性校驗。


4. 核心代碼結構
  • 前端

    • jQuery DOM 操作(append()replace())。

    • 事件監聽(changeclick)。

  • 后端

    • Spring MVC 分層架構(Controller → Service → Mapper)。

    • 實體類映射(AddressDistrictOrder)。

    • 配置文件(application.yml?定義業務參數)。

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

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

相關文章

Spring 循環依賴:從原理到解決方案的全面解析

Spring 循環依賴&#xff1a;從原理到解決方案的全面解析 一、循環依賴的定義與分類 1. 什么是循環依賴&#xff1f; 在 Spring 框架中&#xff0c;循環依賴指的是多個 Bean 之間形成了依賴閉環。例如&#xff1a; Bean A 依賴 Bean BBean B 依賴 Bean CBean C 又依賴 Bean…

n 階矩陣 A 可逆的充分必要條件是 ∣ A ∣ ≠ 0

n 階矩陣 A 可逆的充分必要條件是 ∣ A ∣ ≠ 0 |A| \neq 0 ∣A∣0 的幾何意義 1. 行列式的幾何意義回顧 行列式 ∣ A ∣ |A| ∣A∣&#xff08;或 det ? ( A ) \det(A) det(A)&#xff09;表示矩陣 A A A 所對應的線性變換對空間的體積縮放因子&#xff1a; ∣ A ∣ &…

Rockey Linux 安裝ffmpeg

1.環境準備 Rockey linux 9.2 ffmpeg 靜態資源包 這個是我自己的&#xff1a; https://download.csdn.net/download/liudongyang123/90920340https://download.csdn.net/download/liudongyang123/90920340 這個是官網的 Releases BtbN/FFmpeg-Builds GitHub 以上兩個資…

wordcount在集群上的測試

1.將louts.txt文件從cg計算機復制到master節點上面&#xff0c;存放在/usr/local/hadoop 需要輸入密碼&#xff1a;83953588abc scp /root/IdeaProjects/mapReduceTest/lotus.txt root172.18.0.2:/usr/local/hadoop /WordCountTest/input 2.將lotus.txt文件從master這臺機器…

AI+制造:中小企業的低成本智能化轉型

文章內容過長&#xff0c;可以考慮直接跳轉到文章末尾查看概要圖 在制造業競爭日益激烈的今天&#xff0c;中小企業正面臨著前所未有的挑戰&#xff1a;人力成本持續攀升、能源消耗居高不下、質量控制難度增加。與此同時&#xff0c;數字化轉型已成為行業共識&#xff0c;但高…

Linux C/C++編程 —— 線程技術總結

一、線程基本概念 線程是進程內的一個執行單元&#xff0c;多個線程共享進程的資源&#xff08;如內存、文件描述符等&#xff09;&#xff0c;但每個線程擁有自己的寄存器、棧等。與進程相比&#xff0c;線程的創建、切換開銷較小&#xff0c;能更高效地利用 CPU 資源。 二、…

Femap許可證與網絡安全策略

隨著科技的快速發展&#xff0c;網絡安全問題已成為各行各業關注的焦點。在電磁仿真領域&#xff0c;Femap作為一款領先的軟件&#xff0c;其許可證的安全性和網絡策略的重要性不言而喻。本文將探討Femap許可證與網絡安全策略的關系&#xff0c;確保您的電磁仿真工作能夠在一個…

深度解析:SQLynx 如何筑牢數據庫安全防線?

在數據驅動業務發展的時代&#xff0c;數據庫作為企業核心資產的 “保險箱”&#xff0c;其安全性至關重要。一旦數據庫遭遇攻擊、數據泄露或被誤操作&#xff0c;將給企業帶來不可估量的損失。而 SQLynx 作為一款專注于數據庫安全管理的工具&#xff0c;憑借其多項創新技術與功…

更新時間相差8個小時

下面的java代碼在updateFill方法里面生成的modifiedTime時間是當前時間是正確的&#xff0c;為什么到service層testCommonFieldAutoUpdate方法里面去更新的時候modifiedTime就差8個小時呢&#xff1f;代碼如下所示&#xff1a; Slf4j Component public class MpMetaObjectHand…

Windows逆向工程提升之IMAGE_TLS_DIRECTORY

公開視頻 -> 鏈接點擊跳轉公開課程博客首頁 -> ???鏈接點擊跳轉博客主頁 目錄 TLS的作用 TLS的實現 靜態 TLS?? 動態 TLS?? 內部實現 回調機制 TLS Directory 的結構 TLS的作用 TLS (Thread Local Storage) 是一種用于為多線程應用程序提供線程獨立存儲空…

云效流水線Flow使用記錄

概述 最近在頻繁使用阿里云云效的幾款產品&#xff0c;如流水線。之前寫過一篇&#xff0c;參考云效流水線緩存問題。 這篇文章來記錄更多問題。 環境變量 不管是云效流水線Flow還是應用交付AppStack&#xff08;基于流水線&#xff0c;后文不再贅述&#xff09;&#xff0…

Android中獲取控件尺寸進階方案

在Android開發中,很多場景都需要獲取控件(View)的寬高信息,比如動態布局調整、動畫效果實現等。然而,直接在Activity的onCreate()中調用控件的getWidth()或getHeight()`方法,得到結果卻是0,因為控件還沒完成布局測量。 本文總結了幾種獲取控件大小的實用方法,并對各方…

android 輸入系統

一、輸入系統的核心角色與分層架構 Android 輸入系統的本質是橋梁&#xff1a;一端連接硬件驅動產生的原始事件&#xff0c;另一端將事件精準派發給應用窗口。整個過程涉及三層架構和多個關鍵組件&#xff0c;可類比為 “快遞分揀系統”&#xff1a; 1. 硬件與內核層&#xf…

ubuntu中,c和c+程序,預編譯、編譯、鏈接和運行命令

目錄 安裝編譯器一.c編譯運行&#xff08;粗暴簡單&#xff09;1.編寫 C 程序&#xff1a;2. 預處理&#xff1a;3.編譯&#xff1a;4. 匯編&#xff1a;5. 鏈接&#xff1a;6.運行 二.c編譯運行&#xff08;粗暴簡單&#xff09;1.編寫 C 程序&#xff1a;2.預處理&#xff1a…

【FastAPI】--2.進階教程(一)

【FastAPI】--基礎教程-CSDN博客 app.get和post的參數&#xff1a; 參數類型說明pathstr路由路徑&#xff08;如 "/marks"&#xff09;&#xff0c;必填。response_modelType[T]定義響應數據的模型&#xff08;如 percent&#xff09;&#xff0c;會自動校驗和序列…

KT6368A通過藍牙芯片獲取手機時間詳細說明,對應串口指令舉例

一、功能簡介 KT6368A雙模藍牙芯片支持連接手機&#xff0c;獲取手機的日期、時間信息&#xff0c;可以同步RTC時鐘 1、無需安裝任何app&#xff0c;直接使用系統藍牙即可實現 2、同時它不影響音頻藍牙&#xff0c;還支持一些簡單的AT指令進行操作 3、實現的方式&#xff1…

【平面波導外腔激光器專題系列】用于光纖傳感的低噪聲PLC外腔窄線寬激光器

----翻譯自Mazin Alalusi等人的文章 摘要 高性價比的 1550 nm DWDM平面外腔 &#xff08;PLANEX&#xff09; 激光器是干涉測量、布里淵、LIDAR 和其他光傳感應用的最佳選擇。其線寬<3kHz、低相位/頻率噪聲和極低的RIN。 簡介 高性能光纖分布式傳感技術是在過去幾年中開發…

企業微信內部網頁開發流程筆記

背景 基于ai實現企微側邊欄和工作臺快速問答小助&#xff0c;需要h5開發&#xff0c;因為流程不清楚摸索半天&#xff0c;所以記錄一下 一、網頁授權登錄 1. 配置步驟 1.1 設置可信域名 登錄企業微信管理后臺 進入"應用管理" > 選擇開發的具體應用 > “網…

WORD 轉 PDF 工具:排版 / 圖片 / 表格批量轉換提升辦公效率

各位辦公小能手們&#xff0c;今天來聊聊文檔工具里的WORD轉PDF工具&#xff01;這玩意兒到底是干啥的呢&#xff1f;咱來好好說道說道。 先說核心功能。第一個就是格式轉換&#xff0c;能把Word文檔轉換成PDF&#xff0c;不管是格式、排版&#xff0c;還是圖片、表格啥的&…

從逆流監測到智慧用電:ADL200N-CT系列單相導軌表賦能家庭綠色能源

在新能源浪潮席卷全球的當下&#xff0c;陽臺光伏以及家庭儲能&#xff08;戶儲&#xff09;系統逐漸成為眾多追求綠色生活、渴望實現能源自主家庭的新選擇。它不僅能有效利用太陽能等清潔能源&#xff0c;還能在用電高峰時段為家庭提供穩定電力支持&#xff0c;降低用電成本。…