架構學習之路(一)原始碼分析 3 單例模式原型模式(prototype)
建立型有乙個原型
資料內容相同,但物件例項不同
dto、vo、pojo、entity…
dto 和 vo 之間存在一些屬性名稱、型別都相同,資料庫中表查詢出來的物件會賦值給 dto,mvc 中的 model 把 dto 中的值賦值給 vo,再把 vo 中的值傳輸到 view 中去
複製,屬性名稱相同、屬性內容相同、屬性值相同
spring scope=「prototype」:把物件中配置的依賴關係,在每次使用物件之前,都會建立乙個新的物件,並且會將依賴關係完整的賦值給新建立的物件
實現方式
反射去實現,效能低,apache
clone 實現,效能高
生活場景:孫悟空吹毫毛變猴子
/**
* 淺複製
**/public
class
prototype
implements
cloneable
public string getname()
public
void
setname
(string name)
public arraylist
getarraylist()
public
void
add(string str)
}public
class
monkey
public
void
setheight
(double height)
public
double
getweight()
public
void
setweight
(double weight)
public date getbirthday()
public
void
setbirthday
(date birthday)
}public
class
jingubang
implements
serializable
public
void
small()
}/**
* 深複製
*/public
class
wukong
extends
monkey
implements
cloneable
,serializable
public jingubang getjingubang()
@override
public object clone()
throws clonenotsupportedexception
private object deepclone()
catch
(ioexception
| classnotfoundexception e)
}}
SPRING原始碼學習之路(一)
結合 spring技術內幕 深入解析spring架構與設計原理 這本書開啟spring學習之路。ps 之前其實已經看過一部分了,但是也就是看過,一看而過了。o o 物件初始化時候 呼叫refresh 啟動了beandifinition載入過程 throws bean ception refresh ...
Tomcat原始碼分析 架構
下面談談我對tomcat架構的理解 總體架構 面向元件架構 基於jmx 事件偵聽 1 面向元件架構 tomcat 看似很龐大,但從結構上看卻很清晰和簡單,它主要由一堆元件組成,如server service connector等,並基於jmx管理這些元件,另外實現以上介面的元件也實現了代表生存期的介...
Vue 原始碼分析 建構函式原型
在執行 npm run dev 的時候 根據 script config.js 檔案中的配置 web full dev banner 可知入口檔案為 web entry runtime with compiler.js 最終輸出為 dist vue.js 有乙個umd 模組 模組的型別總共有 iif...