2011-04-26 103 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"); 
} 

这只是concatinates值成一个长字符串,然后你可以返回值。

你需要,如果你使用这种方法导入JDBC JAR(假设它是一个MySQL数据库所使用。)

+0

我已经有一个JDBC罐和我使用的是Oracle数据库。我已经设法插入并从数据库中删除。我使用另一个名为DAL的类来进行连接。 – unnamed 2011-04-26 23:26:55

+0

我想我必须将查询的结果保存在一个字符串中,然后返回此字符串以获得期望的结果。但我怎么做到这一点? – unnamed 2011-04-26 23:27:46

+0

你可以迭代你的结果集,并提取你需要的数据...我已经编辑我的帖子上面... – travega 2011-04-27 00:00:22

相关问题