2
我寫了一個小shell腳本來調用一個java類,它調用mysql db並返回一些結果集。如何在shell腳本中加載mysql jar並連接到MYSQL數據庫
我的殼素文字:
CP="."
CP=$CP:/home/lib/mysql-connector-java-5.1.12-bin.jar
export CP
java -cp $CP com.util.Hello
和我的Java代碼如下,
Hello.Java:
public static void main(String[] str) {
Connection conn = null;
try
{
String userName = "root";
String password = "root";
String url = "jdbc:mysql://localhost:3306/test";
Class.forName ("com.mysql.jdbc.Driver").newInstance();
conn = DriverManager.getConnection (url, userName, password);
System.out.println ("Database connection established");
Statement s = conn.createStatement();
s.executeQuery ("select * from users");
ResultSet rs = s.getResultSet();
int count = 0;
while (rs.next())
{
System.out.println (count + " rows were retrieved");
count++;
}
rs.close();
s.close();
}
catch (Exception e) {
System.err.println ("Cannot connect to database server")
}
}
當我執行從Linux服務器下面我列舉得到的shell腳本錯誤,
無法連接到我在java class中打印的數據庫服務器
System.err.println ("Cannot connect to database server")
可以幫助我如何從shell腳本加載mysql jar嗎?
以及如何在運行我的java類時使用它?
如果我從war文件運行這個類它的工作。
在此先感謝。
如果你沒有捕獲並拋棄異常,那麼告訴問題是什麼會容易得多。做這個。刪除try/catch塊,向main方法聲明中添加「throws Exception」,再次運行,然後發佈整個堆棧跟蹤(錯誤消息)。 – Keith
同時刪除'newInstance()'部分。您只需要使用以下方法加載類:Class.forName(「com.mysql.jdbc.Driver」); – Aviram