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