我在java soap服务上编写了一个操作来查询数据库,然后显示我在客户端jsp页面上搜索过的数据。但是,我无法表现出来,变量“rs”无法改变,我不知道为什么?有人可以帮我找到troboule吗? 这是我在肥皂服务上创建的操作:
@WebMethod(operationName = "query")
public String query(@WebParam(name = "parameter") String parameter) {
ResultSet rs;
try {
Connection con = data1.getConnection();
Statement statement = con.createStatement();
String QueryString;
QueryString = "SELECT * from stud where name= parameter";
rs = statement.executeQuery(QueryString);
while (rs.next()) {
System.out.println(rs.getInt(1) + " " + rs.getString(2) + "\n");
}
} catch (Exception ex) {
System.out.println("Unable to connect to batabase.");//TODO write your implementation code here:
}
//TODO write your implementation code here:
return null;
}
答案 0 :(得分:0)
我不完全确定我理解你的问题。也许你的意思是你可以查看控制台输出和rs这个空结果集的过程。你说rs不能改变,但是你很可能意识到rs存储了整个结果集而你只分配了一次,所以如果你的代码当前正在工作,它就不会“改变”。
一个显而易见的错误是参数是一个变量(实际上是一个参数!)但是你将它作为查询字符串的一部分包含在引号中。因此无论函数输入如何,您都在数据库中搜索名称“parameter”