Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package TableQueryTool;
- import java.awt.BorderLayout;
- import java.awt.Color;
- import java.awt.event.ActionEvent;
- import java.awt.event.ActionListener;
- import java.sql.SQLException;
- import javax.swing.JButton;
- import javax.swing.JFrame;
- import javax.swing.JLabel;
- import javax.swing.JOptionPane;
- import javax.swing.JPanel;
- import javax.swing.JScrollPane;
- import javax.swing.JTable;
- //import javax.swing.JTextArea;
- import javax.swing.JTextField;
- @SuppressWarnings("serial")
- public class TableFrame extends JFrame {
- private JTextField queryField;
- private JTable resultTable;
- private TableModel tableModel;
- //private JTextArea queryArea;
- private JScrollPane scroll;
- static final String DRIVER = "oracle.jdbc.driver.OracleDriver";
- static final String DATABASE_URL = "jdbc:oracle:thin:@localhost:1521:MINIDB";
- static final String USERNAME = "student";
- static final String PASSWORD = "xios";
- //static final String QUERY = "SELECT FIRST_NAME FROM EMPLOYEES";
- public TableFrame() {
- super("Table Frame");
- this.setLayout(new BorderLayout());
- JPanel north = new JPanel();
- north.setLayout(new BorderLayout());
- JLabel queryLabel = new JLabel("Query: ");
- north.add(queryLabel,BorderLayout.WEST);
- queryField = new JTextField(50);
- north.add(queryField,BorderLayout.CENTER);
- JButton queryButton = new JButton("Execute");
- north.add(queryButton,BorderLayout.EAST);
- this.add(north, BorderLayout.NORTH);
- resultTable = new JTable();
- resultTable.setBackground(Color.LIGHT_GRAY);
- scroll = new JScrollPane(resultTable);
- this.add(scroll,BorderLayout.CENTER);
- ActionHandler ah = new ActionHandler();
- queryField.addActionListener(ah); // respond to "enter" in query field
- queryButton.addActionListener(ah); // respond to button pressed
- }
- private void executeQuery() {
- // TODO: Execute database query, get results, display results
- try {
- Class.forName(DRIVER);
- } catch (ClassNotFoundException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- try {
- tableModel = new TableModel(DATABASE_URL, USERNAME, PASSWORD, queryField.getText());
- // display query from textfield
- System.out.println("Query: " + queryField.getText());
- // put output in JTable
- if (tableModel != null) {
- resultTable.setModel(tableModel);
- }
- }
- catch (SQLException sqlEx) {
- JOptionPane.showMessageDialog(null, sqlEx.getMessage(), "Database error", JOptionPane.ERROR_MESSAGE);
- tableModel.disconnectFromDatabase();
- System.exit(0);
- }
- }
- private class ActionHandler implements ActionListener
- {
- public void actionPerformed(ActionEvent ae) {
- executeQuery();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement