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

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

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

    2007年10月12日

    執行./startup.sh,或者./shutdown.sh的時候,爆出了Permission denied

    關于LINUX權限-bash: ./startup.sh: Permission denied

    <script type="text/javascript"></script><script type="text/javascript"></script>

    在執行./startup.sh,或者./shutdown.sh的時候,爆出了Permission denied,

    其實很簡單,就是今天在執行tomcat的時候,用戶沒有權限,而導致無法執行,

    用命令chmod 修改一下bin目錄下的.sh權限就可以了

    如chmod u+x *.sh

    在此執行,OK了。

    posted @ 2014-12-30 10:26 liujg 閱讀(289) | 評論 (0)編輯 收藏

    submit()和onsubmit()的區別(轉)

    2011-03-16 10:34

    最近在開發中遇到了表單提交前驗證的問題,用一個普通的button按鈕代替submit按鈕,
    在提交前觸發這個button的onclick事件,在其事件中觸發form的submit事件。問題出現了:
    以下是出現相關代碼:
    <form action="http://www.baidu.com/s?wd=this.form.submit%28%29%3B&cl=3" method="post" name="form1" onsubmit="return alert('已提交!'); return false;"> 
        <table align="center" width="420px" cellPadding="2" cellSpacing="1" bgcolor="#A4B6D7"    style="word-wrap:Break-word;">                
            <tr style="cursor: hand;background:#d7e3f6" > 
                <td width="20%" align="right">條型碼</td> 
                <td><input style="width:90%" type="text" name="GOODSNUM"   size="30"  maxlength="8" ></td> 
            </tr> 
            <tr> 
                <td align="center" colspan="2"> 
                    <input type="button" name="save" value="保存" onclick="if((confirm('確定要提交嗎?'))) this.form.submit();"/> 
                </td> 
            </tr>  
        </table> 
    </form> 


    卻發現并沒有觸發form的onsubmit方法,而是直接提交了。奇怪了,難道沒有這種方式無法結合form的onsubmit方法嗎?
    仔細想了想,既然this.form表示form這個對象,那么肯定能獲取到form的屬性和方法的
    ,就改成this.form.onsubmit();  成功!
    我又查了查手冊,原來submit的方法是這樣解釋的:
      The submit method does not invoke the onsubmit event handler. Call the onsubmit event handler directly. When using Microsoft® Internet Explorer 5.5 and later, you can call the fireEvent method with a value of onsubmit in the sEvent parameter.

    意思是說submit這個方法是不觸發onsubmit時間的,如果想要觸發它,需要調用
    fireEvent方法。嘗試一下:this.form.fireEvent('onsubmit');哈哈,果然也成功!不過這樣不是多此一舉嗎?呵呵!

    就這個小問題也搞了我將近一個小時,不過為了以后不為這個問題煩惱,這也是值得的。
    this.form.submit(); //直接提交表單
    this.form.onsubmit(); //調用form的onsubmit方法
    this.form.fireEvent('onsubmit'); //同上,
         PS:又學到了fireEvent這個方法,

    2.onsubmit()與submit() :

    <sCript>
    funCtion fun()
    {
       alert("form_submit");
    }
    </sCript>

    <form onsubmit="fun()">
    <input type="submit" id="aaa" value="submit">   <!--能彈出form_submit-->
    <input type="button" id="bbb" value="onCliCk_submit" onCliCk="doCument.forms[0].submit()">
    <!--
    表單會提交,但是不會運行fun() 原因是 onsubmit事件不能通過此種方式觸發(在IE環境)
    直接用腳本doCumetn.formName.submit()提交表單是不會觸發表單的onsubmit()事件的
    -->
        <input type="button" id="bb1" value="onCliCk_onsubmit" onCliCk="doCument.forms[0].onsubmit()">

    <!--會觸發fun()參數-->
    </form>

    posted @ 2011-09-28 15:11 liujg 閱讀(346) | 評論 (0)編輯 收藏

    doGet()和doPost()的區別(轉)

    service()是在javax.servlet.Servlet接口中定義的, 在 javax.servlet.GenericServlet 中實現了這個接口, 而 doGet/doPost 則是在 javax.servlet.http.HttpServlet 中實現的, javax.servlet.http.HttpServlet 是 javax.servlet.GenericServlet 的子類. 所有可以這樣理解, 其實所有的請求均首先由 service() 進行處理, 而在 javax.servlet.http.HttpServlet 的 service() 方法中, 主要做的事情就是判斷請求類型是 Get 還是 Post, 然后調用對應的 doGet/doPost 執行.

    doGet:處理GET請求 doPost:處理POST請求 doPut:處理PUT請求 doDelete:處理DELETE請求 doHead:處理HEAD請求 doOptions:處理OPTIONS請求 doTrace:處理TRACE請求 通常情況下,在開發基于HTTP的servlet時,開發者只需要關心doGet和doPost方法,其它的方法需要開發者非常的熟悉HTTP編程,因此這些方法被認為是高級方法。 而通常情況下,我們實現的servlet都是從HttpServlet擴展而來。 doPut和doDelete方法允許開發者支持HTTP/1.1的對應特性; doHead是一個已經實現的方法,它將執行doGet但是僅僅向客戶端返回doGet應該向客戶端返回的頭部的內容; doOptions方法自動的返回servlet所直接支持的HTTP方法信息; doTrace方法返回TRACE請求中的所有頭部信息。 對于那些僅僅支持HTTP/1.0的容器而言,只有doGet, doHead 和 doPost方法被使用,因為HTTP/1.

    下邊是CSDN里邊的一些討論:
    1.doGet和doPost的區別,在什么時候調用,為什么有時doPost中套用doGet
    2.提交的form     method=Post就執行DOPOST,否則執行GOGET 套用是不管method是post還是get都執行dopost方法
    3.get:你可以通過URL傳參數。
    http://www.csdn.net/index.asp?user=1234    , Post不行  
    4.你的表單提交都有方法的,如果提交為get就調用get方法,用post就調用post方法.  
        get顯示你傳過去的參數,post則不顯示.
    5.通常的寫法:先用doGet(),然后在doPost()中調用doGet(),這樣就萬無一失了
    6. 簡單的說,get是通過http     header來傳輸數據,有數量限制,而post則是通過http     body來傳輸數據,沒有數量限制。
    7.還有一點:get和post提交的數據量是不一樣的.  
        get好像最多只能在url后跟64K(?具體多少忘記了),  
        post好像沒這個限制,至少我post過5M以上的文本    
        還有url刷新時get好像可以不用重復提交原來提交的數據,  
        而post則會說內容已提交,想刷新請再提交.

    posted @ 2011-05-24 23:58 liujg 閱讀(479) | 評論 (0)編輯 收藏

    轉載 Vim 基本用法

    這是我總結的一些基本用法,可能對初用者會有幫助,獨樂樂不如眾樂樂,是吧!

    說明:以下黑色為vi和vim均有的一般功能,而紅色為Vim(Vi Improved)所特有功能。Vim一般的Unix和Linux下均有安裝。
    ? 三種狀態
    Command: 任何輸入都會作為編輯命令,而不會出現在屏幕上,任何輸入都引起立即反映
    Insert: 任何輸入的數據都置于編輯寄存器,按ESC,可跳回command方式
    Escape: 以“:”或者“/”為前導的指令,出現在屏幕的最下一行,任何輸入都被當成特別指令。
    ? 離開vi
    :q! 離開vi,并放棄剛在緩沖區內編輯的內容。
    :wq 將緩沖區內的資料寫入磁盤中,并離開vi。
    :x 同wq。
    (注意—— :X 是文件加密,一定要與:x存盤退出相區別)
    ? 進入輸入模式
    a (append) 由游標之后加入資料。
    A 由該行之末加入資料。
    i (insert) 由游標之前加入資料。
    I 由該行之首加入資料。
    o (open) 新增一行於該行之下供輸入資料之用。
    O 新增一行於該行之上供輸入資料之用。
    ? 刪除與修改
    x 刪除游標所在該字元。
    X 刪除游標所在之前一字元。
    r 用接於此指令之后的字元取代(replace)游標所在字元。如:ra將游標所在字元以 a 取代之。
    R 進入取代狀態,直到《ESC》為止。
    s 刪除游標所在之字元,并進入輸入模式直到《ESC》。
    S 刪除游標所在之該行資料,并進入輸入模式直到《ESC》。
    ? 光標的移動
    m<a-z> 設置書簽<a-z>
    ‘<a-z> 移至書簽<a-z>處
    0 移至該行之首
    $ 移至該行之末。
    e 移動到下個字的最後一個字母
    w 移動到下個字的第一個字母。
    b 移動到上個字的第一個字母。
    ^ 移至該行的第一個字元處。
    H 移至視窗的第一行。
    M 移至視窗的中間那行。
    L 移至視窗的最后一行。
    G 移至該文件的最后一行。
    + 移至下一列的第一個字元處。
    - 移至上一列的第一個字元處。
    :n 移至該文件的第 n 列。
    n+ 移至游標所在位置之后的第 n 列。
    n- 移至游標所在位置之前的第 n 列。
    <Ctrl><g> 顯示該行之行號、文件名稱、文件中最末行之行號、游標所在行號占總行號之百分比。

    (Vim) 光標移動基本用法小解:
    (這只要組合上邊的功能就可以明白了,不用再一一講解了吧!)
    ge b w e
    ← ← ---→ --→
    This is-a line, with special/separated/words (and some more).
    ←- ←-- -----------------→ ---→
    GE B W E

    ? 視窗的移動
    <Ctrl><f> 視窗往下卷一頁。
    <Ctrl><b> 視窗往上卷一頁。
    <Ctrl><d> 視窗往下卷半頁。
    <Ctrl><u> 視窗往上卷半頁。
    <Ctrl><e> 視窗往下卷一行。
    <Ctrl><y> 視窗往上卷一行。
    ? 剪切、復制、刪除
    Operator + Scope = command
    ? Operator
    d 剪切
    y 復制。
    p 粘帖,與 d 和 y 配和使用。可將最后d或y的資料放置於游標所在位置之行列下。
    c 修改,類似delete與insert的組和。刪除一個字組、句子等之資料,并插入新建資料。
    ? Scope
    e 由游標所在位置至該字串的最后一個字元。
    w 由游標所在位置至下一個字串的第一個字元。
    b 由游標所在位置至前一個字串的第一個字元。
    $ 由游標所在位置至該行的最后一個字元。
    0 由游標所在位置至該行的第一個字元。
    ? 整行動作
    dd 刪除整行。
    D 以行為單位,刪除游標后之所有字元。
    cc 修改整行的內容。
    yy 使游標所在該行復制到記憶體緩沖區。
    ? 取消前一動作(Undo)
    u 恢復最后一個指令之前的結果。
    U 恢復游標該行之所有改變。
    (vim) u 可以多次撤消指令,一次撤消一個操作,直至本次操作開始為止。
    (vim) Ctrl+r 可以恢復撤消前內容,按多次可恢復多次。
    ? 查找與替換
    /字串 往游標之后尋找該字串。
    ?字串 往游標之前尋找該字串。
    n 往下繼續尋找下一個相同的字串。
    N 往上繼續尋找下一個相同的字串。
    % 查找“(”,“)”,“{”,“}”的配對符。
    s 搜尋某行列范圍。
    g 搜尋整個編輯緩沖區的資料。
    :1,$s/old/new/g 將文件中所有的『old』改成『new』。
    :10,20s/^/ / 將第10行至第20行資料的最前面插入5個空白。
    (vim)
    /字符串 后邊輸入查詢內容可保存至緩沖區中,可用↑↓進行以往內容選擇。
    另外:將光標移動在選定單詞下方按*,則可以選中此單詞作為查詢字符,可以避免輸入一長串字符的麻煩。
    ? (vim) 大小寫替換
    首先用按v開啟選擇功能,然后用↑↓←→鍵來選定所要替換的字符,若是小寫變大寫,則按U;反之按u;
    如果是選擇單詞,則可以在按v后,按w,最后按U/u,這樣就可以將字符隨意的改變大小寫了,而不用刪除后重新敲入。

    ? 資料的連接
    J 句子的連接。將游標所在之下一行連接至游標該行的后面。
    ? 環境的設定
    :set all 可設置的環境變量列表
    :set 環境變量的當前值
    :set nu 設定資料的行號。
    :set nonu 取消行號設定。
    :set ai 自動內縮。
    :set noai 取消自動內縮。
    (vim)
    :set ruler 會在屏幕右下角顯示當前光標所處位置,并隨光移動而改變,占用屏幕空間較小,使用也比較方便,推薦使用。
    :set hlsearch 在使用查找功能時,會高亮顯示所有匹配的內容。
    :set nohlsearch 關閉此功能。
    :set incsearch 使Vim在輸入字符串的過程中,光標就可定位顯示匹配點。
    :set nowrapscan 關閉查找自動回環功能,即查找到文件結尾處,結束查找;默認狀態是自動回環

    ? ex指令
    ? 讀寫資料
    :10,20w test 將第10行至第20行的資料寫入test文件。
    :10,20w>>test 將第10行至第20行的資料加在test文件之后。
    :r test 將test文件的資料讀入編輯緩沖區的最后。
    :e [filename] 編輯新的文件。
    :e! [filename] 放棄當前修改的文件,編輯新的文件。
    :sh 進入shell環境,使用exit退出,回到編輯器中。

    :!cmd 運行命令cmd后,返回到編輯器中。
    ? 刪除、復制及搬移
    :10,20d 刪除第10行至第20行的資料。
    :10d 刪除第10行的資料。
    :%d 刪除整個編輯緩沖區。
    :10,20co30 將第10行至第20行的資料復制至第30行之后。
    :10,20mo30 將第10行至第20行的資料搬移至第30行之后。

    本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/jsufcz/archive/2009/02/11/3875956.aspx

    posted @ 2011-05-03 14:25 liujg 閱讀(254) | 評論 (0)編輯 收藏

    OERR: ORA-12519


    OERR: ORA-12519報錯  
    1、查詢數據庫當前的連接數:
    select count(*) from v$process;
    2、查詢數據庫允許的最大連接數:
    select value from v$parameter where name = 'processes';
    3、修改數據庫允許的最大連接數:
    alter system set processes = 300 scope = spfile;
    4、重啟數據庫:
    shutdown immediate;
    startup; 

     


    文章出處:飛諾網(www.firnow.com):http://dev.firnow.com/course/7_databases/oracle/oraclejs/20091103/181042.html

    posted @ 2011-01-30 13:36 liujg 閱讀(562) | 評論 (0)編輯 收藏

    原形設計模式,搞不懂

    今天下載了個設計模式看,prototype模式就兩頁紙,看過了也沒看出來它到底做什么,比較郁悶。我就不清楚那個copy方法到底做了什么?沒有copy方法不行嗎?


    定義:

    用原型實例指定創建對象的種類,并且通過拷貝這些原型創建新的對象. //通過拷貝創建新的對象跟通過繼承創建有什么區別呢?
    Prototype 模式允許一個對象再創建另外一個可定制的對象,根本無需知道任何如何創建的

    細節,工作原理是:通過將一個原型對象傳給那個要發動創建的對象,這個要發動創建的對象

    通過請求原型對象拷貝它們自己來實施創建。

    如何使用?

    因為Java 中的提供clone()方法來實現對象的克隆(具體了解 clone()按這里),所以

    Prototype 模式實現一下子變得很簡單.

    以勺子為例:

    public abstract class AbstractSpoon implements Cloneable
    {

        String spoonName;

        public void setSpoonName(String spoonName) {this.spoonName = spoonName;}

        public String getSpoonName() {return this.spoonName;}

        public Object clone()

         {

            Object object = null;

            try {
                object = super.clone();

            } catch (CloneNotSupportedException exception) {

                System.err.println("AbstractSpoon is not Cloneable");

            }

            return object;
        }

    }

    有兩個具體實現(ConcretePrototype):

    public class SoupSpoon extends AbstractSpoon

    {

        public SoupSpoon()
         {

            setSpoonName("Soup Spoon");

        }

    }

    public class SaladSpoon extends AbstractSpoon

    {

         public SaladSpoon()

         {
             setSpoonName("Salad Spoon");

         }

    }

    調用 Prototype 模式很簡單:

    AbstractSpoon spoon = new SoupSpoon();

    AbstractSpoon spoon = new SaladSpoon();

    posted @ 2007-11-29 16:23 liujg 閱讀(317) | 評論 (0)編輯 收藏

    java 關閉IE

    本文代碼來自以下連接。
    http://www.developer.com/java/other/article.php/10936_2212401_3Introduction to the Java Robot Class in Java
    代碼簡單說明:可以在1024*768的屏幕分辨率下關掉一個最大化的IE窗口。


    import java.awt.*;
    import java.awt.event.*;

    /**this class will close an maxmimum IE window in the 1024*768's screen resolution's machine.*/
    public class Robot04{
       public static void main(String[] args)
                                 throws AWTException{
      Robot robot = new Robot();
      robot.mouseMove(1005,10);
      robot.delay(2000);
      robot.mousePress(InputEvent.BUTTON1_MASK);
      robot.delay(2000);
      robot.mouseRelease(InputEvent.BUTTON1_MASK);
       }//end main

    }//end class Robot04

    這個程序的GUI版本。
    Robot04GUI.java
    /**
     * Robot04GUI.java
     * create by kin. 2004/11/07.
     * Please enjoy this.
     */

    import javax.swing.*;
    import javax.swing.event.*;

    import java.awt.event.*;
    import java.awt.*;

    /**Robot04's GUI version.*/
    public class Robot04GUI extends JFrame {
     
     private JButton b = new JButton("Close IE");
     
     public Robot04GUI() {
      super("Close IE");
      getContentPane().add(b,BorderLayout.CENTER);
      b.addActionListener(new ActionListener() {
       public void actionPerformed(ActionEvent e) {
        try {
         new Robot04().main(new String[]{}); 
        } catch (Exception ex) {
         ex.printStackTrace();
        }
       } 
      });
     } 
     
     public static void main(String[] args) {
      Robot04GUI r = new Robot04GUI();
      r.setSize(200,200);
      r.setVisible(true);
     } 

    posted @ 2007-10-12 10:06 liujg 閱讀(584) | 評論 (0)編輯 收藏

    <2007年10月>
    30123456
    78910111213
    14151617181920
    21222324252627
    28293031123
    45678910

    導航

    統計

    常用鏈接

    留言簿(1)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    相冊

    收藏夾

    boddiy

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 大地资源网高清在线观看免费 | 国产成人1024精品免费| 亚洲色成人网站WWW永久四虎 | 午夜国产大片免费观看| 日本成人免费在线| 国产精品四虎在线观看免费| 精品国产麻豆免费网站| 日韩毛片无码永久免费看| 精品免费久久久久久成人影院 | 国产一级a毛一级a看免费人娇 | 亚洲风情亚Aⅴ在线发布| 亚洲啪AV永久无码精品放毛片 | 亚洲综合成人网在线观看| 亚洲视频一区在线播放| 亚洲另类视频在线观看| 亚洲最大的成人网站| WWW国产亚洲精品久久麻豆| 日韩免费高清一级毛片| aa级女人大片喷水视频免费| 老司机69精品成免费视频| 91在线手机精品免费观看| 免费下载成人电影| 欧洲精品免费一区二区三区| 日韩亚洲国产二区| 亚洲国产精彩中文乱码AV| 亚洲精品人成电影网| 亚洲色成人网站WWW永久四虎| 水蜜桃视频在线观看免费| 中文字幕a∨在线乱码免费看| 午夜免费福利视频| 欧美大尺寸SUV免费| 亚洲成a人片在线观看久| 国产亚洲精AA在线观看SEE| 亚洲视频免费在线看| 风间由美在线亚洲一区| 成人性做爰aaa片免费看| 黄页网站免费在线观看| 免费一级做a爰片久久毛片潮喷| 中文亚洲AV片不卡在线观看| 亚洲狠狠狠一区二区三区| 污污的视频在线免费观看|