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

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

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

    Vincent Thinking

    All about Vincent's work and life

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      34 隨筆 :: 0 文章 :: 183 評論 :: 0 Trackbacks

    #

    public ? class ?ActionMapperFactory? {
    ????
    ????
    protected ? static ? final ?Log?LOG? = ?LogFactory.getLog(ActionMapperFactory. class );

    ????
    private ? static ? final ?HashMap?classMap? = ? new ?HashMap();

    ????
    public ? static ?ActionMapper?getMapper()? {
    ????????
    synchronized ?(classMap)? {
    ????????????String?clazz?
    = ?(String)?Configuration.get(WebWorkConstants.WEBWORK_MAPPER_CLASS);
    ????????????
    try ? {
    ????????????????ActionMapper?mapper?
    = ?(ActionMapper)?classMap.get(clazz);
    ????????????????
    if ?(mapper? == ? null )? {
    ????????????????????mapper?
    = ?(ActionMapper)?ObjectFactory.getObjectFactory().buildBean(clazz,? null );
    ????????????????????classMap.put(clazz,?mapper);
    ????????????????}


    ????????????????
    return ?mapper;
    ????????????}
    ? catch ?(Exception?e)? {
    ????????????????String?msg?
    = ? " Could?not?create?ActionMapper:?WebWork?will?*not*?work! " ;
    ????????????????LOG.fatal(msg,?e);
    ????????????????
    throw ? new ?RuntimeException(msg,?e);
    ????????????}

    ????????}

    ????}

    }


    明白的告訴我一下,謝謝. 覺的有點問題...
    posted @ 2006-05-31 22:55 Vincent Thinking 閱讀(1748) | 評論 (0)編輯 收藏

    為了通用,從頭到尾都是utf-8.

    而webwork中JakartaMultiPartRequest對于多編碼的處理并不如意.

    apache的fileupload對于上傳文件名為中文的需要首先指定HeaderEncoding的編碼.
    而webwork對于MultiPartRequest的request并沒有設置encoding編碼
    詳見DispatcherUtils.java中 387行

    ???????? if ?(encoding? != ? null ? && ? ! MultiPartRequest.isMultiPart(request))? {
    ????????????
    try ? {
    ????????????????request.setCharacterEncoding(encoding);
    ????????????}
    ? catch ?(Exception?e)? {
    ????????????????LOG.error(
    " Error?setting?character?encoding?to?' " ? + ?encoding? + ? " '?-?ignoring. " ,?e);
    ????????????}

    ????????}

    如果沒有指定HeaderEncoding, 那么默認采用request的encoding,如果request也沒有指定則采用系統的編碼.
    這里并沒有指定request的encoding,往往導致上傳文件的名字亂碼.

    自定義一個MultiPartRequest,設定一下就ok了


    對于同時提交的表單域(form)參數,由于在form中指定的enctype的關系,并不能直接用request.getParameter()才取, 只能通過FileItem.getString()的方式.這里也是上面的問題, 取的CharacterEncoding是request中的,由于webwork的原因不一致.同樣需要指定一下.

    這樣form和上傳同時提交,參數,附件名都正常了 :)
    posted @ 2006-04-25 18:24 Vincent Thinking 閱讀(1384) | 評論 (2)編輯 收藏

    打開你的firefox, 輸入:

  • about:
  • about:config
  • about:credits
  • about:buildconfig
  • about:cache
  • about:plugins
  • about:mozilla

    以前還真沒有注意到.:)

  • posted @ 2006-04-20 21:46 Vincent Thinking 閱讀(350) | 評論 (0)編輯 收藏

    ZK 一個開源的ajax web框架,基于事件驅動的組件,通過標記語言來設計組件來簡化開發人員的工作。顯著的一個特點是使用類似XUL的標記語言來定義組件。

    其實我對這種類似桌面的開發方式來開發web程序一點都不感冒,因為封裝的東西太多,勢必影響擴展性。而且對應的社區也很少,很多因素影響。

    一個企業應用對于框架,技術并不是最重要的,需求和人員的素質等等因素也是很制約的。 很多開源的東西,在我看來只是 “看起來很美!” 回過來說zk,能以這種方式來開發也許能給我們很多啟發。
     
    有興趣的可以去看看:
    zk http://zk1.sourceforge.net/
    posted @ 2006-03-14 21:40 Vincent Thinking 閱讀(4106) | 評論 (2)編輯 收藏

                                                                         HSQLDB簡介 
                                                                         

    Vincent 2006年2月24日
     
    一 什么是HSQLDB? 
            HSQLDB是一個用java編寫的關系型數據庫,它支持ANSI-92 SQL (BNF tree format) plus SQL 99 and 2003 enhancements. 它提供了一個非常小而快速的數據庫引擎,同時提供了相關的JDBC驅動和一些實用的工具。
     
             最新的HSQLDB版本為1.8.0 ,經過了1年的開發,和1.7.2相比,1.8.0的功能更加強大, 對數據庫的容量支持達到了8GB,性能也更加出色。和當年相比,HSQLDB已經不僅僅很多人眼里的玩具,完全可以勝任商業的需求。(OpenOffice.org 2.0的數據庫引擎為HSQLDB1.8.0)
     
    這里有一張數據庫的performance test對比圖(HSQLDB的性能遠遠超過其他的數據庫)
     


    二 HSQLDB介紹

     1.1 簡介


    hsqldb.jar 包含所有的組件(數據庫引擎,jdbc驅動, 數據工具), 不同的命令用來執行不同的組件。
    hsqldb.jar主要包含了一下組件: 

    HSQLDB RDBMS                數據庫引擎
    HSQLDB JDBC Driver          JDBC驅動
    Database Manager            管理工具
    Query Tool (AWT)            查詢工具
    Sql Tool (command line)     SQL工具


    1.2 運行工具(Running Tools) 

          所有的工具都以jar的方式來運行,下面的例子講運行AWT方式的DataBase Manager,我們假設hsqldb.jar位于../lib目錄中

     java -cp ../lib/hsqldb.jar org.hsqldb.util.DatabaseManager 

    Hsqldb工具的主類:

    org.hsqldb.util.DatabaseManager 
    org.hsqldb.util.DatabaseManagerSwing
    org.hsqldb.util.Transfer
    org.hsqldb.util.QueryTool 
    org.hsqldb.util.SqlTool 

    其中,DatabaseManager和SqlTool都可以有命令行參數,你可以用-?來察看它們有什么參數。DatabaseManager和Transfer都有圖形界面可以更好地交互。
     
    1.3 運行HSQLDB
     
    HSQLDB可以通過多種不同的方式來運行,通常把它分為Server模式和In-Process模式(也叫做Standalone模式),對于每種模式,Jar中都有相應的子程序來運行HSQLDB。
     
    每個HSQLDB數據庫包含2到5個命名相同但擴展名不同的文件組成,他們位于同一個目錄下。例如,名為“test”的數據庫包含了以下幾個文件: 

    test.properties
    test.script
    test.log 
    test.dat 
    test.backup

    properties文件包含了數據庫的基本配置,script文件包含了Table的定義和其他相關的數據對象,以及non-cached表的數據。log文件記錄了數據庫最近所做的更新。dat文件包含了cached表的數據,backup文件是上一次數據庫持久化后的壓縮備份文件,所有的這些文件都是最基本的,絕對不能刪除。如果你的數據庫沒有緩沖表(cached table),test.data和test.backup文件是不會存在。此外,HSQLDB數據庫可以鏈接到磁盤上任何地方任何格式的文本文件,比如CSV 列表。
     
    當"test"數據庫正在運行時,test.log文件用來記錄所有的操作記錄,"test.log"文件將在數據庫正常關閉(ShutDown)情況下自動刪除。否則(在非正常退出的時候),它將用來在下次啟動HSQLDB時恢復"test.log"中記錄的更新操作。"test.lck"文件也可以用來記錄數據庫是否被打開,它在HSQLDB正常退出的時候會被移除。有些情況下,HSQLDB會生成"test.data.old "文件,但隨后會被刪除掉。

    注意: 當HSQLDB引擎關閉數據庫的時候,它會產生擴展名為.new的臨時文件,然后會把這些文件重命名為上面所列出的文件的名稱。

    posted @ 2006-02-24 19:55 Vincent Thinking 閱讀(1944) | 評論 (1)編輯 收藏

    faint...
    posted @ 2006-02-20 09:45 Vincent Thinking 閱讀(259) | 評論 (0)編輯 收藏

    昨天研發中心項目組一起聚餐,聊起了軟件的發展問題。

    對于一個軟件公司,究竟是買軟件還是買服務? 買軟件做項目,必然要設計到軟件的開發定制,前期的投入是不可避免的,后期的維護成本也是很高的,客戶的需求是無止境的,往往上千萬的項目做下來卻是虧本的。 從另外一個角度來看,軟件究竟是什么? 在我看來,軟件就是一種特殊的服務,這里的服務不是指人的因素,而是機器,是軟件,用我們老大的話來講,用人去做服務一定是虧本的。

    心里也一直有一種設想,或許以后不再依靠出售軟件,做項目來生存,而是出售服務,尤其是基于bs結構的服務。想想google的email,BSP,RSS reader等等,或許很快在線的erp,在線的crm, oa,cms等等就會變成現實,當然這里很重要的一點就是要做到行業的標準,需要客戶來認同你,信任你。

    這里的情景很像現在的網游,我提供服務,你提供數據,數據集中存放,我提供個性化的定制,提供相關聯的信息(類似gmail中的廣告),針對特殊用戶做增值服務。

    看看37signal,一個人被很多人認為是一個很偉大的企業。我們好好思考一下,是不是應該做點什么?
    posted @ 2006-02-15 10:22 Vincent Thinking 閱讀(369) | 評論 (2)編輯 收藏

    圖形化的組件,讓人感覺又回到了vb時代,雖然不是很認同Echo2的機制,但是看到能以這樣的方式來做WEB,贊一個。^_^

    圖形組件庫,事件驅動機制,完全OO的UI的開發模式,再加上強大的EchoStudio,感覺一切都完美了很多。

    EchoStudio由于是商業軟件,有一定的試用期,最不爽的就是把以前的css完全用stylesheet來替代,可是竟然沒有看到相關的schema。只能用EchoStudio來做stylesheet,這不是逼著你買么? 沒辦法,只能crack了,反編譯了一下,暗自慶幸。嘿嘿,代碼竟然沒有混淆,很容易找到了驗證代碼。哈哈javassist2分鐘搞定。不過作為一個軟件開發人員,還是小小的BS一下自己.....
    posted @ 2006-02-10 14:31 Vincent Thinking 閱讀(2746) | 評論 (51)編輯 收藏

    由于下大雪,機場關閉。原定8:20的飛機,晚點到中午2點多才飛,害的我早上6點多就爬起來往機場趕。 瞌睡 Zzz...
    posted @ 2006-02-05 21:31 Vincent Thinking 閱讀(265) | 評論 (0)編輯 收藏

    WebWork 2.2 Released at January 11, 2006

    新版本是非常值得期待的.

  • Full support for Java 5 Annotations and Generics
  • Rich AJAX support using DWR and Dojo
  • New QuickStart tool makes development easier than ever
  • Tons more documentation with over 900 PDF pages!
  • Client side validation using AJAX or plain JavaScript
  • Built in support for Continuations
  • JSR168/Portlet support for several popular Portlet servers, including Pluto
  • Rich UI template framework with native support for JSP, FreeMarker, and Velocity
  • Native support for Spring and Pico IOC containers
  • More intelligent error reporting
  • Developer Mode makes building webapps even easier with improved error reporting
  • Simplified tag syntax
  • Advanced data binding framework that works with any object, including domain objects
  • 2.2版本是WebWork的一個新的里程碑, 接下來的主要精力將會投入到Struts Action Framework Version2.0

    posted @ 2006-01-12 11:09 Vincent Thinking 閱讀(867) | 評論 (2)編輯 收藏

    僅列出標題
    共4頁: 上一頁 1 2 3 4 下一頁 
    主站蜘蛛池模板: 亚洲免费在线视频| 亚洲最大黄色网站| MM1313亚洲精品无码久久| 一二三四在线播放免费观看中文版视频 | 免费无码毛片一区二区APP| 亚洲va国产va天堂va久久| 久久精品成人免费看| 亚洲精品无码午夜福利中文字幕| 国产高清对白在线观看免费91| 中文字幕亚洲乱码熟女一区二区| 久久国产乱子伦精品免费午夜| 亚洲精品国产成人片| 七色永久性tv网站免费看| 久久久亚洲欧洲日产国码是AV| 免费三级毛片电影片| 在线aⅴ亚洲中文字幕| 日本xxwwxxww在线视频免费| 免费视频成人国产精品网站| 国产啪亚洲国产精品无码| 国内精品久久久久影院免费| 亚洲视频一区网站| 四虎www成人影院免费观看| 三年片在线观看免费观看大全中国| 亚洲国产美女精品久久久久∴| 日韩内射激情视频在线播放免费 | 国产麻豆免费观看91| 一二三区免费视频| 亚洲黄网站wwwwww| 在线免费观看国产视频| 国产一二三四区乱码免费| 亚洲精品美女在线观看| 国产美女精品久久久久久久免费| 男女拍拍拍免费视频网站| 久久精品国产亚洲av水果派| 精品久久免费视频| baoyu116.永久免费视频| 亚洲二区在线视频| 国产成人亚洲精品91专区手机| 97免费人妻在线视频| 国产精品亚洲а∨天堂2021| 无码乱人伦一区二区亚洲一|