學習記錄:DAY16

Maven 進階與前端實戰

前言


二輪考核的內容下來了,由整體項目構建轉為實現特定模塊的功能。對細節的要求更高了,而且有手搓線程池、手搓依賴注入等進階要求,又有得學力。嘻嘻,太簡單了,只要我手搓 Spring Boot 框架…又幻想了家人們。
我決定先自閉幾天,把現在該學的學學了,不然滿腦子都是項目 😰

--------4.23-------
做夢夢到我把依賴注入一步步手搓出來了 😋,然后就被肚子痛醒了。
來遲到地說說這幾天的安排,因為 blog 越做越多,所以要弄一個目錄來方便我找需要的知識;這幾天把前端學完,大概 2 - 3 天吧,然后 2 天左右學習項目的部署,就可以開始看看二輪項目要怎么入手了。


日程


最絕望的一集,因為之前移動了硬盤導致 VMware 卸也卸不干凈,安裝又安裝不了,弄到 9 點多才弄完,今天可能學不了什么新東西了。
如果沒有內容的話,大概會放在明天做成合訂版。

--------4.23-------
現在下午 1 點,上課偷偷把 Maven 進階部分學了,寫了 blog 就去睡覺。
6 點 40,摸了一會🐟,先來復習一下前端內容,提醒自己別忘記看完計算機網絡剩下的一點點內容。
歐 shift,差點忘記要統計獎項了。
發現前端有部分筆記沒寫,今天補補吧。
做完筆記應該快 10 點,要處理些瑣事了,結果弄了半天也沒把學校郵箱弄出來。


學習記錄


記錄一下今天學的知識,方便復習。

操作系統

  1. 程序鏈接的三種方式,裝入內存的三種方式
  2. 內存保護,越界檢查
  3. 連續內存分配管理方式
  4. 動態分區分配算法
  5. 分頁儲存,地址變換的計算
  6. 基本地址變換機構,快表優化速度
  7. 多級頁表的結構,注意點

--------4.23-------

計算機網絡

  1. 網絡層的功能
  2. IP 數據報的結構
  3. TTL
  4. IPv4 協議

學習內容


省流

  1. Maven 進階
  2. 請求 js 封裝
  3. ElementPlus 表單驗證
  4. ElMessageBox 消息彈框

1. Maven 進階

1)分模塊設計

在實際項目開發中,一個人往往只負責某個模塊的開發。將模塊按功能/層進行拆分,再通過 Maven 進行導入。

2)繼承,聚合

類似 Java 的繼承,Maven 子工程可以繼承父工程的配置信息以及依賴。設計一個僅帶 Maven 配置的模塊作為父工程:

<parent> <groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>3.4.4</version><relativePath/>
</parent><groupId>com.itheima</groupId>
<artifactId>tlias-parent</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>pom</packaging><!-- 設置打包方式為 pom -->

在子工程中引入繼承:

<parent><groupId>com.itheima</groupId><artifactId>tlias-parent</artifactId><version>1.0-SNAPSHOT</version><relativePath>../tlias-parent/pom.xml</relativePath> <!-- 父工程相對路徑 -->
</parent>
依賴管理

通過 <dependencyManagement> 來控制子工程的依賴版本:

<dependencyManagement><dependencies><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.36</version><optional>true</optional></dependency></dependencies>
</dependencyManagement>

注意

  • 此時子工程的依賴可以不需要指定版本,如果指定,以子工程的版本為準。
  • 依賴管理必須指定版本,而不能默認繼承父工程的版本,這只在 <dependencies> 中生效。
聚合

當父類構建 Maven 工程時,會將 <modules> 作為它的子工程自動構建:

<modules><module>../tlias-utils</module><module>../tlias-pojo</module><module>../tlias-web-management</module>
</modules>

2. 請求 js 封裝

解耦實現基本的前端發送請求路徑功能。

1)在 vite.config.js 配置 api 路徑信息
server: {proxy: {'/api': {target: 'http://localhost:8080',secure: false,changeOrigin: true,rewrite: (path) => path.replace(/^\/api/, ''),}}
}
2)實現異步發送 api 請求的工具類
import axios from 'axios'// 創建 axios 實例對象
const request = axios.create({baseURL: '/api',timeout: 600000
})// axios 的響應 response 攔截器
request.interceptors.response.use((response) => { // 成功回調return response.data},(error) => { // 失敗回調return Promise.reject(error)}
)
export default request
3)在對應模塊 .js 實現 api 請求方法
import request from "@/utils/request";// 查詢全部部門數據
export const queryAllApi = () =>  request.get('/depts');// 新增
export const addApi = (dept) =>  request.post('/depts', dept);// 根據 ID 查詢
export const queryByIdApi = (id) =>  request.get(`/depts/${id}`);// 修改
export const updateApi = (dept) =>  request.put('/depts', dept);// 刪除
export const deleteByIdApi = (id) =>  request.delete(`/depts?id=${id}`);
4)在對應 Vue 組件中調用 api 方法
// 查詢
const deptList = ref([])
const search = async () => {const result = await queryAllApi();if(result.code){deptList.value = result.data;}
}

3. ElementPlus 表單驗證

1)表單驗證 ref 數據
const rules = ref({name:[{required: true,message:'必填項',trigger:'blur'}, // trigger 事件監聽{min:2,max:10,message:'長度在 2 - 10 之間',trigger:'blur'}]
})
2)設置校驗參數
const deptFormRef = ref();if(!deptFormRef.value) return;deptFormRef.value.validate(async (valid) => {if(valid){ // 表單驗證是否通過// 通過}else{// 不通過}})
3)綁定校驗規則 rules 和數據名稱 prop
<el-form :model="dept" :rules="rules" ref="deptFormRef"> <!-- 綁定校驗規則和校驗參數 --><el-form-item label="部門名稱" label-width="80px" prop="name"> <!-- 綁定數據名稱 --><el-input v-model="dept.name"/></el-form-item>
</el-form>
4)重置規則
if(deptFormRef.value){deptFormRef.value.resetFields();
}

4. ElMessageBox 消息彈框

const delById = async(id)=>{ElMessageBox.confirm("確認刪除?","提示",{ confirmButtonText:'確認',cancelButtonText:'取消',type:'warning'}).then(async ()=>{const result = await deleteByIdApi(id);if(result.code){ElMessage.success("刪除成功");search();}else{ElMessage.error(result.msg);}}).catch(()=>{ElMessage.info("取消刪除");})
}

結語


我竟無言以對。


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

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

相關文章

深度學習--卷積神經網絡調整學習率

文章目錄 前言一、學習率1、什么學習率2、什么是調整學習率3、目的 二、調整方法1、有序調整1&#xff09;有序調整StepLR(等間隔調整學習率)2&#xff09;有序調整MultiStepLR(多間隔調整學習率)3&#xff09;有序調整ExponentialLR (指數衰減調整學習率)4&#xff09;有序調整…

【消息隊列RocketMQ】四、RocketMQ 存儲機制與性能優化

一、RocketMQ 存儲機制詳解 1.1 存儲文件結構? RocketMQ 的存儲文件主要分布在store目錄下&#xff0c;該目錄是在broker.conf配置文件中通過storePathRootDir參數指定的&#xff0c;默認路徑為${user.home}/store 。主要包含以下幾種關鍵文件類型&#xff1a;? 1.1.1 Comm…

C++入門小館: 探尋vector類

嘿&#xff0c;各位技術潮人&#xff01;好久不見甚是想念。生活就像一場奇妙冒險&#xff0c;而編程就是那把超酷的萬能鑰匙。此刻&#xff0c;陽光灑在鍵盤上&#xff0c;靈感在指尖跳躍&#xff0c;讓我們拋開一切束縛&#xff0c;給平淡日子加點料&#xff0c;注入滿滿的pa…

CSS-跟隨圖片變化的背景色

CSS-跟隨圖片變化的背景色 獲取圖片的主要顏色并用于背景漸變需要安裝依賴 colorthief獲取圖片的主要顏色. 并丟給背景注意 getPalette并不是個異步方法 import styles from ./styles.less; import React, { useState } from react; import Colortheif from colorthief;cons…

RAGFlow:構建高效檢索增強生成流程的技術解析

引言 在當今信息爆炸的時代&#xff0c;如何從海量數據中快速準確地獲取所需信息并生成高質量內容已成為人工智能領域的重要挑戰。檢索增強生成&#xff08;Retrieval-Augmented Generation, RAG&#xff09;技術應運而生&#xff0c;它將信息檢索與大型語言模型&#xff08;L…

SpringBoot應用:MyBatis的select語句如何返回數組類型

在SpringBoot應用中&#xff0c;比如想返回一個表的主鍵id構成的Long型數組Long[]&#xff0c;需要在XxxMapper.xml文件中這樣定義select語句&#xff1a; <select id"selectIds" parameterType"int" resultType"Long">select id from sy…

【HFP】藍牙HFP協議來電處理機制解析

目錄 一、協議概述與技術背景 1.1 HFP協議演進 1.2 核心角色定義 1.3 關鍵技術指標 二、來電接入的核心交互流程 2.1 基礎流程概述&#xff1a;AG 的 RING 通知機制 2.2 HF 的響應&#xff1a;本地提醒與信令交互 三、帶內鈴聲&#xff08;In-Band Ring Tone&#xff0…

【每天一個知識點】如何解決大模型幻覺(hallucination)問題?

解決大模型幻覺&#xff08;hallucination&#xff09;問題&#xff0c;需要從模型架構、訓練方式、推理機制和后處理策略多方面協同優化。 &#x1f9e0; 1. 引入 RAG 框架&#xff08;Retrieval-Augmented Generation&#xff09; 思路&#xff1a; 模型生成前先檢索知識庫中…

基于STC89C52RC和8X8點陣屏、獨立按鍵的小游戲《打磚塊》

目錄 系列文章目錄前言一、效果展示二、原理分析三、各模塊代碼1、8X8點陣屏2、獨立按鍵3、定時器04、定時器1 四、主函數總結 系列文章目錄 前言 用的是普中A2開發板&#xff0c;外設有&#xff1a;8X8LED點陣屏、獨立按鍵。 【單片機】STC89C52RC 【頻率】12T11.0592MHz 效…

C++學習:六個月從基礎到就業——C++學習之旅:STL迭代器系統

C學習&#xff1a;六個月從基礎到就業——C學習之旅&#xff1a;STL迭代器系統 本文是我C學習之旅系列的第二十四篇技術文章&#xff0c;也是第二階段"C進階特性"的第二篇&#xff0c;主要介紹C STL迭代器系統。查看完整系列目錄了解更多內容。 引言 在上一篇文章中…

leetcode刷題——判斷對稱二叉樹(C語言版)

題目描述&#xff1a; 示例 1&#xff1a; 輸入&#xff1a;root [6,7,7,8,9,9,8] 輸出&#xff1a;true 解釋&#xff1a;從圖中可看出樹是軸對稱的。 示例 2&#xff1a; 輸入&#xff1a;root [1,2,2,null,3,null,3] 輸出&#xff1a;false 解釋&#xff1a;從圖中可看出最…

無法右鍵下載文檔?網頁PDF下載方法大全

適用場景&#xff1a;繞過付費限制/無法右鍵下載/動態加載PDF 方法1&#xff1a;瀏覽器原生下載&#xff08;成功率60%&#xff09; Chrome/Edge&#xff1a; 在PDF預覽頁點擊工具欄 ??下載圖標&#xff08;右上角&#xff09; 快捷鍵&#xff1a;CtrlS → 保存類型選PDF …

基于缺失數據的2024年山東省專項債發行報告

一、數據情況 本次報告選取了山東省財政局公開的2024年專項債數據,共計2723條,發行期數是從第1期到第58期,由于網絡原因,其中25期到32期,54到57期的數據有缺失,如下圖所示。 從上圖看出,一年52周,平均每周都有一期發布,因此持續做專項債的謀劃很重要,一定要持續謀劃…

Ubuntu數據連接訪問崩潰問題

目錄 一、分析問題 1、崩潰問題本地調試gdb調試&#xff1a; 二、解決問題 1. 停止 MySQL 服務 2. 卸載 MySQL 相關包 3. 刪除 MySQL 數據目錄 4. 清理依賴和緩存 5.重新安裝mysql數據庫 6.創建程序需要的數據庫 三、驗證 1、動態庫更新了 2、頭文件更新了 3、重新…

Linux系統編程 day10 接著線程(中期頭大,還要寫論文)

線程有點懵逼 線程之前函數回顧以及總結部分&#xff08;對不清楚的問題再思考&#xff09; 線程控制原語 進程控制原語 pthread_create(); fork(); pthread_self(); getpid(); pthread_exit(); exit(); pthread_join(); …

《潯川AI翻譯v6.1.0問題已修復公告》

《潯川AI翻譯v6.1.0問題已修復公告》 尊敬的潯川AI翻譯用戶&#xff1a; 感謝您對潯川AI翻譯的支持與反饋&#xff01;我們已針對 **v6.1.0** 版本中用戶反饋的多個問題進行了全面修復&#xff0c;并優化了系統穩定性。以下是本次修復的主要內容&#xff1a; 已修復問題 ?…

深入理解 java synchronized 關鍵字

&#x1f9d1; 博主簡介&#xff1a;CSDN博客專家&#xff0c;歷代文學網&#xff08;PC端可以訪問&#xff1a;https://literature.sinhy.com/#/literature?__c1000&#xff0c;移動端可微信小程序搜索“歷代文學”&#xff09;總架構師&#xff0c;15年工作經驗&#xff0c;…

華三(H3C)與華為(Huawei)設備配置IPsec VPN的詳細說明,涵蓋配置流程、參數設置及常見問題處理

以下是針對華三&#xff08;H3C&#xff09;與華為&#xff08;Huawei&#xff09;設備配置IPsec VPN的詳細說明&#xff0c;涵蓋配置流程、參數設置及常見問題處理&#xff1a; 一、華三&#xff08;H3C&#xff09;設備IPsec VPN配置詳解 1. 配置流程 華三IPsec VPN配置主要…

KBEngine 源代碼分析(一):pyscript 目錄文件介紹

pyscript 目錄文件 pyscript 目錄提供了 KBEngine 把 C++ 代碼中的類注冊到 Python 的機制 同時也提供了 C++ 調用 Python 方法的例子 相對現在的 C++ 17/20 ,這個目錄的分裝相對不優雅 不過不影響學習如何使用 Python 官方庫提供的 API ,實現 C++ Python 混合編程 C++ …

線程入門3

synchronized修飾方法 synchronized可以修飾代碼塊(在線程入門2中有例子)&#xff0c;也可以修飾普通方法和靜態方法。 修飾普通方法 修飾普通方法簡化寫法&#xff1a; 修飾靜態方法 修飾靜態方法簡化寫法&#xff1a; 注意&#xff1a;利用synchronized上鎖&#xff0c;鎖的…