函数返回resultset,进入另一个类-JAVA
我是Java新手。我正在做这件事,因为它会产生错误,请告诉我为什么要使用此函数dispatchUncaughtException。我做得对吗?如果我不是这样,这件事怎么可能呢 这是数据收集类函数返回resultset,进入另一个类-JAVA,java,function,return,resultset,Java,Function,Return,Resultset,我是Java新手。我正在做这件事,因为它会产生错误,请告诉我为什么要使用此函数dispatchUncaughtException。我做得对吗?如果我不是这样,这件事怎么可能呢 这是数据收集类 public class dataCollection { private ResultSet my_rs1 = null; public ResultSet mydata() { try { String get_dat
public class dataCollection {
private ResultSet my_rs1 = null;
public ResultSet mydata()
{
try
{
String get_data_query = "SELECT * FROM my_table ";
my_rs1 = cn.stmt.executeQuery(aggregator_data_query);
} catch(SQLException SQLex)
{
System.out.println("SQL Error: " + SQLex.getMessage());
}
return my_rs1;
}
}
这是callingClass//我们称之为ResultSet
public class callingClass
{
dataCollection dc = new dataCollection;
private ResultSet my_call_data = dc.mydata();
while(my_call_data.next())
{
//Code Here
}
}
编辑
Exception in thread "Thread-2" java.lang.NullPointerException
at sms_sender.dataCollection.aggregator_data(dataCollection.java:29)
at sms_sender.threadClass.run(threadClass.java:27)
代码应该在java中的函数或块中
public class callingClass
{
dataCollection dc = new dataCollection;
private ResultSet my_call_data;
public void showData(){
my_call_data = dc.mydata();
while(my_call_data.next()){
//Code Here
}
}
}
发生的情况是,您没有捕获异常,因此将尝试转发此异常 首先尝试捕获异常并向我们提供stacktrace:
catch (Exception e) {
e.printStackTrace(); // if you are not using a logger like log4j just print it.
}
那么我建议你多读一些关于
最后,请注意,类名应该以大写字母开头,请参见
读得好:)
PS:我没有注意到您的代码不在方法/函数中,但我认为这只是一个错误的编辑,因为类甚至不会编译。请更正您的参数:
String get_data_query = "SELECT * FROM my_table";
my_rs1 = cn.stmt.executeQuery(get_data_query);
编辑:
步骤2=>
检查数据库连接是否正常工作。我认为您的stmt为空或不正确。第二个代码段将无法编译。。。我猜是打字错误。你能发布一个stacktrace吗?试试做公共结果集my_rs1=null;在dataCollection类中,您可能试图访问作用域之外的私有成员stacktrace是什么?:(@ajitksharma..No I do it public..但结果是一样的。[什么是堆栈跟踪]您是否面临同样的问题。?几乎是的!我在问题中提到过。是的,这是我写的错误。我更正了它,但问题仍然是一样的。:(Thx..it run:)。语句stmt为null。