データベースに接続し、データを取得し、それらをjsonオブジェクトに入れ、オブジェクトを表すjson文字列を送信する単純なWebサービスを構築しようとしています。コードは次のとおりです
私はEclipse Webサービスウィザードを使用しています。クライアントをテストするときに、次の例外が発生します。コード
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import org.json.JSONArray;
import org.json.JSONObject;
public class Services {
public String login(String email,String passwd){
String JDBC_DRIVER = "com.mysql.jdbc.Driver";
String DATABASE_URL = "jdbc:mysql://localhost/university";
Connection connection;
Statement statement;
ResultSet resSet;
//JSONArray resultarr=new JSONArray();
JSONObject result=new JSONObject();
boolean gotresult=false;
try {
Class.forName(JDBC_DRIVER);
connection=DriverManager.getConnection(DATABASE_URL,"root","");
statement=connection.createStatement();
resSet=statement.executeQuery("select * from users where email='"+email+"' and pass='"+passwd+"'");
while (resSet.next()){
String fname=resSet.getString(3);
String lname=resSet.getString(4);
int rank=resSet.getInt(5);
int id=resSet.getInt(1);
result.put("id", id);
result.put("fname", fname);
result.put("lname", lname);
result.put("rank", rank);
gotresult=true;
}
if (!gotresult){
result.put("error", "user not found");
}
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return (result.toString());
}
}