2011-04-26 21 views
1

私には問題があり、私はこれを初めて使用しています。私は挿入し、データベースから削除するWebメソッドを作成する方法を知っているが、私はデータベースから何かを取得する方法を知らない。私は、クエリの結果を文字列に渡してから、この文字列を返さなければならないと思っています。私は以下の不完全なコードを持っています。Webサービスを使用してデータベースからデータを取得する

@WebMethod(operationName = "getSomethingByID") 
public String getSomethingByID(@WebParam(name = "idRocks") 
String idRocks) { 
    Dal dal = new Dal(); 
    ResultSet rs = dal.executeQuery("SELECT rocks FROM something WHERE idRocks ='" + idRocks+ "'"); 

     try 
     { 
      if(rs.next()) 
      { 


      } 
     } 
     catch(Exception e) 
     { 
      System.out.println(e.getMessage()); 
     } 

     return null; 
} 

この情報をデータベースから取得するにはどうすればよいですか?

おかげ

答えて

1

次のようなものが必要になります。

String query = "SELECT rocks FROM something WHERE idSomething='" + idSomething+ "'"; 

Class.forName("com.mysql.jdbc.Driver").newInstance(); 
String url = "jdbc:mysql://localhost:3306"; 
Connection conn = DriverManager.getConnection(url, "root", "root"); 
Statement stmt = conn.createStatement(); 

ResultSet rs; 
rs = stmt.executeQuery(query); 

String result = ""; 

while (rs.next()) { 
    //'col1' refers to the value in each row in a column called col1 in you table 
    result += rs.getString("col1"); 
} 

これをただ1つの長い文字列に値をconcatinates、あなたはその値を返すことができます。

あなたは、このアプローチを使用している場合、JDBCジャーをインポートする必要があります(それはあなたが使用しているMySQLのDBであると仮定。)

+0

私はすでにJDBCの瓶を持っていると私は、Oracle Databaseを使用しています。私はすでにデータベースに挿入して削除することができました。私はDALという名前の別のクラスを使用して接続を行います。 – unnamed

+0

私は、クエリの結果を文字列に保存してからこの文字列を返して欲望の結果を得なければならないと思います。しかし、私はこれをどのようにするのですか? – unnamed

+0

あなたの結果セットを反復し、必要なデータを抽出することができます。私は上記の私の投稿を編集しました。 – travega

関連する問題