文章詳情頁
老虎身上的斑紋---正確使用JAVA1.5里的Annotation
瀏覽:97日期:2024-06-13 11:49:23
內(nèi)容: 像很多喜歡技術(shù)的人那樣,當(dāng)聽聞JDK1.5引入了.NET那樣的ANNOTATION時(shí),我的第一反應(yīng)就是驚喜--再也不用為在代碼中插入XDOC而感到別扭了。接下來就是搜腸刮肚地想要把以往那些可以用標(biāo)簽來實(shí)現(xiàn)的代碼剔除掉而換以標(biāo)簽方式的實(shí)現(xiàn),就像得到了一個(gè)渦輪增壓的發(fā)動(dòng)機(jī)急著想要淘汰掉老式的N/A引擎。但是由于比較忙~加之本人較懶,竟數(shù)月未曾做此嘗試。而在Java社區(qū),對于這個(gè)新的JAVA特性的褒貶也紛至沓來。其中TheServside網(wǎng)站上幾個(gè)牛人的觀點(diǎn)還是比較中肯的,我也比較認(rèn)同:首先,應(yīng)用=邏輯+數(shù)據(jù),邏輯最主要的構(gòu)成就是代碼,但是光是代碼還不夠,還要加上配置。這就像同是豐田的發(fā)動(dòng)機(jī)和意大利設(shè)計(jì)的外形,不同的排量和組裝,一個(gè)就是法拉利,一個(gè)就是東南菱帥。Annotation就是屬于配置范疇的概念。既然如此,那么XML與Annotation哪種配置方式更適合呢?這就像說.NET和JAVA哪個(gè)好一樣沒意義,要具體情況具體分析(說了等于沒說:p)。一般說來,與個(gè)別具體類相關(guān)的,用Annotation;設(shè)計(jì)時(shí),而運(yùn)行期不怎么改的配置,用Annotation,反之,經(jīng)常需要改的用XML;屬于類反射信息的,用Annotation,例如某些private static型變量;在概念范圍上有明確定義或?qū)僮饔玫模话阌肵ML;需要統(tǒng)一管理的,數(shù)量龐大的配置,用XML;最后可以歸結(jié)為:XML更像是配置。而Annotation,本身也是某種不可運(yùn)行的特殊代碼參與代碼本身的邏輯;或者是類的自描述,是類本身的構(gòu)成要素。但是,很多情況并不是非此即彼,很多灰色地帶就需要個(gè)人再去依情況使用。 Java, java, J2SE, j2se, J2EE, j2ee, J2ME, j2me, ejb, ejb3, JBOSS, jboss, spring, hibernate, jdo, struts, webwork, ajax, AJAX, mysql, MySQL, Oracle, Weblogic, Websphere, scjp, scjd 像很多喜歡技術(shù)的人那樣,當(dāng)聽聞JDK1.5引入了.NET那樣的ANNOTATION時(shí),我的第一反應(yīng)就是驚喜--再也不用為在代碼中插入XDOC而感到別扭了。接下來就是搜腸刮肚地想要把以往那些可以用標(biāo)簽來實(shí)現(xiàn)的代碼剔除掉而換以標(biāo)簽方式的實(shí)現(xiàn),就像得到了一個(gè)渦輪增壓的發(fā)動(dòng)機(jī)急著想要淘汰掉老式的N/A引擎。但
標(biāo)簽:
Java
相關(guān)文章:
1. CSS 使用Sprites技術(shù)實(shí)現(xiàn)圓角效果2. php字符串使用詳細(xì)了解3. 使用css實(shí)現(xiàn)全兼容瀏覽器的三角形4. .NET使用StackTrace獲取方法調(diào)用信息的代碼演示5. SSM框架JSP使用Layui實(shí)現(xiàn)layer彈出層效果6. 使用python tkinter開發(fā)一個(gè)爬取B站直播彈幕工具的實(shí)現(xiàn)代碼7. 使用python編寫一個(gè)語音朗讀鬧鐘功能的示例代碼8. python使用Word2Vec進(jìn)行情感分析解析9. python使用jenkins發(fā)送企業(yè)微信通知的實(shí)現(xiàn)10. Python使用pyenv實(shí)現(xiàn)多環(huán)境管理
排行榜
