Java Web項目的控制器層應該寫什么代碼?
問題描述
我們現在在做畢業項目,要求不用框架手寫一個系統。那么servlet是不是就相當于控制器?
比如說我寫一個用戶登錄系統,這個控制器里面應該寫什么內容呢?我是不是在servlet中接收到post數據,然后傳遞到service層中,然后service層再根據數據new出實體,并且對實體操作,然后將這個操作通過dao應用到數據庫中?
問題解答
回答1:你的想法就是框架中的分層思想,這樣做沒什么問題。
回答2:不用框架手寫一個系統的話,你完全可以不用mvc結構,為啥一定要拘泥于什么是控制器呢,記住一切服務器只干了以下工作“收到一些數據,算一算,返回去一些數據”,能滿足這個要求你的系統就成型了,完全沒必要拘泥于什么結構
回答3:servlet的指責只有兩個,接收請求與轉發。接收表單數據,并封裝成相應對象,然后傳給service
回答4:首先你要了解幾點,框架也是在Servlet的基礎上封裝之后變得更加容易使用而已。你的思路是對的,但是我建議你直接看看Servlet的API你就馬上明了。大概跟你說下思路吧。Servlet啟動之后,tomcat幫你負責監聽http請求和轉發給你的應用。每次來了一個新的請求,你所寫的Servlet中的service方法都會被調用,然后根據請求的內容,分別調用doGet,doPost等方法,所以你只要繼承Servlet之后,覆蓋這幾個方法的實現。至于底下的分層。跟Servlet是沒有關系的。你要理解,你分層的目的是降低耦合性。如果需要幫助,歡迎私信我。最近正在模仿tomcat做一個web服務器,所以對這一塊相對有點了解。
相關文章:
1. 數據庫 - mysql聯表去重查詢2. 用tp5框架寫sql語句3. 【python|scapy】sprintf輸出時raw_string轉string4. docker Toolbox在win10 家庭版中打開報錯5. mysql - 數據庫為什么需要鎖機制?6. python - 我已經連上了美國的VPN,而且在瀏覽器里查看的game排行也是美國的,可是為啥我用代碼怎么爬都是中國地區排行7. 就一臺服務器,mysql數據庫想實現自動備份,如何設計?8. mysql 能不能創建一個 有列級函數 的聯合視圖?9. python3.x - 關于Python圖遍歷的操作10. python小白 問關于參數無法找到的問題
