2023年1月13日實習日誌

2021-07-09 10:54:35 字數 1306 閱讀 5498

其中學到的最有用的一點應該就是多條件查詢的處理方法了。

從圖中可以看出來,我們需要根據 時間,狀態,模組,站點…來查詢符合條件的資料。按我們之前的思路來考慮,查詢應該通過get方式傳遞資料。而get會顯示在url上,這樣如果單條件或是少數條件的話,是可以接受的,但是如果查詢條件太多的話,會導致url特別長,雖然伺服器並沒有對url的長度做限制,可是最起碼不太美觀。

於是我就想了另外一種方式來做查詢,就是把查詢的條件做成乙個form表單,然後提交表單,後台接受post資料然後查詢出相應的資訊。

這樣的話,查詢資訊就不會顯示在url中,而且可以將查詢資訊隱藏起來,看上去很完美。pe***ct!

然而還是欠考慮了,畢竟前輩們把查詢條件get在url上是有原因的,因為我繼續往下做就遇到了乙個無法避免的問題。就是我通過查詢出來了部分資料,然後我對這些資料進行修改(新增或刪除),修改完之後(修改用的是ajax方式),要動態展現出來,於是我就在修改完之後加了乙個動態重新整理頁面,然後問題就來了,我重新整理之後的頁面並不是查詢之後的資訊。而是最初始的列表頁,也就是說,我之前post的查詢條件在重新整理之後就沒有了。於是我開始方了。

然後我開始想,有沒有可能在重新整理頁面的時候重新post之前post過的資訊呢,網上查了好多,也考慮了一下,並沒有找到很好的解決方法,於是,我好方。

後來經大神指點找到了乙個折中的方法來解決這個問題:

1、先post查詢條件到乙個方法中。

2、在這個方法中把相關的查詢條件拼成乙個字串形式。

3、然後帶著這個字串(url字尾形式),訪問列表頁面。

4、在列表頁面方法中把這個字串再拆分成陣列。

5、根據這個陣列查詢出相關資料。傳遞給前台

這樣用了乙個中間層,雖然有些麻煩但是很好的解決了這個問題,後來在做分頁查詢的時候更是省了不少的事,後來大神把中間的這些操作寫進乙個類裡,具體就是 string -> array (正則匹配) array -> string (字串拆分)。最開始看到這個類的時候覺得何必多此一舉呢,現在想想,自己真的是太年輕了。

另:最近一直在看關於資料傳輸的東西,主要就是post 和 get ,從名字上分析,post是傳輸資料,而get是得到資料,http協議的制定者的初衷就是希望我們在需要獲取資料的時候用get方法,需要改變資料狀態的時候(例如增刪改)的時候,採用post方法。只是框架的發展使得程式設計師對於post和get並沒有從根本上認識到區別,以導致post和get混用。其實這是不知道提倡和傳播的。

如果有時間的話,希望可以塌下心來仔細研究一下這些最基本的網路協議。

有時候我們做的太多,卻總是忘了我們為什麼要去做。

還有一下小問題,就是一些小的js的操作,寫進github裡了,以作留念。

7月13日實習日誌

今天是實習第七天。今天通過學學習我知道了網管軟體通過監測網路裝置是否可用 各埠流量 效能如何 是否有異常日誌及有沒有人非法登陸等,來確保網路系統的正常執行。學會了對網路交換裝置的管理。1 監測網路裝置的可用性 監測網路裝置可用性最簡單的方法就是網路裝置對ping或者snmp get請求的響應。2 監...

2023年5月13日學習筆記

1.關於clonerange 和clonecontents clonerange是建立乙個新的range物件,表示與當前range物件相同的區域 這是用來轉殖的文字 clone 哈哈哈哈 clone clonecontents是把range內容複製到乙個documentfragment中 extra...

2023年11月13日學習總結

階段總結 最近一周又複習了一次c語言,雖然還是有的地方不是太明白,比如指標,但是後面通過應用應該會慢慢熟悉。這一周也學了一些linux開發工具的應用,gcc編譯器和gdb偵錯程式都已經學習完畢,make工程管理器還沒有學完。gcc的各種命令基本可以熟練掌握,gdb平時用的並不多,所以還需要慢慢熟悉,...