私は壁にぶつかりました。データベースでサーブレットが正常に動作しますが、サーバー上でクラッシュしますか?
Javaサーブレットを使用してAndroidアプリの簡単なログインと登録をしようとしていますが、問題はTomcat/Eclipseでローカルに実行するとすべてうまくいきますが、データベース部分がまったく動作していないようです。
私はそれが実際にドライバに問題があると思うが、私はAndroid Appを通してそれに接続するので、ログを取得できない。
データベースをfreesqldatabaseにデプロイしました。私はtomcatディレクティアリーに自分のsqlドライバを置き、それはTomcatライブラリにある何千回もチェックしました。 JDBCドライバはデプロイ中に問題を引き起こすことは間違いないが、アプリのアンドロイド部分ですべてがOKである理由が分からない。ここで
は、サーブレットのコードです:私は気づい
Connection connection = null;
boolean check = false;
//this part does not work online
try {
Class.forName("driver");
connection = DriverManager.getConnection("jdbc:mysql://sql7.freesqldatabase.com/sql7112115", "sql7112115", "xxxxxxxxxxx");
response.getWriter().append("4");
String query = "select * from userdata where username = ? and pass = ? ";
response.getWriter().append("5");
PreparedStatement statement = connection.prepareStatement(query);
statement.setString(1, "Sue");
statement.setString(2, "Pass1");
ResultSet result = statement.executeQuery();
check = result.next();
connection.close();
} catch (ClassNotFoundException e) {
System.out.print("Driver error");
} catch (SQLException e) {
System.out.print("SQL error");
}
if (check) {
response.getWriter().append("Login succesful");
} else {
response.getWriter().append("Login unsuccesful");
}
}
[JawsDB](https://elements.heroku.com/addons/jawsdb)のようなHeroku MySqlデータベースプロバイダの1つを使用し、[JDBCを使用するためのドキュメント](https:// devcenter.heroku.com/articles/jawsdb#using-with-java) – codefinger
あなたの例外処理は本当に悪いです。 'System.out.print(..)'を 'throw new ServletException(e)'に置き換えてください。この方法でブラウザのエラーページに直面します。 – BalusC