<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Tin's Blog

    You are coming a long way, baby~Thinking, feeling, memory...

      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      128 隨筆 :: 0 文章 :: 221 評論 :: 0 Trackbacks

    Other Project

    posted @ 2007-01-26 14:37 Tin 閱讀(1918) | 評論 (2)  編輯

         摘要: 說說遺憾:
    1、OSGi在B/S架構(gòu)中還不好應(yīng)用。雖然例子是B/S的,可是居然是Servlet模型,里面解釋了目前Equinox項(xiàng)目也在擴(kuò)展應(yīng)用服務(wù)器支持和JSP支持等,可是起碼目前還不成熟。
    2、模塊的粒度很成問題。目前OSGi的契約機(jī)制與java interface機(jī)制對比一下。OSGi不可能完全取代本地的interface式的解藕,當(dāng)然人家也沒這么說。只使我擔(dān)心過渡設(shè)計(jì)后,過細(xì)的Bundle肯定會得不償失,所以需要有人設(shè)計(jì)/計(jì)劃這個粒度。這個可能與基于Web services的SOA架構(gòu)面臨類似的問題,需要好的架構(gòu)師。
    3、文檔不友好么?說實(shí)話,很感謝BlueDavy和OSGi觀察者那些大牛的貢獻(xiàn)。但是感覺production的樣例工程還是很難搞到(其實(shí)Eclipse plugins的例子滿多哈,可惜沒啥文檔,需要硬著頭皮看),對應(yīng)的指導(dǎo)文檔還沒出現(xiàn)。BlueDavy提供的servlet實(shí)現(xiàn)我們不可能跟上,畢竟簡單也是一種需求。(那誰說過度設(shè)計(jì)比設(shè)計(jì)不足更可怕,那個我不是唱反調(diào),我希望我們都能找到那個sweet point,有個好的參照那最好不過了)。 <  閱讀全文
    posted @ 2006-09-06 11:27 Tin 閱讀(4254) | 評論 (2)  編輯

         摘要: 先分析一下在輕量化的Java EE下面他們存在的意義:
    1、有的人說過在Web項(xiàng)目中Manager和DAO是同意的,尤其是在透明ORM存在下,DAO由于往往是CRUD的實(shí)現(xiàn)場所,而Manager卻往往是薄薄的一層門面,很多人就在質(zhì)疑兩者的合并問題。可是robbin曾經(jīng)進(jìn)行過一個精辟的分析,雖然兩者做的看起來差不多,可是兩者的事務(wù)屬性卻不一樣,Manager應(yīng)該有清晰的事務(wù)界限,而DAO不應(yīng)關(guān)心于此。也就是說Manager可能會將幾個DAO方法組合調(diào)用,然后封裝在一個事物中。這樣說明確了兩者的一個重要區(qū)別,我們也能體會在使用聲明事務(wù)的時候有一個分明的事務(wù)界限是很有意義的,否則就有可能把Manager中的一個事物拆分,這樣實(shí)際上就錯誤了。
    2、有些人質(zhì)疑透明ORM存在的情況下DAO存在的意義,因?yàn)橥该鱋RM基本已經(jīng)隔離了不同數(shù)據(jù)庫的方言區(qū)別。這個也很簡單,Rod大叔分析過。透明ORM存在的情況下DAO起到了隔離透明ORM與EJB或者JDBC實(shí)現(xiàn)的作用,這幾種實(shí)現(xiàn)實(shí)際上是應(yīng)該考慮到的。
    3、還有一個問題,就是DAO是否應(yīng)該隱藏透明ORM的API。因?yàn)榍懊嬲f到了DAO起  閱讀全文
    posted @ 2006-09-05 21:52 Tin 閱讀(3646) | 評論 (3)  編輯

         摘要: 在Eclipse里面運(yùn)行functional-test這個target的時候發(fā)現(xiàn)報(bào)錯(test target葉出錯的):
    Could not create task or type of type: junit.
    我就想當(dāng)然的把junit-3.8.1.jar拷貝到我的%ANT_HOME%/lib下面了,結(jié)果問題依舊。
    ......
    解決方法目前看最好的就是在Eclipse的Window->Preferences->Ant->Runtime->Classpath里面Ant_Home你指定一下就可以了,可以是你自己的Ant或者Eclipse/plugins里面的ant,這沒關(guān)系,然后它就會自動掃描相應(yīng)/lib目錄了(之前你應(yīng)該已經(jīng)把junit-3.8.1.jar拷貝過去了)。
    然后就搞定了。注意,只有在Eclipse運(yùn)行Ant才有可能遇上這個問題:D
      閱讀全文
    posted @ 2006-08-31 13:02 Tin 閱讀(1489) | 評論 (0)  編輯

         摘要: 今天先看看Springside的bookstore的domain設(shè)計(jì),這不是springside的重點(diǎn),先看看。
    從hbm看起,在springside-bookstore/src/org.springside.bookstore.commons.domain.hbm下面放著這些hbm。
    在Order.hbm.xml里面可以看到一個list映射。list映射可以按照順序持久化one-to-many關(guān)系。使用了映射后OrderItem就沒有單獨(dú)的class聲明了,完全以一種組件的形式被映射到Order里面。  閱讀全文
    posted @ 2006-08-30 12:30 Tin 閱讀(2450) | 評論 (3)  編輯

         摘要: 1、Java從語言轉(zhuǎn)向平臺。如同.Net,JVM本身提供了平臺的抽象。將會擴(kuò)展動態(tài)語言與腳本語言的支持。
    2、企業(yè)應(yīng)用的開發(fā)過程將簡化,如MDD一類,但目的是集中精力開發(fā)商業(yè)邏輯,而不是純簡化代碼或者什么什么。小型應(yīng)用可能會轉(zhuǎn)向動態(tài)語言或腳本語言所營造的舒適開發(fā)框架,如RoR,或其它Rails。
    3、富領(lǐng)域模型替代貧血模型,基于JPA。
    4、目前的AOP、IoC工具依然會流行,而不一定會限定于EJB3模型中。事實(shí)說了算,Spring這種事實(shí)性標(biāo)準(zhǔn)影響力還是很大的。
    5、分布式的考慮,可伸縮型問題凸顯。如何透明實(shí)現(xiàn)分布式是個關(guān)鍵性問題,AOP是技術(shù)契機(jī)。
    6、Web2.0會產(chǎn)生巨大影響力,但Java絕不是唯一選擇。Java要找好自己的位置,同時在平臺上最好能夠更多的融合,如讓JVM支持PHP/Ruby/Python。
    7、Web部分競爭激烈,并會持續(xù)。EJB3的JSF命運(yùn)難測。看Web2.0的浪潮了。  閱讀全文
    posted @ 2006-07-10 14:09 Tin 閱讀(1907) | 評論 (2)  編輯

         摘要: 這是擦拭法的本意。
    實(shí)際上BadClass()實(shí)例化以后Class里面就不包括T的信息了,對于Class而言T已經(jīng)被擦拭為Object。而真正的T參數(shù)被轉(zhuǎn)到使用T的方法(或者變量聲明或者其它使用T的地方)里面(如果沒有那就沒有存根,這里指ParameterizedTyp),所以無法反射到T的具體類別,也就無法得到T.class。
    而getGenericSuperclass()是Generic繼承的特例,對于這種情況子類會保存父類的Generic參數(shù)類型,返回一個ParameterizedType,這時可以獲取到父類的T.class了,這也正是子類確定應(yīng)該繼承什么T的方法。
    我們應(yīng)該利用這種特性,這對實(shí)現(xiàn)模版方法非常有用。  閱讀全文
    posted @ 2006-05-08 21:37 Tin 閱讀(2574) | 評論 (3)  編輯

         摘要: 為我們的項(xiàng)目寫的一個輕量的分頁API。目的在于將分頁與數(shù)據(jù)查詢的邏輯完全剝離。我以前看過robbin發(fā)的通過detachedCriteria實(shí)現(xiàn)的分頁那片貼子,里面把分頁和數(shù)據(jù)查詢結(jié)合在一起了。而我覺得分開更輕量,而且替換也比較容易。但是這個實(shí)現(xiàn)中有一個反模式,在邏輯中生成了代碼,無奈之選,為了簡便。其中字符生成可以自己擴(kuò)展i18n實(shí)現(xiàn),應(yīng)該非常容易。
    分頁實(shí)現(xiàn)的接口:  閱讀全文
    posted @ 2006-03-31 12:30 Tin 閱讀(3487) | 評論 (6)  編輯

         摘要: 這是一篇很有趣的文檔,所以摘要一下,其實(shí)類似閱讀筆記,好像是3/25發(fā)布的:
    這時基于對以下人的采訪:
    JSF Jacob Hookom
    RIFE Geert Bevin
    Seam Gavin King
    Spring MVC Rob Harrop
    Spring Web Flow Rob Harrop and Keith Donald
    Stripes Tim Fennell
    Struts Action 1 Don Brown
    Tapestry Howard Lewis Ship
    Trails Chris Nelson
    WebWork Patrick Lightbody
    Wicket Eelco Hillenius
    里面問了每個框架的人6個相同的問題,很好的體現(xiàn)了各個Web框架的不同之處。如果配合Rod Johnson的J2EE Development Without EJB等書中對Web MVC的闡述會更加深刻的理解各種框架的思想和使用場合。我閱讀后很有收獲,所以將全文摘  閱讀全文
    posted @ 2006-03-30 16:28 Tin 閱讀(3200) | 評論 (0)  編輯

         摘要: BJUG的Cleverpig說起Stripes,正好前兩天在TSS上看到Simon Brown的Blog,對它有點(diǎn)感性認(rèn)識,所以今天就看了一下,說些粗陋的感受:
    皮毛上的觀感:
    1、使用Annotation配置。將Action影射、返回View、默認(rèn)Command注冊、是否驗(yàn)證這些東西都通過Annotations搞,挺有意思。
    2、它也包裝了自己的Tag,Tag從感官上感覺很像WebWork的風(fēng)格(估計(jì)Stripes也是過這個來實(shí)現(xiàn)bind,和Spring MVC相同吧,不過沒仔細(xì)看Stripes的bind方式)。但是它好像很方便與JSTL共用,所以我覺得它可能和Spring MVC類似,把變量拷貝到request里面,而不是WebWork那樣的VlueStack。
    3、它的Validation很Cool,用Annotation設(shè)定Validation相當(dāng)舒適。
    4、它里面的event似乎挺有意思,也就是說一個Action可以對應(yīng)多個method,它管它叫Event。現(xiàn)在WebWokr和Spring MVC對這都有支持,但是Annotation帶  閱讀全文
    posted @ 2006-03-22 21:36 Tin 閱讀(1452) | 評論 (0)  編輯

         摘要: 根據(jù)生日計(jì)算年齡可以通過Calendar實(shí)現(xiàn)。最簡單可以考慮get(Calendar.DAY_OF_YEAR)來簡單修正年齡,但是遇到生日在閏年的2月29之后,或者今年是閏年的2月29之后可能出現(xiàn)計(jì)算不準(zhǔn),誤差一天。所以還是老實(shí)判斷年月日好了。
    public static int getAge(Date birthDay) throws Exception {
    Calendar cal = Calendar.getInstance();

    if (cal.before(birthDay)) {
    throw new IllegalArgumentException(
    "The birthDay is before Now.It's unbelievable!");
    }

    int yearNow = cal.get(Calendar.YEAR);
    int monthNow =   閱讀全文
    posted @ 2006-03-10 10:00 Tin 閱讀(2613) | 評論 (0)  編輯

    posted @ 2006-02-16 21:10 Tin 閱讀(2965) | 評論 (3)  編輯

    主站蜘蛛池模板: 亚洲日韩乱码中文字幕| 亚洲国产中文在线二区三区免| 亚洲精品成人网站在线观看 | 成人免费无码精品国产电影| 免费一看一级毛片| 亚洲综合熟女久久久30p| 久久亚洲国产成人精品性色| 亚洲精品二三区伊人久久| 国产精品亚洲а∨无码播放麻豆| 大片免费观看92在线视频线视频| 久久国产乱子伦精品免费强| 免费可以在线看A∨网站| 免费A级毛片无码A| 亚洲韩国—中文字幕| 亚洲精品蜜夜内射| 中文精品人人永久免费| 成人女人A级毛片免费软件| 亚洲高清无码在线观看| 亚洲综合一区二区精品导航| 亚洲熟妇AV一区二区三区宅男| 一级毛片免费在线观看网站| 最近中文字幕2019高清免费| 国产美女精品久久久久久久免费| 亚洲综合伊人久久综合| 亚洲人成www在线播放| 亚洲一级片免费看| 成年在线观看网站免费| 久久亚洲中文字幕精品一区| 亚洲另类图片另类电影| 久青草国产免费观看| 国产成人精品免费视| 久久久婷婷五月亚洲97号色| 亚洲欧洲国产精品你懂的| 久久精品国产精品亚洲精品| 亚洲Aⅴ在线无码播放毛片一线天| 最近中文字幕mv免费高清在线| 免费在线观看日韩| 亚洲人成色777777精品| 国产午夜无码精品免费看| 日本特黄a级高清免费大片| 亚洲国产一区二区三区青草影视|