WEB開發過程中遇到的各種問題及解決方法總結

Q:The user specified as a definer ('root'@'%') does not exist

A:只要給root用戶再添加一個對全部host都有可以訪問的權限

   mysql> grant all privileges on .to'root'@'%' identified by 'name' with grant option;

------------------------------------------------------------------------------------------------

Q:Cannot load JDBC driver class 'com.mysql.jdbc.Driver'

A:把MySQL的jar包放在Tomcat安裝目錄下的lib文件夾下

------------------------------------------------------------------------------------------------

Q:The server does not support version 3.0 of the J2EE Web module specification.
A:Tomcat 6.0最多支持Servlet 2.5,而現在要import的項目是3.0版本的。在項目根目錄下有一個.settings的文件夾,該文件夾下有一個org.eclipse.wst.common.project.facet.core.xml文件,
<installed facet="jst.web" version="3.0"/>

改爲

<installed facet="jst.web" version="2.5"/>即可
-----------------------------------------------------------------------------------------------

Q:ExtJS表單提交時,不用鼠標點擊按鈕提交,直接通過回車鍵提交
A:在extjs中,Button本身是支持回車事件的,前提是:焦點在按鈕上,此時回車和單擊事件是一回事
鑑於系統的友好性和人們 的習慣,輸入兩者後會按回車鍵登錄系統
在輸入用戶名,或者密碼後點擊"回車",讓field響應回車事件,然後form提交。響應回車鍵是焦點在用戶名或者密碼的field 時,按回車纔會響應。
    var siteName = new Ext.form.Field({  
                id: 'siteName1',//表單元素最好使用Id,不然在IE瀏覽器中表單內容將變形  
                fieldLabel: '網站名稱',  
                listeners : {  
                    specialkey : function(field, e) {  
                        if (e.getKey() == Ext.EventObject.ENTER) {  
                            alert("回車事件");  
                            ...  
                        }  
                    }  
                }  
            });  


------------------------------------------------------------------------------------------------
Q:如何提升eclipse性能,電腦只運行了一個eclipse很卡,鼠標點擊需要很久纔有反應,查看任務管理器發現CPU佔有率已經達到了56%,這嚴重影響了效率
A:Eclipse作爲開發人員強力推崇的開發工具之一,其與JBuilder相比,很多同盟都認爲使用Eclipse比使用JBuilder省內存,而且Eclipse屬於免費開源項目,而像JBuilder和IDea等均屬於商業非免費工具,當然還有其他一些說法。。。

個人選擇Eclipse作爲主要開發工具的原因主要有三點:

1、免費且開源

2、有很多開源、好用的插件,而且這些插件都是一些經驗人士的傑作,能夠大大方便和提高我們的開發(這裏對他們表示感謝)

3、有像IBM這樣本人崇拜的大型公司的支持

本文主要根據個人在使用Eclipse過程中的一些經歷,總結和收集一下Eclipse開發工具性能的提升的方法,目前主要包括如下幾種,如果大家有什麼更好的提升Eclipse性能的方法或者好用的Eclipse插件、技巧等,歡迎大家回覆討論。

五、更改代碼提示快捷鍵

該方法主要針對使用myeclipse插件的人員,現在的代碼提示快捷鍵,默認爲ctrl+space,而我們輸入法切換也是,所以會有衝突。誰叫myeclipse是外國人做的呢。。根本不需要切換輸入法.

windows–>perferences–>general–>Keys

更改 content assist 爲 alt+/

同時由於alt+/已經被word completion佔用,所以得同時修改word completion的快捷鍵值

四、更改jsp默認打開的方式

該方法主要針對使用myeclipse插件的人員,安裝了myeclipse後,編輯jsp頁面,會打開他的編輯頁面,同時也有預覽頁面,速度很慢,不適合開發。所以更改之

windows–>perferences–>general–>editors->file associations

三、取消myeclipse的啓動項

隨着集成的插件的增多,eclipse會有很多的啓動項,而其中很多我們已經放棄使用或者都用不着,或者只用一兩個,取消前面不用的就可以

windows–>perferences–>general–>startup and shutdown

二、取消Eclipse拼寫檢查

1、拼寫檢查會給我們帶來不少的麻煩,我們的方法命名都會是單詞的縮寫,他也會提示有錯,所以最好去掉,沒有多大的用處

windows–>perferences–>general–>Editors->Text Editors->spelling

一、取消自動validation

validation有一堆,什麼xml、jsp、jsf、js等等,我們沒有必要全部都去自動校驗一下,只是需要的時候纔會手工校驗一下!

取消方法:
windows–>perferences–>Validation
除開Manual下面的複選框全部選中之外,其他全部不選
手工驗證方法:
在要驗證的文件上,單擊鼠標右鍵–>validate

------------------------------------------------------------------------------------------------
Q:gbk和UTF-8的區別
A:GBK的文字編碼是雙字節來表示的,即不論中、英文字符均使用雙字節來表示,只不過爲區分中文,將其最高位都定成1。
至於UTF-8編碼則是用以解決國際上字符的一種多字節編碼,它對英文使用8位(即一個字節),中文使用24位(三個字節)來編碼。對於英文字符較多的論壇則用UTF-8節省空間。GBK包含全部中文字符;UTF-8則包含全世界所有國家需要用到的字符。GBK是在國家標準GB2312基礎上擴容後兼容GB2312的標準(好像還不是國家標準)UTF-8編碼的文字可以在各國各種支持UTF8字符集的瀏覽器上顯示。比如,如果是UTF8編碼,則在外國人的英文IE上也能顯示中文,而無需他們下載IE的中文語言支持包。 所以,對於英文比較多的論壇,使用GBK則每個字符佔用2個字節,而使用UTF-8英文卻只佔一個字節。UTF8是國際編碼,它的通用性比較好,外國人也可以瀏覽論壇,GBK是國家編碼,通用性比UTF8差,不過UTF8佔用的數據庫比GBK大
------------------------------------------------------------------------------------------------
Q:關於eclipse讀取含有extjs的項目文件時卡死
A:打開項目的.project文件,將
<buildCommand>
                        <name>org.eclipse.wst.jsdt.core.javascriptValidator</name>
                        <arguments>
                        </arguments>
</buildCommand>
跟<nature>org.eclipse.wst.jsdt.core.jsNature</nature>
這兩個地方刪掉即可。。。。。
------------------------------------------------------------------------------------------------
Q:java.lang.ClassNotFoundException: javax.mail.MessagingException
A:導入mail.jar
------------------------------------------------------------------------------------------------
Q:[SQL] call test(CURDATE()) 
[Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Partition p01 VALUES LESS THAN (to_days("2012-10-02")), Partition p02 VALUES LES' at line 1

A:在MySQL 5.1中使用分區另一個讓人頭痛的問題是date類型(即日期列),你不能直接使用它們,必須使用YEAR或TO_DAYS轉換這些列,如:
CREATE TABLE t2  
(  
  dt DATE 
)  
PARTITION BY RANGE (TO_DAYS(dt))  
(  
  PARTITION p01 VALUES LESS THAN (TO_DAYS('2007-01-01')),  
  PARTITION p02 VALUES LESS THAN (TO_DAYS('2008-01-01')),  
  PARTITION p03 VALUES LESS THAN (TO_DAYS('2009-01-01')),  
  PARTITION p04 VALUES LESS THAN (MAXVALUE));  
但在MySQL 5.5中情況發生了很大的變化,現在在日期列上可以直接分區,並且方法也很簡單。

CREATE TABLE t2  
(  
  dt DATE 
)  
PARTITION BY RANGE COLUMNS (dt)  
(  
  PARTITION p01 VALUES LESS THAN ('2007-01-01'),  
  PARTITION p02 VALUES LESS THAN ('2008-01-01'),  
  PARTITION p03 VALUES LESS THAN ('2009-01-01'),  
  PARTITION p04 VALUES LESS THAN (MAXVALUE));  


------------------------------------------------------------------------------------------------
Q:ExtJs文件上傳form樣式總是和樣例不不符合,缺少圖標
A:要添加css樣式,在ext-all.css或者自己的css中添加
.x-form-file-wrap {  
        position: relative;  
        height: 22px;  
    }  
    .x-form-file-wrap .x-form-file {  
        position: absolute;  
        right: 0;  
        -moz-opacity: 0;  
        filter:alpha(opacity: 0);  
        opacity: 0;  
        z-index: 2;  
        height: 22px;  
    }  
    .x-form-file-wrap .x-form-file-btn {  
        position: absolute;  
        right: 0;  
        z-index: 1;  
    }  
    .x-form-file-wrap .x-form-file-text {  
        position: absolute;  
        left: 0;  
        z-index: 3;  
        color: #777;  
    }  


還要在自己的UserPanel.css或者ext-all.js中添加
.upload-icon{
	background-image: url(../images/upload.gif) !important;
}

見:http://blog.csdn.net/lzy_1515/article/details/5734500
------------------------------------------------------------------------------------------------
Q:在一個地方修改表單中備註的字段後,再在另一個地方修改表單內容就不成功。修改備註功能中用this.EditDescriptionWindow.editForm.form.reset();將表單內容重置,但是不成功,表單的內容還是之前在其中的內容
A:當兩個地方公用一個表單時,在一處通過表單完成後,用window.hide()將含有表單的窗口進行隱藏了,然而此時在另一處用window.show()顯示錶單窗口時出現的是之前編輯的內容,即使通過reset()也不能將表單重置,因爲此時的窗口只是隱藏窗口,一旦顯示窗口後,原先的值還是在表單中,表單重置也不起作用
所以要先顯示窗口window.show(),然後再加載表單數據,通過
formpanel.form.load({

url:"  ",

params:{

},

method:"GET/POST",

failure:function(form, action) {

				Ext.Msg.alert('提示', '數據加載失敗');}

});

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章