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

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

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

    MDA/MDD/TDD/DDD/DDDDDDD
    posts - 536, comments - 111, trackbacks - 0, articles - 0
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    1,oracle的blob的InputStream讀過一次后,再執行reset時就會報錯。而上傳的附件的inputstream就不會。
    java.io.IOException: Mark invalid or stream not marked.
    ?? ?at oracle.jdbc.driver.OracleBlobInputStream.reset(OracleBlobInputStream.java:267)
    2,
    InputStream s = new BufferedInputStream(new FileInputStream("c:\\test"));
    BufferedInputSream是可以使用mark及reset方法,使用上述的嵌套方法間接的使其它的stream也支持這些方法了。
    3,以下代碼有漏洞
    public?Object?readObject(File?file)
    ????{
    ????????Object?o?
    =?null;
    ????????
    if?(file.exists())
    ????????{
    ????????????FileInputStream?fis?
    =?null;
    ????????????ObjectInputStream?ois?
    =?null;
    ????????????
    try
    ????????????{
    ????????????????fis?
    =?new?FileInputStream(file);
    ????????????????ois?
    =?new?ObjectInputStream(fis);
    ????????????????o?
    =?ois.readObject();
    ????????????}
    ????????????
    catch?(Throwable?e)
    ????????????{
    ????????????????e.printStackTrace();
    ????????????}
    ????????????
    finally
    ????????????{
    ????????????????
    if?(fis?!=?null)
    ????????????????{
    ????????????????????
    try
    ????????????????????{
    ????????????????????????fis.close();
    ????????????????????}
    ????????????????????
    catch?(IOException?e)
    ????????????????????{
    ????????????????????????e.printStackTrace();
    ????????????????????}
    ????????????????}
    ????????????}????????????
    ????????}
    ????????
    return?o;
    ????}

    在IO的編程中一定要保存基本流的引用

    posted @ 2008-03-27 17:26 leekiang 閱讀(514) | 評論 (0)編輯 收藏

    1,Field.Store與Field.Index
    ? Field.Store.COMPRESS:用壓縮的格式存儲最初的Field值
    ? Field.Store.NO:不存儲該Field的原始值
    ? Field.Store.YES:存儲該Field的原始值

    ? Field.Index.NO:不索引Field的值
    ? Field.Index.NO_NORMS:
    ? Field.Index.TOKENIZED:作分詞處理
    ? Field.Index.UN_TOKENIZED:不分詞,直接作為完整的信息段檢索,可以支持全匹配和相似匹配,跟數據庫中的like很類似。

    2,實現Filter接口
    ????public?BitSet?bits(IndexReader?reader)?throws?IOException?{
    ????????
    final?BitSet?bits?=?new?BitSet(reader.maxDoc());//?默認所有都為false
    ????????
    //?設置所有的都不能檢索到
    ????????
    //?bits.set(0,?bits.size()?-?1,?false);
    ????????bits.set(3,?true);
    ????????bits.set(
    4);//設置為true
    ????????int[]?docs?=?new?int[1000];
    ????????
    int[]?freqs?=?new?int[1000];
    ????????TermDocs?termDocs?
    =?reader.termDocs(new?Term("title",?"測試"));
    ????????
    int?count?=?termDocs.read(docs,?freqs);//
    ????????for?(int?i?=?0;?i?<?docs.length;?i++)?{
    ????????????System.out.println(docs[i]
    +"--"+freqs[i]);
    ????????????bits.set(docs[i]);
    ????????}
    ????????
    return?bits;
    ????}

    3,Term t = new Term("content", "電力");
    ? Query query = new TermQuery(t);
    ? 以上搜不到結果.原因是"電力"不是一個Term,用"電"或"力"則可以。

    4,reader.terms()返回索引中的所有term,沒有重復。而TermDocs存放term關聯的Doc
    TermEnum?enumerator?=?reader.terms();
    while?(enumerator.next())?{
    Term?term?
    =?enumerator.term();
    System.out.println(term.field()?
    +?"?"?+?term.text());
    }

    5,lucene不支持中文的*? ?匹配 ?
    ? 因為英文是基于詞的, 中文是基于字的 ?
    ? 英文mo?ey可以匹配到money ,因為money是一個term,? 中文怎么辦?除非中文有個好的分詞方案
    6,兩次過濾后,query對象的tostring:
    filtered(filtered(title:oracle content:oracle)->com.lucene.search.PrivilegeFilter@133d0fc)->com.lucene.search.CategoryFilter@dd5415
    7,Hyper Estraier是一個用C語言開發的全文檢索引擎,
    具有高速度,高穩定性,高可擴展性?提供java,ruby的調用方法
    <迅速搭建全文搜索平臺——開源搜索引擎實戰教程>
    http://www.162cm.com/archives/date/2007/07/18

    8,Hits hits = searcher.search (filteredquery, new Sort("fieldname"));//可根據第二個參數進行排序
    int n=hits.id(2)? //參數是在hits中的下標,返回的結果是在過濾和排序之前在directory中的原始下標

    9,
    new一個BitSet(950)并不等于建立一個950大小的bs
    只是說構建出來的bs初始大小至少能容納950個bit,大小永遠是系統控制的。而且他的大小是64的倍數,就算BitSet(1),他的大小也是64。
    bitset.set(1, 4) 設置的是1,2,3,沒有4

    10,對Field再進行切詞就是Term?Term和Token的區別

    11,BooleanQuery的例子:
    ????? BooleanQuery bq = new BooleanQuery();
    ??? ? Query q1 = new TermQuery (new Term ("field", "one"));
    ??? ? Query q2 = new TermQuery (new Term ("sorter", "b"));
    ??? ? bq.add(q1, Occur.MUST);
    ??? ? bq.add(q2, Occur.MUST);
    ??? ? Hits hits = searcher.search(bq);
    ??? ?
    ?12,可用RAMDirectory作測試,見lucene自帶的測試
    ??? RAMDirectory directory = new RAMDirectory();
    ??? IndexWriter writer = new IndexWriter (directory, new WhitespaceAnalyzer(), true)
    ???
    13,進行過濾時如果有多個filter,則某個doc是否能查到取決于這多個filter各自返回的bitset的綜合結果:要查得某一位置的doc,所有的filter的該位必須全部為true。所以查詢結果與filter的先后順序無關。

    14,--按user為tom進行過濾
    ??? Filter f1 = new Filter() {
    ??? ??? ??? public BitSet bits(IndexReader reader) throws IOException {
    ??? ??? ??? ??? BitSet bitset = new BitSet(reader.maxDoc());
    ??? ??? ??? ??? TermDocs termDocs = reader.termDocs();// 實際是SegmentTermDocs
    ??? ??? ??? ??? Term term = new Term("user", "tom");
    ??? ??? ??? ??? termDocs.seek(term);//相當于持有了所有含有user為tom的doc的集合,但freq()和doc()還需要去文件中讀取?
    ??? ??? ??? ??? while (termDocs.next()) {
    ??? ??? ??? ??? ??? System.out.println("freq:"+termDocs.freq());
    ??? ??? ??? ??? ??? bitset.set(termDocs.doc());
    ??? ??? ??? ??? }
    ??? ??? ??? ??? return bitset;
    ??? ??? ??? }
    ??? ??? };

    15,Trie,又稱單詞查找樹,是一種特殊的樹形結構,用于保存大量的字符串。它的優點是:利用字符串的公共前綴來節約存儲空間。
    http://www.javaeye.com/topic/299826

    16,
    doc相當于表中的記錄
    field相當于字段
    不同的doc可能有相同的field,也可能有不一樣的
    我感覺比較適合用json格式存儲
    field+分詞的關鍵字=term,是唯一的
    term出現在哪些doc中,索引文件里有記載?
    用Luke(http://code.google.com/p/luke)可以查看索引文件詳細信息
    ?

    posted @ 2008-03-27 16:15 leekiang 閱讀(854) | 評論 (0)編輯 收藏

    http://www.cnblogs.com/bysshijiajia/archive/2008/01/24/1051317.html
    http://hi.baidu.com/myj2ee/blog/item/2a6b2f1b110c3c1d8618bfb8.html

    posted @ 2008-03-21 13:56 leekiang 閱讀(317) | 評論 (0)編輯 收藏

    1,tag1.1與1.2的標記不一樣,例如前者的tagclass,后者為tag-class,1.2支持描述,但有時候要去掉描述才能運行
    2,可以不必在web.xml里寫映射,直接在jsp中<%@ taglib uri="/WEB-INF/mytld.tld" prefix="my"%>
    ?JSP 1.2 (or higher)容器啟動時能自動發現jar包的META-INF目錄下的tld文件,
    所以tld文件既不需要放到/WEB-INF下也不需要在web.xml中定義了。
    直接這樣寫:
    <%@ taglib uri="http://www.extremecomponents.org" prefix="ec" %>
    其中的"http://www.extremecomponents.org"是tld文件的<uri>標記里的值。

    3,嵌套標簽的父標簽必須繼承BodyTagSupport,而且要<body-content>jsp</body-content>
    4,rtexprvalue的全稱是Run-time Expression Value, 它用于表示是否可以使用JSP表達式.
    ??????????? <my:btn name="sf" tips="<bean:write name='ts'/> " />
    ?? ??? ??? ?<my:btn name='<%=new String("ssssssssssssssss") %>' />
    ?? ??? ??? ?<my:btn name='<%=(String)pageContext.getAttribute("ts")%>' />
    ? 屬性值可用單引號,注意單雙引號必須錯開,不能全是單引號,也不能全是雙引號;
    ? 如果屬性為String類型,那么傳過來的對象必須造型為字符串
    5,如何支持EL表達式

    解析日志文件插入數據庫(Java如何設計可以獲得高性能)
    perl,awk,load data,這種數據量還不算大,億條日志都不成問題。
    一萬條?這個數據量根本談不上大,用perl或者直接awk搞個shell腳本,弄到crontab里每天晚上跑就不就完了,這種活java干起來煩

    posted @ 2008-03-21 13:18 leekiang 閱讀(359) | 評論 (0)編輯 收藏

    如何選擇開源項目進行Flash項目開發?

    PureMVC的十個小提示

    PureMVC框架概述與UML視圖

    構建Flex應用的10大誤區

    摘葉飛花,俱可傷敵

    開源開發框架展現出Flex平臺的發展勢頭

    Open Source Flex Development Framework

    http://topic.csdn.net/u/20080108/14/dbe6b210-1e6f-449b-964e-7cd4ddbeb884.html


    MultiPowUpload? 一個flash的多文件上傳工具
    http://www.element-it.com/Downloads.aspx
    示例見:
    http://multipics.net/

    從零開始學習Flex里面的組件Tour de Flex on Web


    1377-4364-8105-1017-5779-4100
    1377-4864-2155-4708-3713-2066
    1377-4561-2389-2527-0543-9076
    1377-4167-2588-8404-4842-4168
    1377-4469-0634-7084-5700-9553?

    posted @ 2008-03-18 21:09 leekiang 閱讀(438) | 評論 (0)編輯 收藏

    #808080 作背景,有透明效果

    css顏色代碼對照

    posted @ 2008-03-18 16:38 leekiang 閱讀(213) | 評論 (0)編輯 收藏

    http://www.tkk7.com/RongHao/archive/2006/08/29/66389.html
    http://www.tkk7.com/RongHao/category/20773.html
    一個基于RBAC模型的通用權限管理系統的域模型類圖http://www.javaeye.com/topic/176508
    http://blog.csdn.net/gisfarmer/archive/2009/01/22/3849659.aspx

    五一巨獻:OAuth Actionscript3 Class Library


    Apache Shiro Integration for Grails


    其實,你把Acegi的Role理解為Permission就好了。 然后在此之上建立自己的Business Role/Group,那么關系就會變成:
    User(1) <-> Role/Group(n) ?用戶與角色1對多
    Role/Group(1) <-> ?Permission/Acegi Role(n) 角色與權限1對多。
    這樣就重新回到傳統的RBAC模型了。
    總之,不要局限于Acegi的“Role”這個詞了,把它就看成Permission, 你會豁然開朗!
    見http://groups.google.com.hk/group/grailsunion/browse_thread/thread/6cf3ae5f5f0a7256#

    posted @ 2008-03-18 00:30 leekiang 閱讀(428) | 評論 (0)編輯 收藏

    http://www.openjacob.org/draw2d/single/YahooUI_integration/index.html
    http://www.javaeye.com/post/364175?page=1
    http://www.huachuangpower.com/product/product1.htm

    開源的
    bonita? http://wiki.bonita.objectweb.org/xwiki/bin/view/Main/WebHome
    swamp?? http://swamp.sourceforge.net
    obpm??? http://sourceforge.net/projects/obpm/

    http://www.mxgraph.com/demo.html.?? nb

    posted @ 2008-03-18 00:12 leekiang 閱讀(1156) | 評論 (0)編輯 收藏

    1,ImageMagick一個優秀的圖像處理軟件,JMagick是對ImageMagick的JAVA面向對象化包裝
    2,? *
    @see?????? #create(int, int, int, int)
    ?? * @see?????? Component#getGraphics()
    3,Process Monitor 查看IO操作
    http://technet.microsoft.com/zh-cn/sysinternals/bb896645(en-us).aspx
    http://www.tkk7.com/tacy/archive/2007/09/20/146771.html
    4,
    做項目時碰到要查詢和統計海量數據,所以想到了Hadoop,但同事反映Hadoop的性能不穩定,處理離線數據還行,處理實時數據就不保險了。又看了看其它的分布式文件系統,比如mogilefs、lustre等,它們只能分布式存儲文件,不能分布式計算,換句話說:它們只能分攤IO,不能分攤CPU。最后決定離線數據還是用Hadoop。原文

    4,凡是方框的都是字體沒設成中文字體.
    凡是問號的都是轉碼不對

    5,jchardet
    自動探測字符集編碼
    http://blog.csdn.net/ycl111/archive/2006/12/20/1450039.aspx

    6, netbeans中文版切換英文日文
    "C:\Program Files\NetBeans 6.1\bin\netbeans.exe" --locale en:US
    "C:\Program Files\NetBeans 6.1\bin\netbeans.exe" --locale ja:JA
    ???

    posted @ 2008-03-15 02:43 leekiang 閱讀(256) | 評論 (0)編輯 收藏

    注意用poi解析器從word中抽取文本后,輸入流會關閉,原因如下:
    InputStreams passed to POIFSFileSystem are now automatically closed. A warning is generated for people who might've relied on them not being closed before, and a wrapper to restore the old behaviour is supplied(POI-DEVELOPERS)
    據說在POI3.0.3會修正該問題。

    1,poi格子里的文本如何換行
    ? 加"\n",同時設置style.setWrapText(true);
    ?
    2,style.setFillForegroundColor(HSSFColor.GREY_25_PERCENT.index);
    ?style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
    ?設置前景色,有半透明的效果
    ?
    3,sheet.addMergedRegion(new Region(0, (short) 0, 0, (short) 1));// 起始cell行、起始cell列、結束cell行、結束cell列。
    ?? 被合并了的單元格不需要生成。
    ?? 單元格合并後設置邊框只在原第一個上有效,如果想應用的合并後的整體,則需要一個個的Create出單元格并應用樣式,這個明顯是一個不太方便的操作,期待POI下一版的改進了
    ?? 注意行是y軸,列是x軸。
    ?? poi-contrib下的HSSFRegionUtil可以設置合并區域的邊框的顏色和樣式
    例如:HSSFRegionUtil.setLeftBorderColor(HSSFColor.BLACK.index,row,sheet,wb);

    4,sheet.createFreezePane(2, 1);
    ? 凍結窗口,左上角為行參和列參的起始處,從0開始
    ?
    5,列寬sheet.setColumnWidth((short) 0, (short) (35.7 * 110));//第一個參數為列的下標,110為想設置的寬度像素。
    ? http://www.cnblogs.com/interboy/archive/2007/08/27/872028.html

    6,行高row.setHeight((short) (15.625 * 100));//100為要設置的行高的像素
    ?? row.setHeightInPoints((short)100);//應該可以達到同樣的效果

    7, POI將註解的部分,視做一個文字方塊,我們可以設定它的大小及內容,然後將之指定給某特定的Cell。
    節錄部分Code如下:
    HSSFPatriarch patr = sheet.createDrawingPatriarch();
    HSSFComment comment = patr.createComment(new HSSFClientAnchor(0, 0, 0, 0, (short)4, 2, (short) 8, rowCount));
    HSSFRichTextString str = new HSSFRichTextString("TEST");
    comment.setString(str);
    comment.setAuthor("TEST");
    cell.setCellComment(comment);

    8,sheet的中文名
    workbook.setSheetName(0,"統計",(short)1);//第三個參數為編碼方式,HSSFWorkbook.ENCODING_UTF_16=1
    sheet的名稱不允許出現重復。

    9, 先定義一個基本樣式,再復制樣式的屬性。不知何故不能clonebean
    ? HSSFCellStyle headerStyle = workbook.createCellStyle();
    ? PropertyUtils.copyProperties(headerStyle, baseStyle);//

    10, 輸出,中文名
    ??????? response.reset();
    ?? ??? ?response.setContentType("applicationnd.ms-excel");
    ?? ??? ?response.addHeader("Content-disposition",
    ?? ??? ??? ??? ?"attachment;filename="+new String("統計".getBytes("GBK"), "ISO-8859-1")+".xls");
    ?? ??? ?ServletOutputStream out = response.getOutputStream();
    ?? ??? ?workbook.write(out);
    ?? ??? ?out.flush();
    ?? ??? ?out.close();

    11,cell.setCellValue(new HSSFRichTextString("測試"));
    在poi2.5.1里不管用,只能用cell.setCellValue("測試");
    忘了二者有何區別

    12,直接用workbook.getBytes()得到的文檔內容的結構是有問題的,會導致打開xls時報錯。
    ByteArrayOutputStream bos = new ByteArrayOutputStream();
    workBook.write(bos);
    //ByteArrayInputStream is = new ByteArrayInputStream(workBook.getBytes());//錯誤
    ByteArrayInputStream is = new ByteArrayInputStream(bos.toByteArray());//正確
    詳見 http://numenzq.javaeye.com/blog/218816

    13,POI的老版本的下載地址:http://archive.apache.org/dist/jakarta/poi/release/bin

    14,每個sheet有65536的最大行數限制?
    ?? 數據量非常大時,拆分為多個sheet(每個1萬行)可顯著降低內存占用。
    ?? http://www.javaeye.com/topic/74835?page=3

    15,可用PropertyUtils.copyProperties(newStyle, baseStyle)把baseStyle的屬性拷貝到newStyle中,但Font等拷貝不了。(淺拷貝,深拷貝?)

    16,POI如何復制行,設置分頁符bug? 使用POI操作Excel的幾點注意事項
    和http://www.tkk7.com/liaojiyong/archive/2007/11/14/160588.html

    17,復制行,復制sheet
    http://zhidao.baidu.com/question/66868683.html
    http://www.aub.org.cn/J2SE/Article137612.html
    http://zhidao.baidu.com/question/42447398.html

    18,用HSSFCell的getCellType()只能判斷三種類型,返回值為int ? 0,1,2 ?
    ? numeric(0), ? formula(2) ? or ? string(1) ?
    ? 但是僅僅依靠這個有時候不能完全解決問題, ?
    ? 有時候需要用HSSFDataFormat來共同判斷: ?
    ??? cell.getCellStyle().getDataFormat()
    見http://poi.apache.org/apidocs/org/apache/poi/ss/usermodel/BuiltinFormats.html
    ? https://svn.apache.org/repos/asf/poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFDateUtil.java


    19,poi3.2把以下屬性或方法刪掉了:
    HSSFWorkbook.ENCODING_UTF_16
    cell.setEncoding
    所以還是繼續用poi3.0.2吧
    ?? ??? ?
    http://blog.csdn.net/impeller/archive/2007/10/29/1855368.aspx
    解析Excel注釋,填充并生成報表的一個例子
    http://hi.baidu.com/bluewhale84/blog/item/b9ebd5c295911130e4dd3bd0.html
    http://kevintuntun.bokee.com/2692649.html
    http://www.ccw.com.cn/htm/center/prog/02_10_22_2.asp
    http://llying.javaeye.com/blog/171455
    http://hi.baidu.com/fish1996/blog/item/71412181e9825bdabd3e1eed.html(toutf8string)
    poi的一個讓人失望的bug

    openxml4j支持excel2007


    posted @ 2008-03-14 22:26 leekiang 閱讀(4161) | 評論 (0)編輯 收藏

    僅列出標題
    共54頁: First 上一頁 38 39 40 41 42 43 44 45 46 下一頁 Last 
    主站蜘蛛池模板: 国产AV无码专区亚洲AV男同| 亚洲无线一二三四区手机| 亚洲国产成人久久综合碰碰动漫3d | 亚洲精品字幕在线观看| WWW国产成人免费观看视频| 亚洲成a人在线看天堂无码| 91av免费在线视频| 国产亚洲欧洲精品| 无码囯产精品一区二区免费| 亚洲无线电影官网| 99久久综合国产精品免费| 国产精品亚洲综合久久| 免费看少妇作爱视频| 色一情一乱一伦一视频免费看| 亚洲国产成人a精品不卡在线| 国产免费久久精品99久久| 亚洲国产女人aaa毛片在线 | 亚洲一区AV无码少妇电影☆| 99精品免费视频| 亚洲欧洲中文日产| 香蕉高清免费永久在线视频| 特级毛片在线大全免费播放| 亚洲精品蜜桃久久久久久| 亚洲一级免费视频| 国产精品亚洲精品久久精品 | 日本视频一区在线观看免费| 亚洲精品无码久久久久牙蜜区| 亚洲精品视频在线观看你懂的| 国产精品免费无遮挡无码永久视频 | 岛国片在线免费观看| 西西人体大胆免费视频| 亚洲an天堂an在线观看| 毛片a级毛片免费播放100| 国产精品无码永久免费888| 亚洲毛片基地日韩毛片基地| 国产男女猛烈无遮挡免费网站 | 久久电影网午夜鲁丝片免费| fc2免费人成在线视频| 亚洲av无码一区二区三区天堂古代| 国产自产拍精品视频免费看| 久久久免费的精品|