瘋子在思考之自己動手寫MVC

2021-09-01 19:03:05 字數 1085 閱讀 8100

mvc-1

[url]

mvc-2

[url]

第二篇介紹了為什麼要用mvc以及mvc的概念,即什麼是mvc。

通過以上的了解,我個人認為,對於開發者來講,mvc的filter即我們在web.xml中配置的***是不重要的,框架為我們寫好了,我們做的事情就是配置一下就可以了,而我們更關注具體的業務邏輯和view,而如果我們自己寫乙個mvc那麼,我覺得關注點就是開發人員不關心的那部分。即filter。業務邏輯和view要留給開發人員自己實現。

那麼filter中具體要實現哪些功能呢?

1、action方法對映

2、***

3、引數注入

4、模型驅動(模型引數注入)

5、路由跳轉

6、action方法的執行

參考struts及spring mvc其實有兩種實現方法,對比而言,spring mvc的方法更簡單效率更高。

這裡附引數注入**

private object actionioc(servletrequest request, actionentity actionentity) else catch (exception e)

methodaccessor methodaccessor = beanfactory

.getproxybean(parameterclass[i].get******name());

method methods = parameterclass[i].getmethods();

for (method method : methods)

}args[i] = entity;}}

return args;

}

methodaccessor的思想是這樣的

對於模型驅動而言,這裡沒有採用jdk反射或cglib位元組碼反射,而是生成乙個**類來變相反射(實際上是物件方法的直接呼叫)對於這部分思考有興趣的朋友可以參考reflectasm。

[url]

有什麼意見或建意可以在這裡拍磚。

mvc這部分比較簡單,大家有什麼好想法可以繼續補充,接下來orm....

自己動手寫docker之cgroup

實驗環境 ubuntu 18.10 作業系統已經預設把各種controller都掛載到 sys fs cgroup 目錄下了。ls sys fs cgroup 可以檢視有哪些controller mount grep cgroup 可以檢視掛載資訊 可以看到有乙個是cgroup2,其它都是cgrou...

《自己動手寫框架7》 關於框架體系與戰術的思考

什麼是框架?這個問題實際上許多 做框架 的人也不明白。框架和庫的本質不同在於 當然,關於這兩貨之間的比較,還有許多個角度,但我個人覺得本質是我上面舉的這些。設計的時候應該考慮哪些問題?這個問題的答案,如果用一句話來解符號,那答案就是 要仔細考慮使用這個框架的人感受,要考慮如何讓使用者感覺爽的問題。當...

《自己動手寫框架7》 關於框架體系與戰術的思考

什麼是框架?這個問題實際上許多 做框架 的人也不明白。框架和庫的本質不同在於 當然,關於這兩貨之間的比較,還有許多個角度,但我個人覺得本質是我上面舉的這些。設計的時候應該考慮哪些問題?這個問題的答案,如果用一句話來解符號,那答案就是 要仔細考慮使用這個框架的人感受,要考慮如何讓使用者感覺爽的問題。當...