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

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

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

    陌上花開

    遇高山,我御風而翔,逢江河,我凌波微波

       :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::

    #

    北冥有魚,其名為鯤。鯤之大,不知其幾千里也;化而為鳥,其名為鵬。鵬之背,不知其幾千里也;怒而飛,其翼若垂天之云 。是鳥也,海運則將徙于南冥。南冥者,天池也。《齊諧》者,志怪者也 。《諧》之言曰:“鵬之徙于南冥也,水擊三千里,摶扶搖而上者九萬里,去以六月息者也。”野馬也,塵埃也,生物之以息相吹也。天之蒼蒼,其正色邪?其遠而無所至極邪?其視下也,亦若是則已矣。且夫水之積也不厚,則其負大舟也無力。覆杯水于坳堂之上,則芥為之舟,置杯焉則膠,水淺而舟大也。風之積也不厚,則其負大翼也無力。故九萬里,則風斯在下矣,而后乃今培風;背負青天,而莫之夭閼者,而后乃今將圖南。蜩與學鳩笑之曰:“我決起而飛 ,搶榆枋而止,時則不至,而控于地而已矣,奚以之九萬里而南為?”適莽蒼者,三餐而反,腹猶果然;適百里者,宿舂糧;適千里者,三月聚糧。之二蟲又何知!小知不及大知,小年不及大年。奚以知其然也?朝菌不知晦朔,蟪蛄不知春秋,此小年也。楚之南有冥靈者,以五百歲為春,五百歲為秋;上古有大椿者,以八千歲為春,八千歲為秋,此大年也。而彭祖乃今以久特聞,眾人匹之,不亦悲乎?  湯之問棘也是已:“窮發之北,有冥海者,天池也。有魚焉,其廣數千里,未有知其修者,其名為鯤。有鳥焉,其名為鵬,背若泰山,翼若垂天之云,摶扶搖羊角而上者九萬里,絕云氣,負青天,然后圖南,且適南冥也。斥鴳笑之曰:‘彼且奚適也?我騰躍而上,不過數仞而下,翱翔蓬蒿之間,此亦飛之至也。而彼且奚適也?’”此小大之辯也。故夫知效一官、行比一鄉 、德合一君、而征一國者,其自視也,亦若此矣。而宋榮子猶然笑之。且舉世譽之而不加勸,舉世非之而不加沮,定乎內外之分,辯乎榮辱之境,斯已矣。彼其于世,未數數然也。雖然,猶有未樹也。夫列子御風而行,泠然善也,旬有五日而后反。彼于致福者,未數數然也。此雖免乎行,猶有所待者也。若夫乘天地之正,而御六氣之辯,以游無窮者,彼且惡乎待哉?故曰:至人無己,神人無功,圣人無名.
    posted @ 2010-06-08 09:15 askzs 閱讀(179) | 評論 (0)編輯 收藏

    Ajax+Flash多文件上傳是一個開源的上傳組件,名稱是FancyUpload,其官方網址是:http://digitarald.de/project/fancyupload/。這個組件僅僅是客戶端的應用組件,即與任何服務器端的技術沒有關系,服務器端可以采用任何后臺技術(如JSP、Servlet、ASP等)。應用該組件提供 給我們的最大的好處有如下幾點(個人認為,呵呵):

    1          僅是客戶端的應用組件,服務器端可以采用任何后臺技術 
    2 可以同時選擇多個文件進行上傳;
    3         以隊列的形式排列要上傳的文件和其相關信息(如名稱、大小等);
    4        
    可以設置要上傳的文件個數、文件類型和文件大小;
    5        
    有上傳進度顯示, 直觀,實用);
    6      
    上傳的過程中可以隨時取消要上傳的文件;
    7      
    平臺獨立性,由于使用flash和 成熟的AJAX框架(mootools)可以避免對特定瀏覽器和服務器依賴!
    8       
    使用簡單,文件體積小!
    9
      表單無須設置enctype="multipart/form-data"


    posted @ 2010-06-07 15:46 askzs 閱讀(1172) | 評論 (1)編輯 收藏

    轉載于http://blog.csdn.net/sunyujia/archive/2008/06/15/2549347.aspx

    <html>   
    <head>   
     
    <title>Add Files</title>   
     
    <style>   
     
    a.addfile {   
     
    background-image:url(http://p.mail.163.com/js31style/lib/0703131650/163blue/f1.gif);   
     
    background-repeat:no-repeat;   
     
    background-position:-823px -17px;   
     
    display:block;   
     
    float:left;   
     
    height:20px;   
     
    margin-top:-1px;   
     
    position:relative;   
     
    text-decoration:none;   
     
    top:0pt;   
     
    width:80px;   
     
    }   
     
     
     
    input.addfile {   
     
    /*left:-18px;*/  
     
    }   
     
     
     
    input.addfile {   
     
    cursor:pointer !important;   
     
    height:18px;   
     
    left:-13px;   
     
    filter:alpha(opacity=0);    
     
    position:absolute;   
     
    top:5px;   
     
    width:1px;   
     
    z-index: -1;   
     
    }   
     
    </style>   
     
     
     
    <script type="text/javascript">   
     
     
     
    function MultiSelector(list_target, max)   
     
    {   
     
        // Where to write the list   
     
        this.list_target = list_target;   
     
        // How many elements?   
     
        this.count = 0;   
     
        // How many elements?   
     
        this.id = 0;   
     
        // Is there a maximum?   
     
        if (max)   
     
        {   
     
            this.max = max;   
     
        }    
     
        else    
     
        {   
     
            this.max = -1;   
     
        };   
     
     
     
        /**  
     
         * Add a new file input element  
     
         */  
     
        this.addElement = function(element)   
     
        {   
     
            // Make sure it's a file input element   
     
            if (element.tagName == 'INPUT' && element.type == 'file')   
     
            {   
     
                // Element name -- what number am I?   
     
                element.name = 'file_' + this.id++;   
     
     
     
                // Add reference to this object   
     
                element.multi_selector = this;   
     
     
     
                // What to do when a file is selected   
     
                element.onchange = function()   
     
                {   
     
                    // New file input   
     
                    var new_element = document.createElement('input');   
     
                    new_element.type = 'file';   
     
                    new_element.size = 1;   
     
                    new_element.className = "addfile";   
     
     
     
                    // Add new element   
     
                    this.parentNode.insertBefore(new_element, this);   
     
     
     
                    // Apply 'update' to element   
     
                    this.multi_selector.addElement(new_element);   
     
     
     
                    // Update list   
     
                    this.multi_selector.addListRow(this);   
     
     
     
                    // Hide this: we can't use display:none because Safari doesn't like it   
     
                    this.style.position = 'absolute';   
     
                    this.style.left = '-1000px';   
     
                };   
     
     
     
     
     
                // If we've reached maximum number, disable input element   
     
                if (this.max != -1 && this.count >= this.max)   
     
                {   
     
                    element.disabled = true;   
     
                };   
     
     
     
                // File element counter   
     
                this.count++;   
     
                // Most recent element   
     
                this.current_element = element;   
     
            }    
     
            else    
     
            {   
     
                // This can only be applied to file input elements!   
     
                alert('Error: not a file input element');   
     
            };   
     
        };   
     
     
     
     
     
        /**  
     
         * Add a new row to the list of files  
     
         */  
     
        this.addListRow = function(element)   
     
        {   
     
            // Row div   
     
            var new_row = document.createElement('div');   
     
     
     
            // Delete button   
     
            var new_row_button = document.createElement('input');   
     
            new_row_button.type = 'button';   
     
            new_row_button.value = 'Delete';   
     
     
     
            // References   
     
            new_row.element = element;   
     
     
     
            // Delete function   
     
            new_row_button.onclick = function()   
     
            {   
     
                // Remove element from form   
     
                this.parentNode.element.parentNode.removeChild(this.parentNode.element);   
     
     
     
                // Remove this row from the list   
     
                this.parentNode.parentNode.removeChild(this.parentNode);   
     
     
     
                // Decrement counter   
     
                this.parentNode.element.multi_selector.count--;   
     
     
     
                // Re-enable input element (if it's disabled)   
     
                this.parentNode.element.multi_selector.current_element.disabled = false;   
     
     
     
                // Appease Safari   
     
                // without it Safari wants to reload the browser window   
     
                // which nixes your already queued uploads   
     
                return false;   
     
            };   
     
     
     
            // Set row value   
     
            new_row.innerHTML = element.value + " ";   
     
     
     
            // Add button   
     
            new_row.appendChild(new_row_button);   
     
     
     
            // Add it to the list   
     
            this.list_target.appendChild(new_row);   
     
        };   
     
    };   
     
    </script>   
     
    </head>   
     
     
     
    <body>   
     
     
     
    <!-- This is the form -->   
     
    <form enctype="multipart/form-data" action="http://127.0.0.1:8080/zzgh/cx/upload.jsp" method="post">   
     
    <!-- The file element -- NOTE: it has an ID -->   
     
    <a href="javascript:void(1==1);" class="addfile" style="cursor: default;" hidefocus="true">   
     
    <input id="my_file_element" class="addfile" type="file" name="file_1" size="1" title="點擊選擇附件">   
     
    </a>   
     
    <input type="submit" value="上 傳">   
     
    </form>   
     
     
     
    Files:   
     
    <!-- This is where the output will appear -->   
     
    <div id="files_list" style="padding:5px;border:1px;border-style:solid;border-color:#0000ff;height:100px;width:600px;"></div>   
     
    <script>   
     
    <!-- Create an instance of the multiSelector class, pass it the output target and the max number of files -->   
     
    var multi_selector = new MultiSelector(document.getElementById('files_list'), 100);   
     
    <!-- Pass in the file element -->   
     
    multi_selector.addElement(document.getElementById('my_file_element'));   
     
    </script>   
    </body>   
     
    </html> 


    效果圖如下:



    posted @ 2010-06-04 17:12 askzs 閱讀(436) | 評論 (0)編輯 收藏

    一,先新建一個excel文件,調整格式(就是你所想要顯示的格式),
    二,把剛才新建的excel文件令存為.html(demo.html)文件,
    三,新建一個jsp頁面, 在該JSP頁面頭部設置response的ContentType為Excel格式
    <% response.setContentType("application/vnd.ms-excel;charset=GBK"); %>
    然后設置網頁資料是以excel報表以線上瀏覽方式呈現或者是下載的方式呈現
    <%
    / /這行設定傳送到前端瀏覽器時的檔名為test1.xls  就是靠這一行,讓前端瀏覽器以為接收到一個excel檔 
     //將網頁資料以excel報表以線上瀏覽方式呈現
    response.setHeader("Content-disposition","inline; filename=test1.xls");
       //將網頁資料以下載的方式
    response.setHeader("Content-disposition","attachment; filename=test2.xls");
    %>
    然后把 demo.html的源代碼粘貼在jsp頁面,如下

    <%@ page contentType="text/html; charset=GBK" %>
    <% response.setContentType("application/vnd.ms-excel;charset=GBK");
    response.setHeader("Content-disposition","attachment; filename=test2.xls");

    %>
    <!--以下為保持成html頁面的excel的內容 demo.html頁面-->
    <html xmlns:o="urn:schemas-microsoft-com:office:office"
    xmlns:x="urn:schemas-microsoft-com:office:excel"
    xmlns="http://www.w3.org/TR/REC-html40">

    <head>
    <meta http-equiv=Content-Type content="text/html; charset=gb2312">
    <meta name=ProgId content=Excel.Sheet>
    <meta name=Generator content="Microsoft Excel 11">
    <link rel=File-List href="qwe.files/filelist.xml">
    <link rel=Edit-Time-Data href="qwe.files/editdata.mso">
    <link rel=OLE-Object-Data href="qwe.files/oledata.mso">
    <!--[if gte mso 9]><xml>
     <o:DocumentProperties>
      <o:Created>1996-12-17T01:32:42Z</o:Created>
      <o:LastSaved>2010-05-12T13:59:04Z</o:LastSaved>
      <o:Version>11.9999</o:Version>
     </o:DocumentProperties>
     <o:OfficeDocumentSettings>
      <o:RemovePersonalInformation/>
     </o:OfficeDocumentSettings>
    </xml><![endif]-->
    <style>
    <!--table
     {mso-displayed-decimal-separator:"\.";
     mso-displayed-thousand-separator:"\,";}
    @page
     {margin:1.0in .75in 1.0in .75in;
     mso-header-margin:.5in;
     mso-footer-margin:.5in;}
    tr
     {mso-height-source:auto;
     mso-ruby-visibility:none;}
    col
     {mso-width-source:auto;
     mso-ruby-visibility:none;}
    br
     {mso-data-placement:same-cell;}
    .style0
     {mso-number-format:General;
     text-align:general;
     vertical-align:bottom;
     white-space:nowrap;
     mso-rotate:0;
     mso-background-source:auto;
     mso-pattern:auto;
     color:windowtext;
     font-size:12.0pt;
     font-weight:400;
     font-style:normal;
     text-decoration:none;
     font-family:宋體;
     mso-generic-font-family:auto;
     mso-font-charset:134;
     border:none;
     mso-protection:locked visible;
     mso-style-name:常規;
     mso-style-id:0;}
    td
     {mso-style-parent:style0;
     padding-top:1px;
     padding-right:1px;
     padding-left:1px;
     mso-ignore:padding;
     color:windowtext;
     font-size:12.0pt;
     font-weight:400;
     font-style:normal;
     text-decoration:none;
     font-family:宋體;
     mso-generic-font-family:auto;
     mso-font-charset:134;
     mso-number-format:General;
     text-align:general;
     vertical-align:bottom;
     border:none;
     mso-background-source:auto;
     mso-pattern:auto;
     mso-protection:locked visible;
     white-space:nowrap;
     mso-rotate:0;}
    ruby
     {ruby-align:left;}
    rt
     {color:windowtext;
     font-size:9.0pt;
     font-weight:400;
     font-style:normal;
     text-decoration:none;
     font-family:宋體;
     mso-generic-font-family:auto;
     mso-font-charset:134;
     mso-char-type:none;
     display:none;}
    -->
    </style>
    <!--[if gte mso 9]><xml>
     <x:ExcelWorkbook>
      <x:ExcelWorksheets>
       <x:ExcelWorksheet>
        <x:Name>Sheet1</x:Name>
        <x:WorksheetOptions>
         <x:DefaultRowHeight>285</x:DefaultRowHeight>
         <x:CodeName>Sheet1</x:CodeName>
         <x:Selected/>
         <x:Panes>
          <x:Pane>
           <x:Number>3</x:Number>
           <x:ActiveCol>1</x:ActiveCol>
          </x:Pane>
         </x:Panes>
         <x:ProtectContents>False</x:ProtectContents>
         <x:ProtectObjects>False</x:ProtectObjects>
         <x:ProtectScenarios>False</x:ProtectScenarios>
        </x:WorksheetOptions>
       </x:ExcelWorksheet>
       <x:ExcelWorksheet>
        <x:Name>Sheet2</x:Name>
        <x:WorksheetOptions>
         <x:DefaultRowHeight>285</x:DefaultRowHeight>
         <x:CodeName>Sheet2</x:CodeName>
         <x:ProtectContents>False</x:ProtectContents>
         <x:ProtectObjects>False</x:ProtectObjects>
         <x:ProtectScenarios>False</x:ProtectScenarios>
        </x:WorksheetOptions>
       </x:ExcelWorksheet>
       <x:ExcelWorksheet>
        <x:Name>Sheet3</x:Name>
        <x:WorksheetOptions>
         <x:DefaultRowHeight>285</x:DefaultRowHeight>
         <x:CodeName>Sheet3</x:CodeName>
         <x:ProtectContents>False</x:ProtectContents>
         <x:ProtectObjects>False</x:ProtectObjects>
         <x:ProtectScenarios>False</x:ProtectScenarios>
        </x:WorksheetOptions>
       </x:ExcelWorksheet>
      </x:ExcelWorksheets>
      <x:WindowHeight>4530</x:WindowHeight>
      <x:WindowWidth>8505</x:WindowWidth>
      <x:WindowTopX>480</x:WindowTopX>
      <x:WindowTopY>120</x:WindowTopY>
      <x:AcceptLabelsInFormulas/>
      <x:ProtectStructure>False</x:ProtectStructure>
      <x:ProtectWindows>False</x:ProtectWindows>
     </x:ExcelWorkbook>
    </xml><![endif]-->
    </head>

    <body link=blue vlink=purple>

    <table x:str border=0 cellpadding=0 cellspacing=0 width=288 style='border-collapse:
     collapse;table-layout:fixed;width:216pt'>
     <col width=72 span=4 style='width:54pt'>
     <tr height=19 style='height:14.25pt'>
      <td height=19 width=72 style='height:14.25pt;width:54pt'>全球</td>
      <td width=72 style='width:54pt'>問問</td>
      <td width=72 style='width:54pt'>ee</td>
      <td width=72 style='width:54pt'>rr</td>
     </tr>
     <tr height=19 style='height:14.25pt'>
      <td height=19 style='height:14.25pt'>暗暗</td>
      <td>ss</td>
      <td>dd</td>
      <td>ff</td>
     </tr>
     <![if supportMisalignedColumns]>
     <tr height=0 style='display:none'>
      <td width=72 style='width:54pt'></td>
      <td width=72 style='width:54pt'></td>
      <td width=72 style='width:54pt'></td>
      <td width=72 style='width:54pt'></td>
     </tr>
     <![endif]>
    </table>

    </body>

    </html>


    中文問題:
    查看源代碼時發現JSP文件中寫死的中文為亂碼,則在JSP文件頭部添加一行
    <%@ page contentType="text/html; charset=gb2312" %>
    查看源代碼時發現文字為中文,但是用Excel打開為亂碼則在<html>與<head>中加入
    <meta http-equiv="Content-Type" content="text/html; charset=GBK">

    在jsp頁面中,要在excel中顯示的內容可以從數據庫中讀取,在此就不做詳細的介紹了

    posted @ 2010-05-12 22:06 askzs 閱讀(4740) | 評論 (0)編輯 收藏

     在DHTML開發中,微軟在其DOM中為每個元素實現了一個fireEvent方法。我們知道HTML的事件onXXX可以由系統(IE環境)來管理和觸發,也可以直接執行事件的handler,比如onclick,如果被賦予事件處理函數,我們可以用element.onclick()來執行事件處理函數。那么fireEvent用來干嘛呢?

        在MSDN中fireEvent的描述很簡單:Fires a specified event on the object.
        bFired = object.fireEvent(sEvent [, oEventObject])

        并且MSDN給出了一個使用fireEvent的示例:
    <HTML>
        
    <HEAD>
            
    <SCRIPT>
            
    function fnFireEvents()
            
    {
                div.innerText 
    = "The cursor has moved over me!";
                btn.fireEvent(
    "onclick");
            }

            
    </SCRIPT>
        
    </HEAD>
        
    <BODY>
            
    <h1>Using the fireEvent method</h1>
            By moving the cursor over the DIV below, the button is clicked.
            
    <DIV ID="div" onmouseover="fnFireEvents();">
                Mouse over this!
            
    </DIV>
            
    <BUTTON ID="btn" ONCLICK="this.innerText='I have been clicked!'">Button</BUTTON>
        
    </BODY>
    </HTML>

        這個示例非常的簡單,也完全說明了fireEvent的用法。不過這個示例有一點誤導我們,從而讓我們不容易發現frieEvent更有價值的使用方法。由于button的onclick事件被賦予語句:this.innerText = 'I have been clicked!',這里很容易誤導我們,fireEvent產生的是執行了btn.onclick()的效果。嗯,確實是這個效果,但是意義卻完全不同,btn.onclick()只是一個函數調用,它的執行必須依賴于用戶對其賦值,否則btn.onclick為null,是不能執行btn.onclick()的。而fireEvent('onclick')的效果,"等同于"鼠標在button元素上進行了點擊。

        由于IE的事件處理是bubble up方式,fireEvent(sEvent)就顯得更加的有意義了,如果我們在一個table元素<table>中監聽事件,比如onclick,當點擊不同的td做出不同的響應時。如果使用程序來模擬,只能使用fireEvent這種方式,示例如下:

    <table border="1" onclick="alert(event.srcElement.innerText);">
        
    <tr>
            
    <td id="abc">abc</td>
            
    <td id="def">def</td>
        
    </tr>
    </table>
    <button onclick="abc.fireEvent('onclick')">
        abc
    </button>
    <button onclick="def.fireEvent('onclick')">
        def
    </button>

        使用abc.onclick()和def.onclick()將得到"Object doesn't support this property or method"異常。

       
    abc def

         

        知道了fireEvent的用法,那么我們用它來做什么呢?在開發具有復雜事件處理動作組件時。有時我們需要從程序中去觸發一個本身因該鼠標或鍵盤觸發的事件,比如在TreeView控件中,我們一般是使用鼠標點擊來Expand&Collapse一個結點,如果我們要用程序代碼來實現這個操作怎么辦呢?當然直接執行事件處理函數是可以的,不過如果事件處理函數依賴于event變量中的狀態值,那么就必須使用fireEvent方法。

        原來我曾經說過,因該把事件處理的函數封裝起來,便于直接調用。比如上面說到的TreeView節點的Expand和Collapse,我在TreeView控件中都是把它們封裝成兩個函數Expand和Collapse,在節點被點擊時,執行:
     OpIcon.onclick = function()
     {
         
    var objNode = this.Object;
         
    if ( objNode.m_IsExpanded )
             objNode.Collapse();
        
    else
             objNode.Expaned();
     }

        這樣一來,在程序中控制Expand和Collapse也就是分別執行函數而已。不過后來發現既然DOM中有fireEvent方法,似乎我在"
    轉載:
    http://www.cnblogs.com/birdshome/archive/2005/04/07/128182.html
    posted @ 2010-04-01 22:19 askzs 閱讀(389) | 評論 (0)編輯 收藏

    select 或text的onchange事件需要手動(通過鍵盤輸入)改變select或text的值才能觸發,如果在js中給select或text賦值,則無法觸發onchang事件,
    例如,在頁面加載完成以后,需要觸發一個onChange事件,在js中用document.getElementById("se").value="ttt";直接給select或text賦值是不行的,要想實現手動觸發onchange事件,需要在js給select賦值后,加入下面的語句,(假設select的id為sel)
    document.getElementById("sel").fireEvent('onchange') 來實現,
    例子:
         <html><body>
        
        
    <select id="sel" name="test" onchange="demo()">
          
    <option value="1" selected>測試一</option>
      
    <option value="2">測試二</option>
      
    <option value="3">測試三</option>
      
    <option value="4">測試四</option>
       
    </select>
     
    <input id="tex" type="text" name="text1"  id="text1">
       
      
    <script>
      
      document.getElementById(
    "sel").value="3";
      document.getElementById(
    "sel").fireEvent("onchange");
      
    function demo()
      {
       
    var d=document.getElementById("sel").value;
       document.getElementById(
    "tex").value=d;
       
    //alert(d);
      
      }
      
    </script>
        
    </body></html>

    上面的代碼產生的效果就相當于鼠標在select元素上進行了選擇,模仿出了select的onchange效果

    posted @ 2010-04-01 22:15 askzs 閱讀(39982) | 評論 (10)編輯 收藏

    如果在eclipse中誤刪除了文件,可以通過eclipse自己恢復,但是有時間限制,只能恢復當前時間前七天的,
    在eclipse中,右鍵點擊刪除的項目名,選擇 restore from local history...,可以恢復七天內刪除的文件

    posted @ 2010-03-31 21:01 askzs 閱讀(534) | 評論 (0)編輯 收藏

    使用common-fieupload 實現文件上傳,有時會遇到文件名或者是表單內容是亂碼,

    1  調用FileUpload.settingHeaderEncoding("UTF-8"),這項設置可以解決路徑或者文件名為亂碼的問題。
    2  在取字段值的時候,用FileItem.getString("UTF-8"),這項設置可以解決獲取的表單字段為亂碼的問題

    posted @ 2010-03-18 20:56 askzs 閱讀(342) | 評論 (0)編輯 收藏

    反編譯插件jadclipse下載:
    http://jadclipse.sourceforge.net/wiki/index.php/Main_Page
    選擇適合版本的jar文件下載
    然后根據Installation 的說明安裝配置
    1,把下載的 JadClipse JAR 文件放在Eclipse安裝目錄的plugins文件夾下,(我本機的路徑是D:\MyEclipse 6.0\eclipse\plugins)
    2,重啟Eclipse,
    3,下載jad,http://www.varaneckas.com/jad ,選擇適合的版本,
    4,把 jad.exe 放在系統路徑中,(例如 C:\Program Files\Jad\jad.exe),然后 在Eclipse中選擇Window > Preferences... > Java > JadClipse > Path to Decompiler,填寫jad.exe的路徑,在Directory for tempcrary files中填寫臨時文件路徑,如下圖



    5,選擇,Window > Preferences... > General > Editors > File Associations  選擇*.class文件,如下圖


    選擇 Associated editors 選中 JadClipse  class File Viewer ,選擇右邊的 Default 按鈕,如下圖


    JadClipse  class File Viewer 變為 defaule之后,如下圖

    至此,jadClipse插件就安裝完成了,你可以雙擊 class文件 或者是把鼠標放在想看的類或方法名上,然后按住ctrl點擊,就可以看到反編譯后的源文件了,

    posted @ 2010-03-06 10:01 askzs 閱讀(4325) | 評論 (0)編輯 收藏

    SQL SERVER 和 ACCESS 以及 MYSQL 中, 都有一種自增字段, 通常被用來做主鍵或索引鍵, 但是 ORACLE 中,確并沒有提供這種功能 ,但我們確經常需要這個功能,可以用以下方法解決,
    一,如果你不在集群環境下使用,并且用到了hibernate,那么可以用hibernate提供的產生自動增長類型主鍵的increment策略,如下
    在**.hbm.xml(hibernate映射文件)中配置如下
    <class name="com.xx.xx.Test" table="TEST">
    <id name="id" type="int" column="ID">
    //該句指定使用hibernate自帶的increment策略生成主鍵
    <generator class="increment"/>
    </id>
    <property name="uname" type="java.lang.String" column="UNAME"/>
    </class>
    這樣,在java文件中對表增加記錄時,只需添加除ID外的其他字段,然后save即可,
    注意 ,increment 實現機制為在當前應用實例中維持一個變量,以保存著當前的最大值,之后每次需要生成主鍵的時候將此值加1作為主鍵,increment不能在集群環境下使用

    二,使用hibernate的sequence策略,在oracle中新建一個sequence,在hibernate中使用,如下
    在**.hbm.xml(hibernate映射文件)中配置如下
    <class name="com.xx.xx.Test" table="TEST">
    <id name="id" type="int" column="ID">
    //該句指定使用hibernate自帶的sequence策略生成主鍵 ,TEST_SEQ是在數據庫中新建的sequence的名稱
    <generator class="sequence"> 
                 <param name="sequence">TEST_SEQ</param> 
            </generator>   
    <property name="uname" type="java.lang.String" column="UNAME"/>
    </class>
    這樣,在java文件中對表增加記錄時,只需添加除ID外的其他字段,然后save即可,

    三,以上兩種方法都是通過hibernate實現的,下面給出ORACLE的一種實現方式

     1. 建立 SEQUENCE
    CREATE [ OR REPLACE ] SEQUENCE sequence_identity START WITH initial seed INCREMENT BY step MAXVALUE upper bound [NOMAXVALUE] NOCYCLE [empty]
    2. 建立 TRIGGER
    CREATE [ OR REPLACE ] TRIGGER trigger_identity BEFORE INSERT ON table_name FOR EACH ROW BEGIN SELECT sequence_identity.NEXTVAL INTO :new.column_name FROM DUAL; END;
    這樣,在java文件中對表增加記錄時,只需添加除ID外的其他字段,然后save即可,

    posted @ 2010-03-04 11:36 askzs 閱讀(1330) | 評論 (0)編輯 收藏

    僅列出標題
    共3頁: 上一頁 1 2 3 下一頁 
    我要啦免费统计
    主站蜘蛛池模板: eeuss影院免费92242部| 亚洲AV综合永久无码精品天堂| 精品亚洲国产成AV人片传媒| 91情国产l精品国产亚洲区| 91亚洲国产在人线播放午夜| 亚洲噜噜噜噜噜影院在线播放| 天堂亚洲国产中文在线| 处破女第一次亚洲18分钟| 一级毛片视频免费| 暖暖免费日本在线中文| 97免费人妻在线视频| 手机在线毛片免费播放| 亚洲成A人片在线观看无码3D| 亚洲男人的天堂www| 亚洲码在线中文在线观看| 亚洲日本天堂在线| 国产99视频精品免费视频76| 69精品免费视频| 日本免费人成视频播放| 国产亚洲av片在线观看16女人| 亚洲国产精品午夜电影| 国产亚洲综合久久| 午夜免费福利视频| 日韩免费视频网站| 国产亚洲精品精华液| 亚洲精品免费网站| 丁香花在线观看免费观看图片| 亚洲视频免费一区| 亚洲AⅤ优女AV综合久久久| 亚洲国产成人久久精品影视| 亚洲欧美不卡高清在线| 十八禁视频在线观看免费无码无遮挡骂过 | 亚洲午夜在线一区| 美女被免费视频网站a| 久久久久久毛片免费播放 | 97在线观免费视频观看| 免费人成无码大片在线观看| 少妇中文字幕乱码亚洲影视| 激情小说亚洲色图| **一级一级毛片免费观看| 亚洲av午夜精品一区二区三区 |