2008年11月21日
#
Java飯管開張了,大家來恭喜.
最流行菜品:麻辣三絲(Struts絲,Spring絲,Hibernate絲)
廚師:Java版
小二:Java版
美女:小二,來盆你們店招牌菜。。。。。
小二: 來了,麻辣三絲到了,您慢慢品嘗.....(嘰嘰咕咕一大堆)
美女:煩不煩啊,我的人啊,那來這多蒼蠅?????????/@@@@@@@@@@@@@@@(知趣的走開)
JDBC一號(hào):小二,餓死了,快隨便來一盆填肚子的
小二:(嘿嘿,又來了個(gè)冤大頭)麻辣三絲來了.....
.
.
.
終于到晚上12:59 59
收工,累死了
~~~~~~~~~~~~~~~~~~~~
店小,只請了一個(gè)小二,要求,服務(wù)所有顧客:
小二實(shí)現(xiàn)了單例,完成要求
單態(tài)模式兩種表現(xiàn)方式:單態(tài)單例,單態(tài)多例
模式---生活的一種提煉,取之于生活,還之于生活
僅以個(gè)人之理解,解析一下,多多交流
很久以來,一直是認(rèn)為,知識(shí)是沒有壁壘的,方法是通用的。
比如四人幫的24種設(shè)計(jì)模式,源自己于建筑模式的靈感,應(yīng)用于計(jì)算機(jī)。反之,這幾種模式同樣也適應(yīng)于其它行業(yè).
SSO,英文名
Single Sing On 單點(diǎn)登錄。這東東為什么會(huì)出現(xiàn),基于以下幾種場景:一個(gè)公司,有多套系統(tǒng),由多個(gè)機(jī)構(gòu)開發(fā),有各自獨(dú)立的權(quán)限系統(tǒng)。本來很久以來都運(yùn)行的好好的,一段時(shí)間后,由于某個(gè)人能力特強(qiáng),身兼數(shù)職,麻煩來了,如果是兩三套系統(tǒng),就有兩三套密碼,要是更多,不想了,取個(gè)折中的方案,全部設(shè)一個(gè)密碼,解決密碼問題,那帳號(hào)呢,那個(gè)可能能隨便改,現(xiàn)在為了方便,強(qiáng)行統(tǒng)一了帳號(hào),要一套一套的系統(tǒng)去修改用戶帳號(hào),可不是一件簡單的事。
既然這么麻煩,有沒有一種解決方案呢,歸根結(jié)底,用戶帳號(hào)和密碼是給誰認(rèn)----計(jì)算機(jī)系統(tǒng),這就容易了,我把各套系統(tǒng)的帳號(hào)統(tǒng)一起來,建立一個(gè)新的機(jī)制(這個(gè)就叫SSO-server吧),讓用戶從一個(gè)系統(tǒng)登錄以后,就在這個(gè)新系統(tǒng)里面登錄一個(gè)Token,如果他再訪問其它系統(tǒng),那個(gè)系統(tǒng)將帶著他的Token來請求SSO-server問他,“這個(gè)人登錄過嗎”,得到回答繼續(xù)處理.
緣起:關(guān)注SSO這東東時(shí),正好和朋友一起去逛了下世界最大的私家圓林---圓明圓
事例現(xiàn)場:圓明圓售票管理處征集處理方案,暫定50景點(diǎn)
方案1:每個(gè)景點(diǎn)設(shè)個(gè)賣票點(diǎn)
單景點(diǎn)最小化開銷:檢票/售票員 一名,檢票用具一套,售票用具一套
統(tǒng)計(jì):50人,50套售票用具,50套售票用品
方案2:在公園大門設(shè)一售票點(diǎn),各分景點(diǎn)只設(shè)檢票員
前題:售單票,和組合票(SSO系統(tǒng)訪問可配置)
開銷:大門:售票員一名 ,售票用品一套
分景點(diǎn):檢票員一名,檢票用品一套
統(tǒng)計(jì):51 人,1套售票用具,50套檢票用品
你選那一個(gè)
由于這近比較有時(shí)間,翻看了幾個(gè)流行開源框架源代碼,模板生成技術(shù)他們都有用。
基本使用的有兩種 Velocity,Freemarker,兩種技術(shù)各有千秋,根據(jù)這些開源程序要么同時(shí)支持,要么都不支持,可以證明他們的客戶受眾都占有很大的份量,同時(shí)也說明了模板技術(shù)其實(shí)在本質(zhì)上又是相通的,只不過用了不同的表現(xiàn)手法而已.
個(gè)人接觸這個(gè)技術(shù)比較晚,當(dāng)然用比較新的東東(其實(shí)還有一個(gè)原因,英文不好,對于開源的東東,主要是圖解,F(xiàn)reemarker首頁上的一張圖道出了模板的實(shí)質(zhì)),就說了Freemarker。
Freemarker 由4部分組成:模板(Template),數(shù)據(jù)源(實(shí)現(xiàn)樹形結(jié)構(gòu)的任何數(shù)據(jù):xml,javaBean,數(shù)據(jù)庫...),模板處理器(Freemarker API),輸出(流)。

通
俗一點(diǎn)說,如果在工廠做過流水線或看過,一看就清楚了,拿一個(gè)塑膠玩具廠來說,Template:模具,Java
Objects:原料,處理器:熱成型機(jī),Output:玩具.當(dāng)我們需要不同的玩具,
我們要做的是定制不同的模具,如果我們要做不同顏色的玩具,我們要做的就是更新原料的種類,那么前面的定好了,接下來的就是把原料倒進(jìn)去,在后面收成品就
可以了
Freemaker寫的Bean生成器,主要組成:javabean.ftl,BeanMetaData(原數(shù)據(jù)定義),PropertyMetaData(屬性定義),BeanBuilder構(gòu)建器用于生成源代碼(.java)文件和生成(.class)文件,簡易實(shí)現(xiàn)了一個(gè)由給定字符串生成JavaBean的實(shí)現(xiàn)
javaBean.ftl
package ${packageName};
/**
*${comment}
*/
public class ${simpleName?cap_first} implements java.io.Serializable{
private static final long serialVersionUID=${serialVersionUID};
public ${simpleName?cap_first}(){}
<#list fields as field>
<#assign filedType=field.type/>
<#assign filedName=field.name/>
<#assign filedComment=field.comment/>
/**
*${filedComment}
*/
private ${filedType} ${filedName};
/**
* @param ${filedType}
*/
public void set${filedName?cap_first}(${filedType} o)
{
this.${filedName}=o;
}
/**
* @return ${filedType}
*/
public ${filedType} get${filedName?cap_first}()
{
return this.${filedName};
}
</#list>
}



源代碼,歡迎交流
源代碼:歡迎交流
今天在做urlrewritefilter和struts2整合,遇到一個(gè)奇怪的問題:url已經(jīng)重寫之后就沒反應(yīng)了,提示找不到Action,但是換其它的:如html,jsp就可以.

沒辦法,開啟百度來找,對于遇到問題,我一向把自己看到很笨,個(gè)人認(rèn)為,我遇到的問題,一定會(huì)有前人遇到。
在蜘蛛網(wǎng)爬上好久,終于找到了解決辦法,感謝各位網(wǎng)友的解答.
原來問題去在filter的響應(yīng)方式上,servelt2.4給filter定義了4種過濾方式,用"<dispatcher>" 來標(biāo)識(shí),REQUEST,FORWARD,INCLUDE,ERROR,默認(rèn)是REQUEST
urlrewrite默認(rèn)重寫URL之后用的是Forward方式流向下一個(gè)Filter。
這樣就出現(xiàn)在上述問題,我要的你不給我,我當(dāng)然不處理啊;
解決方案:

解決之后,又仔細(xì)想了一下,這外標(biāo)簽為什么要在2.4加入,個(gè)人理解:可以提高過濾器的效率,可以讓filter只處理他需要關(guān)心的Servlet,如例:<dispatcher>FORWARD</dispatcher>這樣標(biāo)識(shí),這個(gè)過濾器就只處理通過forward傳出來的請求,其它 的一律不管

對于這張引起爭論的照片,有人說是假的,有人說是真的.
暫且不論他的真實(shí)與,只說了個(gè)人感受。在我們瘋狂的去證Z明他的真?zhèn)螘r(shí),我們到底做了什么,他的真實(shí)與否真的有如此之重要嗎??????
我是農(nóng)村的,我確實(shí)沒有做過這上面的事,但三伏天做農(nóng)活的事,在農(nóng)村根本就不是個(gè)什么新鮮事。很顯然,開口就說他是假的那些人,我只能說他們是城里人,沒有別的解釋。
不管他是真是假,對于我來說,都是一種欣慰,現(xiàn)在在社會(huì)真的已經(jīng)開始關(guān)注那個(gè)被遺棄的角落。
看了這張照片,我并沒有什么感覺,因?yàn)樵谖业氖澜缋铮@是一種日常記憶,已不足為奇,但看了下面那些評論,對于這些真實(shí)的事實(shí),居然還有人懷疑的真實(shí)性,我突然有一種沖動(dòng),準(zhǔn)備弄個(gè)相機(jī),把我所了解的真想記錄下來,盡管個(gè)人并不能改變什么,但能做一點(diǎn)總是好的。
多少年來,農(nóng)村和城市就是兩個(gè)概念,一個(gè)分化在宇宙兩端的世界。
在那個(gè)遺忘的世界里的一切是另外一端的人無法想象,對于城里人來說讀書是一件多么容易的事,當(dāng)然也有很困難的,比如雙下崗職工,但要是和農(nóng)村的很多人來說,那算什么。
對于這個(gè)概念,城里可以說我想讀就一定能讀,可對于宇宙的另一端來說,可能并不沒得選。
這幾天關(guān)于"北大不招不孝子"的事弄的沸沸揚(yáng)揚(yáng),有支持有反對的。特別是看了一篇文章,把孔子的"有教無類"都拿出來說北大的這個(gè)舉措令人很受傷,真的很無語。世界不同了,當(dāng)初孔老先生說這句話的前題就是人的品德要好,才是有教無類。
連父母都不孝順,還能對社會(huì)負(fù)責(zé),有疑問。
時(shí)下教育,一切以分為準(zhǔn),忽視道德教育。這種教育制度已經(jīng)對人對社會(huì)進(jìn)行了錯(cuò)誤的引導(dǎo),做為文明的基石---我們的教育機(jī)構(gòu),北大為我們做出了表率。雖然社會(huì)道德并非教育機(jī)構(gòu)一力能為,但教育的引導(dǎo)是有決定性的作用。
誰能說現(xiàn)在唯利是圖,不擇手段,和以往所有教育(文化,社會(huì))無關(guān)。