Java 从数据库中搜索并显示输出

Java 从数据库中搜索并显示输出,java,sql,oracle,swing,netbeans,Java,Sql,Oracle,Swing,Netbeans,我有一个JTable,其中显示数据库表中的所有数据,还有一个JTextField,其中我将搜索字符串,例如联系人的“FIRSTNAME”,然后我想使用JOptionPane在消息中显示输出 请告诉我我做错了什么 package ContactPackage; import java.sql.Connection; import javax.swing.JOptionPane; import oracle.jdbc.OraclePreparedStatement; import oracle.j

我有一个
JTable
,其中显示数据库表中的所有数据,还有一个
JTextField
,其中我将搜索字符串,例如联系人的
“FIRSTNAME”
,然后我想使用
JOptionPane
在消息中显示输出

请告诉我我做错了什么

package ContactPackage;

import java.sql.Connection;
import javax.swing.JOptionPane;
import oracle.jdbc.OraclePreparedStatement;
import oracle.jdbc.OracleResultSet;

public class viewContacts extends javax.swing.JFrame {

Connection conn = null;
OraclePreparedStatement pst = null;
OracleResultSet rs = null;

public viewContacts() {
    initComponents();
}

private void searchContacts()
{
    conn = JavaConnectDb.ConnecterDb();
    try
    {
        String sql = "select * from CONTACTS where FNAME=?";
        pst = (OraclePreparedStatement) conn.prepareStatement(sql);
        pst.setString(1, searchContact.getText());
        rs = (OracleResultSet) pst.executeQuery();
        if(rs.next()) {
            JOptionPane.showMessageDialog(null, sql);

        }else{
            JOptionPane.showMessageDialog(null, "Not Found");
        }

    }catch (Exception e) { JOptionPane.showMessageDialog(null, e); }
}

private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {                                         
    // TODO add your handling code here:
    searchContacts();
} 
此处显示的是SQL查询文本,而不是结果。

您需要从返回的结果集
rs

中获取结果。有一件事是,您必须在检索结果后关闭连接。在您的帮助下,Hanks能够解决此问题。
    if(rs.next()) {
        JOptionPane.showMessageDialog(null, sql);