java近期工作總結

近期工作中的一些總結

(1)三層模板和流程
我發現很多東西其實吧,三層就是一個模板和流程;
正向推,從控制層開始,反向從內個sql開始寫,大部分應該就是從xml文件開始的,然后寫到控制層,畢竟這中間都是方法的調用。
在這里插入圖片描述
假如先看了前端的接口文檔吧,比如要返回什么鬼東西先看一眼;
然后咱們就是說去控制層開始用注解吧;@restcontroller,這種集合性注解;
然后@requestmapping寫好請求路徑,然后設置好類;繼承誰,這個可以自己寫個大類,就是有所有的基礎請求的這種,這個我進階的時候可以多看看;
1.寫好對前端的接口定義好路徑:然后里邊寫好要用的方法,看看要返回什么,比如前端要一個返回用戶列表的數據吧;我們的起名肯定就是getUser()類似這種
2.第二步,我們現在去服務層實現,我們去服務層寫個接口就和這個方法名字一樣,然后我們里面就寫好抽象方法我們再繼續,去impl實現層里面實現;
3.實現層我們用到這個方法重寫,里面就是返回這個實體類的所有數據,寫個return就行了,這個實體類放到集合里面返回,或者直接返回這個實體類的對象?
4.我們去定義實體類,我們這里肯定是user類了,里面id什么的弄好,然后mapper里面寫接口,xml里面寫對他的sql,用mybatis去映射;
5.然后我們把sql寫對,執行一下,去內個數據庫里面查一下,能查出來就代表差不多了,其實最重要的就底層邏輯;
6.去前端檢驗index.ts接口路徑是否正確;然后前端的ts里面的字段是否都對都包含。
7.檢查完畢之后我們就是去dom里面改,然后把值傳對,請求寫對;

前端請求 → Controller → Service接口 → Service實現 → Mapper接口 → XML映射文件 → 數據庫

返回數據 ←───────────────────────────────────

后端請求 → 前端接口→ 前端ts對應 → 前端vue頁面(dom,點擊事件,事件邏輯綁定)-> 渲染

其實最重要的就是咱們sql要寫好,一個sql就能把查出來的很多東西送進vo類里面;理解的太少了;最好的思路就是從sql到mapper到service

(2)接口復用性
就是一個接口他可以用很多很多很多次;非常多次,比如你做了分頁查詢吧,下拉框里面根據特殊值查詢吧,這種都可以用百萬次,而且尤其是用內個id查詢數據,你不管什么都是用id,保存其實也是,只是前端給她翻譯成字段了,你看著以為是名字,所以要多打斷點,多看返回,多理解,然后多看代碼;更別說,那種增刪改查,你寫好一個,別的頁面照抄就完了, 主要是邏輯性要很強;根據業務需求來;需求真的多到爆!然后就是,寫好了還一會得變,不停的要改;所以根本就是,在寫一個初始接口的時候就得寫好,做一個最大的功能,其實就在于怎么設計了,如果你底層設計的不好,后面業務開發搭建起來全是bug;

(3)git的使用
就是這個東西吧,他真的就是,很復雜,很煩,很麻煩,你上傳了個東西,別人改一樣的地方,就沖突,先提交到本地再推送,就容易忘,最好寫一個接口測試了沒問題就提交,不然多了你根本看不過來,多提交幾次,備注打好,每次就一小部分就行了;這樣也利于維護,最好遵守規則,寫看的懂的代碼,不然,更亂,亂種亂;

(4)拿到一個業務先分析,一定要分析好
分析業務需求很重要,比如,現在要加載一個下拉框了吧,就是需求是,你這個下拉框里面有別的表的數據,然后呢,前端用戶點擊,點擊之后我獲取到用戶的選擇和id吧,然后拿到這個值以后,我去根據這個值去查詢我對應的信息;這怎么辦?先說我的思想:
1.我們需要先對應表建立vo,和實體類,我先把東西查到,查到了我才能返回對吧,返回返回成什么格式呢?就比如這個下拉列表里面要展示的是資產列表,那我就得有個資產表的實體類,然后我去對應建立,然后我給她@data,構造函數和tostring吧,然后全部設置好。那是不是就是封裝成這個vo類返回嗎;然后返回給mapper給服務層,給控制層,層層返回,然后;就前端拿到了,
2.現在是不是該去xml文件里面寫sql了,就是Mybatis,的東西然后做好映射;

(5)解決問題的能力和歸類
遇到問題bug不要慌,一定要有特別足夠的耐心,然后從源頭找,或者報錯丟給ai,ai分析完代碼返回,找清楚是什么問題誰的問題,效率會更高,再一個就是要多自己手寫,自己手寫的多了,才能加倍理解,時間緊迫的現在,加上各種

(6)多交流討論
一定一定要多交流討論問題,這個東西他原型也有可能會出大問題出錯;出很多很多的毛病,遇到很多不清楚的地方就改,然后就是做好一個接口,沒問題就提交

(7)總結,然后手敲
一定一定要多交流討論問題,這個東西他原型也有可能會出大問題出錯;出很多很多的毛病,遇到很多不清楚的地方就改,然后就是做好一個接口,沒問題就提交,多多熟悉

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

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

相關文章

vue中的torefs

在 Vue 中, toRefs(state) 的返回值是一個 新對象,其中每個屬性都是對應 state 中原始屬性的 ref 對象。具體來說: 返回值的結構與特性 1. 對象結構 - 若輸入 state 為 { a: 1, b: text } ,則 toRefs(state) 返回&a…

可編程邏輯器件的演進與對比分析

可編程邏輯器件的演進與對比分析 目錄 離散邏輯芯片與早期PLD的限制CPLD的誕生與結構特點FPGA的架構創新CPLD與FPGA的核心差異總結 1. 離散邏輯芯片與早期PLD的限制 在還沒有發明出可編程邏輯器件(PLD: Programmable Logic Device)之前,設…

Ubuntu機器開啟root用戶遠程登錄

一般正常情況是可以直接使用非root用戶登錄,但是由于權限問題,所以部分內容需要遠程ROOT用戶登錄,具體如下: 1??配置root用戶密碼 一般情況下系統中root不能直接登錄,所以也沒有保存root密碼,現在需要登…

rockchip android14 設置不休眠

rockchip android14 設置不休眠 文章目錄 rockchip android14 設置不休眠前言一、代碼路徑二、代碼修改前言 在rk 的android14代碼中設置開機后永不休眠 一、代碼路徑 device/rockchip/common/overlay/frameworks/base/packages/SettingsProvider/res/values/defaults.xml二、…

什么是數據孤島?如何解決數據孤島問題?

目錄 一、數據孤島的定義與表現 1. 數據孤島的定義 2. 數據孤島的表現形式 二、數據孤島產生的原因 1. 技術層面 2. 組織管理層面 3. 業務流程層面 三、數據孤島帶來的危害 1. 對企業決策的影響 2. 對業務運營效率的影響 3. 對數據治理和安全的影響 四、解決數據孤…

自定義Cereal XML輸出容器節點

自定義Cereal XML輸出容器節點 CEREAL_SERIALIZE_INTRUSIVE 在 1.優化Cereal宏 一行聲明序列化函數 QString、QVector、QList、QMap序列化在2.在Cereal中支持Qt容器序列化 靜態成員函數type_node檢測在 3.利用SFINAE檢測成員函數 🚀 告別value0:自定義Ce…

Spark 寫入hive表解析

FileOutputCommitter中提交mapreduce.fileoutputcommitter.algorithm.version有v1和v2兩個版本。 v1版本Spark寫入文件的流程: 1.當task完成的時候,會將task的結果文件先寫入到臨時目錄下面。 2.所有的task完成后,將所有的結果文件寫入到結…

Linux云計算基礎篇(5)

一、sudo是什么? 定義:sudo(SuperUserDO)是一個Linux/Unix系統命令,允許被授權的普通用戶以另一個用戶(通常是超級用戶root)的身份執行命令。 核心目的: 1.最小權限原則:避免讓用戶長期擁有ro…

Postgresql通過pgpool進行高可用部署主從,災備(單機版)

1、bitnami/postgresql-repmgr:15 (鏡像名) Bitnami 的 PostgreSQL-Repmgr 鏡像是一個預配置的 Docker 鏡像,集成了 PostgreSQL 數據庫和 repmgr(Replication Manager)工具,用于快速搭建高可用&#xff08…

Flink-1.19.0源碼詳解-番外補充3-StreamGraph圖

1.StreamGraph圖: StreamGraph是Flink流處理作業的第一個計算調度流圖,它是從用戶編寫的 DataStream API程序轉換而來的邏輯圖。StreamGraph由StreamNode與StreamEdge組成,StreamNode為記錄數據處理的節點,StreamEdge為連接兩個StreamNode的邊…

linux系統---Nginx反向代理與緩存功能

目錄 正向代理和反向代理 正向代理的作用 反向代理可實現的功能 反向代理客戶端ip透傳 1.初始訪問192.168.235.139 結果 2.編輯代理服務器的配置文件 3、重載nginx服務 4、訪問代理服務器 實現反向代理負載均衡 1.先啟用已用另一臺服務端 2.使用192.168.235.140 …

U+平臺配置免密登錄、安裝Hadoop配置集群、Spark配置

文章目錄 1、免密登錄2、安裝hadoop3、Spark配置 具體詳細報告見資源部分,全部實驗內容已經上傳,如有需要請自行下載。 1、免密登錄 使用的配置命令: cd ~/.ssh/ssh-keygen -t rsaEnter鍵回車y回車回車出現如上所示 cat ./id_rsa.pub >…

GitHub vs GitLab 全面對比報告(2025版)

從技術架構到金融估值,深度解析兩大代碼托管平臺的差異化競爭策略 一、技術架構對比 維度GitHub (Microsoft旗下)GitLab (獨立上市公司)關鍵差異核心架構- 分布式Git倉庫 Issues/Projects- 全棧DevSecOps平臺GitLab集成CI/CD、安全、監控部署模式- SaaS為主 - Git…

Python 數據分析與可視化 Day 14 - 建模復盤 + 多模型評估對比(邏輯回歸 vs 決策樹)

? 今日目標 回顧整個本周數據分析 & 建模流程學會訓練第二種模型:決策樹(Decision Tree)掌握多模型對比評估的方法與實踐輸出綜合對比報告:準確率、精確率、召回率、F1 等指標為后續模型調優與擴展打下基礎 🪜 一…

本周大模型新動向:KV緩存混合精度量化、個體時空行為生成、個性化問答

點擊藍字 關注我們 AI TIME歡迎每一位AI愛好者的加入! 01 KVmix: Gradient-Based Layer Importance-Aware Mixed-Precision Quantization for KV Cache 大型語言模型(LLMs)在推理過程中,鍵值(KV)緩存的高內…

在 Spring Boot 中使用 WebMvcConfigurer

WebMvcConfigurer 是 Spring MVC 提供的一個擴展接口,用于配置 Spring MVC 的各種功能。在 Spring Boot 應用中,通過實現 WebMvcConfigurer 接口,可以定制和擴展默認的 Spring MVC 配置。以下是對 WebMvcConfigurer 的詳細解析及其常見用法。…

w-筆記:uni-app的H5平臺和非H5平臺的拍照識別功能:

uni-app的H5平臺和非H5平臺的拍照識別功能&#xff1a; <template><view class"humanVehicleBinding"><view v-if"warn" class"shadow"></view><view class"header"><uni-nav-bar left-icon"l…

TCP 半連接隊列和全連接隊列(結合 Linux 2.6.32 內核源碼分析)

文章目錄 一、什么是 TCP 半連接隊列和全連接隊列二、TCP 全連接隊列1、如何查看進程的 TCP 全連接隊列大小&#xff1f;注意 2、TCP 全連接隊列溢出問題注意 3、TCP 全連接隊列最大長度 三、TCP 半連接隊列1、TCP 半連接隊列溢出問題2、TCP 半連接隊列最大長度3、引申問題 一、…

linux下fabric環境搭建

參考教程&#xff1a; https://devpress.csdn.net/cloudnative/66d58e702045de334a569db3.html?dp_tokeneyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZCI6MjA2MzY4NywiZXhwIjoxNzQwMzY4MDc0LCJpYXQiOjE3Mzk3NjMyNzQsInVzZXJuYW1lIjoiaHVhbmd0dXBpIn0.oh8e4F6Sw_A4SV2ODQ5W0pYK0…

Redis Pipeline介紹:提高操作Redis數據庫的執行效率

Redis Pipeline是一種用于提高Redis執行效率的技術&#xff0c;通過減少客戶端與服務器之間的通信開銷&#xff0c;顯著提升批量操作的性能。本文將詳細介紹Redis Pipeline的概念、使用場景、實現方式及其優勢。 一、Redis Pipeline的概念 Redis Pipeline是一種批處理機制&am…