本文整理汇总了Java中weka.experiment.InstanceQuery.disconnectFromDatabase方法的典型用法代码示例。如果您正苦于以下问题:Java InstanceQuery.disconnectFromDatabase方法的具体用法?Java InstanceQuery.disconnectFromDatabase怎么用?Java InstanceQuery.disconnectFromDatabase使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类weka.experiment.InstanceQuery
的用法示例。
在下文中一共展示了InstanceQuery.disconnectFromDatabase方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: setInstancesFromDBQ
import weka.experiment.InstanceQuery; //导入方法依赖的package包/类
/**
* Loads instances from an SQL query the user provided with the
* SqlViewerDialog, then loads the instances in a background process. This is
* done in the IO thread, and an error message is popped up if the IO thread
* is busy.
*
* @param url the database URL
* @param user the user to connect as
* @param pw the password of the user
* @param query the query for retrieving instances from
* @param sparse whether to create sparse or non-sparse instances
*/
public void setInstancesFromDBQ(String url, String user,
String pw, String query,
boolean sparse) {
if (m_IOThread == null) {
try {
InstanceQuery InstQ = new InstanceQuery();
InstQ.setDatabaseURL(url);
InstQ.setUsername(user);
InstQ.setPassword(pw);
InstQ.setQuery(query);
InstQ.setSparseData(sparse);
// we have to disconnect, otherwise we can't change the DB!
if (InstQ.isConnected())
InstQ.disconnectFromDatabase();
InstQ.connectToDatabase();
try {
addUndoPoint();
} catch (Exception ignored) {}
setInstancesFromDB(InstQ);
} catch (Exception ex) {
JOptionPane.showMessageDialog(this,
"Problem connecting to database:\n"
+ ex.getMessage(),
"Load Instances",
JOptionPane.ERROR_MESSAGE);
}
} else {
JOptionPane.showMessageDialog(this,
"Can't load at this time,\n"
+ "currently busy with other IO",
"Load Instances",
JOptionPane.WARNING_MESSAGE);
}
}
示例2: setInstancesFromDB
import weka.experiment.InstanceQuery; //导入方法依赖的package包/类
/**
* Loads instances from a database
*
* @param iq the InstanceQuery object to load from (this is assumed
* to have been already connected to a valid database).
*/
public void setInstancesFromDB(final InstanceQuery iq) {
if (m_IOThread == null) {
m_IOThread = new Thread() {
@Override
public void run() {
try {
m_Log.statusMessage("Reading from database...");
final Instances i = iq.retrieveInstances();
SwingUtilities.invokeAndWait(new Runnable() {
public void run() {
setInstances(new Instances(i));
}
});
iq.disconnectFromDatabase();
} catch (Exception ex) {
m_Log.statusMessage("Problem executing DB query "+m_SQLQ);
JOptionPane.showMessageDialog(PreprocessPanel.this,
"Couldn't read from database:\n"
+ ex.getMessage(),
"Load Instances",
JOptionPane.ERROR_MESSAGE);
}
m_IOThread = null;
}
};
m_IOThread.setPriority(Thread.MIN_PRIORITY); // UI has most priority
m_IOThread.start();
} else {
JOptionPane.showMessageDialog(this,
"Can't load at this time,\n"
+ "currently busy with other IO",
"Load Instances",
JOptionPane.WARNING_MESSAGE);
}
}
示例3: setInstancesFromDB
import weka.experiment.InstanceQuery; //导入方法依赖的package包/类
/**
* Loads instances from a database
*
* @param iq the InstanceQuery object to load from (this is assumed
* to have been already connected to a valid database).
*/
public void setInstancesFromDB(final InstanceQuery iq) {
if (m_IOThread == null) {
m_IOThread = new Thread() {
public void run() {
try {
m_Log.statusMessage("Reading from database...");
final Instances i = iq.retrieveInstances();
SwingUtilities.invokeAndWait(new Runnable() {
public void run() {
setInstances(new Instances(i));
}
});
iq.disconnectFromDatabase();
} catch (Exception ex) {
m_Log.statusMessage("Problem executing DB query "+m_SQLQ);
JOptionPane.showMessageDialog(PreprocessPanel.this,
"Couldn't read from database:\n"
+ ex.getMessage(),
"Load Instances",
JOptionPane.ERROR_MESSAGE);
}
m_IOThread = null;
}
};
m_IOThread.setPriority(Thread.MIN_PRIORITY); // UI has most priority
m_IOThread.start();
} else {
JOptionPane.showMessageDialog(this,
"Can't load at this time,\n"
+ "currently busy with other IO",
"Load Instances",
JOptionPane.WARNING_MESSAGE);
}
}
示例4: setInstancesFromDBQ
import weka.experiment.InstanceQuery; //导入方法依赖的package包/类
/**
* Loads instances from an SQL query the user provided with the
* SqlViewerDialog, then loads the instances in a background process. This is
* done in the IO thread, and an error message is popped up if the IO thread
* is busy.
* @param url the database URL
* @param user the user to connect as
* @param pw the password of the user
* @param query the query for retrieving instances from
*/
public void setInstancesFromDBQ(String url, String user,
String pw, String query) {
if (m_IOThread == null) {
try {
InstanceQuery InstQ = new InstanceQuery();
InstQ.setDatabaseURL(url);
InstQ.setUsername(user);
InstQ.setPassword(pw);
InstQ.setQuery(query);
// we have to disconnect, otherwise we can't change the DB!
if (InstQ.isConnected())
InstQ.disconnectFromDatabase();
InstQ.connectToDatabase();
try {
addUndoPoint();
} catch (Exception ignored) {}
setInstancesFromDB(InstQ);
} catch (Exception ex) {
JOptionPane.showMessageDialog(this,
Messages.getInstance().getString("PreprocessPanel_SetInstancesFromDBQ_JOptionPaneShowMessageDialog_Text_First")
+ ex.getMessage(),
Messages.getInstance().getString("PreprocessPanel_SetInstancesFromDBQ_JOptionPaneShowMessageDialog_Text_Second"),
JOptionPane.ERROR_MESSAGE);
}
} else {
JOptionPane.showMessageDialog(this,
Messages.getInstance().getString("PreprocessPanel_SetInstancesFromDBQ_JOptionPaneShowMessageDialog_Text_Third"),
Messages.getInstance().getString("PreprocessPanel_SetInstancesFromDBQ_JOptionPaneShowMessageDialog_Text_Fourth"),
JOptionPane.WARNING_MESSAGE);
}
}
示例5: setInstancesFromDB
import weka.experiment.InstanceQuery; //导入方法依赖的package包/类
/**
* Loads instances from a database
*
* @param iq the InstanceQuery object to load from (this is assumed
* to have been already connected to a valid database).
*/
public void setInstancesFromDB(final InstanceQuery iq) {
if (m_IOThread == null) {
m_IOThread = new Thread() {
public void run() {
try {
m_Log.statusMessage(Messages.getInstance().getString("PreprocessPanel_SetInstancesFromDB_Run_Log_StatusMessage_Text_First"));
final Instances i = iq.retrieveInstances();
SwingUtilities.invokeAndWait(new Runnable() {
public void run() {
setInstances(new Instances(i));
}
});
iq.disconnectFromDatabase();
} catch (Exception ex) {
m_Log.statusMessage(Messages.getInstance().getString("PreprocessPanel_SetInstancesFromDB_Run_Log_StatusMessage_Text_Second") + m_SQLQ);
JOptionPane.showMessageDialog(PreprocessPanel.this,
Messages.getInstance().getString("PreprocessPanel_SetInstancesFromDB_Run_JOptionPaneShowMessageDialog_Text_First")
+ ex.getMessage(),
Messages.getInstance().getString("PreprocessPanel_SetInstancesFromDB_Run_JOptionPaneShowMessageDialog_Text_Second"),
JOptionPane.ERROR_MESSAGE);
}
m_IOThread = null;
}
};
m_IOThread.setPriority(Thread.MIN_PRIORITY); // UI has most priority
m_IOThread.start();
} else {
JOptionPane.showMessageDialog(this,
Messages.getInstance().getString("PreprocessPanel_SetInstancesFromDB_Run_JOptionPaneShowMessageDialog_Text_Third"),
Messages.getInstance().getString("PreprocessPanel_SetInstancesFromDB_Run_JOptionPaneShowMessageDialog_Text_Fourth"),
JOptionPane.WARNING_MESSAGE);
}
}
示例6: getDataSet
import weka.experiment.InstanceQuery; //导入方法依赖的package包/类
/**
* Return the full data set in batch mode (header and all intances at once).
*
* @return the structure of the data set as an empty set of Instances
* @throws IOException if there is no source or parsing fails
*/
public Instances getDataSet() throws IOException {
if (m_DataBaseConnection == null && dataSource == null) {
throw new IOException("No source database has been specified");
}
if (getRetrieval() == INCREMENTAL) {
throw new IOException("Cannot mix getting Instances in both incremental and batch modes");
}
setRetrieval(BATCH);
Instances result = null;
// TODO perhaps add option for sparse data
try {
InstanceQuery iq = new InstanceQuery();
iq.setDataSource(dataSource);
iq.setDatabaseURL(m_URL);
iq.setUsername(m_User);
iq.setPassword(m_Password);
iq.setQuery(m_query);
result = iq.retrieveInstances();
if (m_DataBaseConnection.getUpperCase()) {
m_idColumn = m_idColumn.toUpperCase();
}
if (result.attribute(0).name().equals(m_idColumn)) {
result.deleteAttributeAt(0);
}
m_structure = new Instances(result, 0);
iq.disconnectFromDatabase();
} catch (Exception ex) {
printException(ex);
StringBuffer text = new StringBuffer();
if (m_query.equals("Select * from Results0")) {
text.append("\n\nDatabaseLoader options:\n");
Enumeration enumi = listOptions();
while (enumi.hasMoreElements()) {
Option option = (Option) enumi.nextElement();
text.append(option.synopsis() + '\n');
text.append(option.description() + '\n');
}
System.out.println(Thread.currentThread().getStackTrace()[1].getClassName() + text);
}
}
return result;
}