Как можно внести данные и вынести данные в базу данных при нажатие на кнопку?
Немного не понимаю как сделать чтобы можно было внести данные и вынести их. Вроде таблицу создал всё нормально. А каким образом теперь к ней обратиться хз Можете документацию выложить или совета дать на будущее
package org.example;
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableCellRenderer;
import javax.swing.table.TableModel;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.ObjectStreamException;
import java.sql.*;
public class Main {
private static DefaultTableModel model;
public static void main(String[] args) {
JLabel label = new JLabel("NAME");
label.setBounds(100,200,150,25);
label.setVisible(true);
JTextField text_field_name = new JTextField();
text_field_name.setBounds(150,200,150,25);
JLabel label1 = new JLabel("EMAIL");
label1.setBounds(100,240,150,25);
label1.setVisible(true);
JTextField text_field_name1 = new JTextField();
text_field_name1.setBounds(150,240,150,25);
JButton jButton = new JButton("ADD");
jButton.setBounds(150,280,150,25);
jButton.setVisible(true);
JFrame jFrame = new JFrame();
jFrame.setSize(500,500);
JPanel jPanel = new JPanel();
jPanel.setLayout(null);
jFrame.setLocationRelativeTo(null);
jFrame.setResizable(false);
jFrame.add(jPanel);
jPanel.add(text_field_name);
jPanel.add(label);
jPanel.add(text_field_name1);
jPanel.add(label1);
jPanel.add(jButton);
jFrame.setVisible(true);
try {
jButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
if(text_field_name.getText().trim().isEmpty() && text_field_name1.getText().trim().isEmpty()){
text_field_name1.setText("Введите данные");
text_field_name.setText("Введите данные");
}
else if(text_field_name.getText().length()>6 && text_field_name1.getText().length() >6 ){
Object[] [] data ={new String[]{text_field_name1.getText().toString().trim()},
new String [] {text_field_name.getText().toString().toString().trim()}};
String[] columnNames = {" "
};
JFrame jFrame1 = new JFrame();
jFrame1.setVisible(true);
jFrame1.setSize(500,500);
jFrame1.setLocationRelativeTo(null);
jFrame1.setResizable(false);
JPanel mainPane = new JPanel();
mainPane.setLayout(new BoxLayout(mainPane, BoxLayout.Y_AXIS));
JPanel buttonPane = new JPanel();
buttonPane.setLayout(new BoxLayout(buttonPane, BoxLayout.X_AXIS));
buttonPane.setMaximumSize(new Dimension(jFrame1.getWidth(), 30));
JTable table = new JTable(data, columnNames);
Button button1 = new Button("Внести данные в базу данных");
Button button2 = new Button("вынести данные в базу данных");
buttonPane.add(button1);
buttonPane.add(button2);
mainPane.add(table);
mainPane.add(buttonPane);
jFrame1.add(mainPane);
jFrame1.setVisible(true);
}
}
});
Connection connection1 = DriverManager.getConnection("jdbc:sqlite:sample.db");
Statement stmt = connection1.createStatement();
stmt.execute(
"CREATE TABLE IF NOT EXISTS Contacts (" +
"contact_id INTEGER PRIMARY KEY AUTOINCREMENT, " +
"first_name TEXT NOT NULL, " +
"last_name TEXT NOT NULL, " +
"phone TEXT NOT NULL, " +
"email TEXT NOT NULL" +
")"
);
ResultSet rs = stmt.executeQuery("SELECT * FROM Contacts");
while(rs.next()) {
System.out.println(rs.getInt("contact_id") + " " +
rs.getString("first_name" + text_field_name) + "1 " +
rs.getString("email" + text_field_name1) + "2 ");
}
} catch (SQLException e) {
throw new RuntimeException(e);
}
}
}
Ответы (1 шт):
Автор решения: resident
→ Ссылка
- Для записи данных в базу используйте INSERT запросы.
- Для чтения данных из базы используйте SELECT запросы.