MyEclipse連接MySQL的問題淺析
MyEclipse連接MySQL的問題的來由,本來之前已經(jīng)在Eclipse下做好了那個名片管理系統(tǒng),可是用了段時間的Eclipse,覺得裝上各種插件之后Eclipse變得好卡好卡,點什么都要反應(yīng)好一會兒,尤其是開始的時候,于是決定改成用MyEclipse來學(xué)習(xí)Struts2。
遇到的第一個問題,就是在MyEclipse中連接數(shù)據(jù)庫MySQL。按照之前在Eclipse中連接MySQL的方法沒有成功,總是提示java.sql.SQLException: No suitable driver 也就是沒有找到合適的數(shù)據(jù)庫驅(qū)動程序。于是尋找解決方法,按照網(wǎng)上給出的若干方法嘗試,比如將mysql-connector的那個jar包放到各種各樣的位置,然后加一環(huán)境變量中等等。結(jié)果都沒有成功。于是又打開了MySQL自帶的那個幫助文檔connector-j,里面說的方法也是把那個jar包加到環(huán)境變量中,不過我試了也沒有成功。
然后我就懷疑是不是自己的測試程序?qū)戝e了,于是又把Eclipse打開,比照了一下,沒有發(fā)現(xiàn)問題。雖然按照connector-j的方法沒有成功,但也給了我一點提示,里面說如果是java-web開發(fā)的話,就要把那個jar包放到WEB-INF的lib目錄下,因為這是個標(biāo)準(zhǔn)的加載第三方庫的地方。于是我就想假設(shè)我不做web,只是一個application的測試程序,那么也就不要放到這個lib目錄下,而是放到j(luò)re system library下了。于是,把mysql驅(qū)動帶的那個jar包放到%java_home%下的各個可能目錄下,結(jié)果在MyEclipse的jre system library下都沒有發(fā)現(xiàn)這個包。仔細(xì)一看,嚇了一跳,發(fā)現(xiàn)問題的本質(zhì)所在,原來MyEclipse中默認(rèn)使用的是MyEclipse自己提供的一個jre庫,而不是使用我們安裝的那個。知道這個,問題就好辦了。在新建工程的時候,不用MyEclipse提供的那個jre庫,手動到目錄中選擇安裝的那個jre,這里有個小地方要注意一下,選擇jre home directory的時候選擇到j(luò)dk的根目錄就好了,比如說我的安裝在R:\program\jdk1.6,那么選擇的路徑也就是這個了,當(dāng)然還是要把MySQL驅(qū)動程序提供的那個包復(fù)制到%java_home%\jre\lib\ext中。再次執(zhí)行測試程序,輸出"connect successfully"
另外一種方法,就不需要在重建一個工程了。右鍵點擊JRE System Library->Build Path->Configure Build Path,再選擇右側(cè)的Edit按鈕,在Alternate JRE中選擇到自己安裝的那個,如果沒有,就點旁邊的Installed JREs來找到即可。
測試程序:
- package com.javaeye.rennyit.dbtest;
- import java.sql.DriverManager;
- import java.sql.Connection;
- import java.sql.SQLException;
- public class MySQLTest {
- private static String dburl = "jdbc:mysql://localhost:3306/Cardms?user=root&password=mysql";
- public MySQLTest() {
- try {
- Connection con = DriverManager.getConnection(dburl);
- System.out.println("connect successfully");
- } catch(SQLException se) {
- se.printStackTrace();
- }
- }
- public static void main(String[] args) {
- new MySQLTest();
- }
- }
當(dāng)然其中dburl根據(jù)實際情況確定,上面的測試程序中Cardms指在數(shù)據(jù)庫中自己建立的數(shù)據(jù)庫名。
MyEclipse連接MySQL的問題就介紹到這里,希望對你有幫助。
【編輯推薦】