0
我試圖測試德比示例源代碼。不幸的是,失敗:Cannot connect Derby database: connection refused如何啓動Derby服務器指定的端口被Java
有人告訴我,我還沒有開始的服務器。官方教程:
不啓動任何server.I沒有反饋後
C:\Apache\db-derby-10.4.1.3-bin\lib> java -jar derbyrun.jar server start
只是空行顯示和derbyrun.jar
結束。- 不顯示怎麼到指定的端口
我的問題是關於創建服務器:如何啓動指定端口上的服務器,以便發佈代碼工作:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.ResultSetMetaData;
public class Restaurants
{
private static String dbURL = "jdbc:derby://localhost:1526/myDB;create=true;user=me;password=mine";
private static String tableName = "restaurants";
// jdbc Connection
private static Connection conn = null;
private static Statement stmt = null;
public static void main(String[] args)
{
createConnection();
insertRestaurants(5, "LaVals", "Berkeley");
selectRestaurants();
shutdown();
}
private static void createConnection()
{
try
{
Class.forName("org.apache.derby.jdbc.ClientDriver").newInstance();
//Get a connection
conn = DriverManager.getConnection(dbURL);
}
catch (Exception except)
{
except.printStackTrace();
}
}
private static void insertRestaurants(int id, String restName, String cityName)
{
try
{
stmt = conn.createStatement();
stmt.execute("insert into " + tableName + " values (" +
id + ",'" + restName + "','" + cityName +"')");
stmt.close();
}
catch (SQLException sqlExcept)
{
sqlExcept.printStackTrace();
}
}
private static void selectRestaurants()
{
try
{
stmt = conn.createStatement();
ResultSet results = stmt.executeQuery("select * from " + tableName);
ResultSetMetaData rsmd = results.getMetaData();
int numberCols = rsmd.getColumnCount();
for (int i=1; i<=numberCols; i++)
{
//print Column Names
System.out.print(rsmd.getColumnLabel(i)+"\t\t");
}
System.out.println("\n-------------------------------------------------");
while(results.next())
{
int id = results.getInt(1);
String restName = results.getString(2);
String cityName = results.getString(3);
System.out.println(id + "\t\t" + restName + "\t\t" + cityName);
}
results.close();
stmt.close();
}
catch (SQLException sqlExcept)
{
sqlExcept.printStackTrace();
}
}
private static void shutdown()
{
try
{
if (stmt != null)
{
stmt.close();
}
if (conn != null)
{
DriverManager.getConnection(dbURL + ";shutdown=true");
conn.close();
}
}
catch (SQLException sqlExcept)
{
}
}
}
是服務器實際上運行後,鍵入C:\ Apache的\ DB-德比10.4.1.3斌\ LIB> Java的罐子derbyrun.jar服務器開始?你能找到這個過程嗎? – ozborn
@ozborn不,它不運行。該程序運行時間很短。 – Yoda
某處是否有錯誤日誌?您應該看到以下內容:使用基本服務器安全策略安裝的安全管理器。 Apache Derby的網絡服務器 - 10.4.1.3 - (648739)開始,並準備接受在端口1527連接於2008-04-28 17:13:13.921 GMT – ozborn