codice:
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.Insets;
import java.awt.ScrollPane;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.*;
import java.util.Calendar;
import java.util.Scanner;
import java.util.Vector;
import javax.swing.BoxLayout;
import javax.swing.DefaultListModel;
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;
import javax.swing.ScrollPaneConstants;
import javax.swing.Scrollable;
import javax.swing.border.EmptyBorder;
import javax.swing.text.Document;
import java.sql.*;
public class Gestionale<OnClickListener> {
//istanzio gli oggetti
public DefaultListModel listmodel;
//database
Connection conn;
static Statement stmt;
PreparedStatement pstmt;
ResultSet rs;
//----------------------------------------------------------------------------------------------------------------
public Gestionale() {
//################################################################################
//################################################################################
//#############################creo le tabelle ###################################
try {
Class.forName("org.sqlite.JDBC");
Connection conn = DriverManager.getConnection("jdbc:sqlite:clienti.db");
//MAGAZZINO
stmt = conn.createStatement();
stmt.executeUpdate("CREATE TABLE IF NOT EXISTS magazzino " +
"(id INTEGER primary key autoincrement, " +
"prodotto TEXT NOT NULL, " +
"marca TEXT NOT NULL, " +
"tipologia TEXT , " +
"prezzo NUMERIC , " +
"quantità NUMERIC , " +
"costo_magazzino NUMERIC NOT NULL)");
stmt = conn.createStatement();
stmt.executeUpdate("CREATE TABLE IF NOT EXISTS clienti " +
"(id INTEGER primary key autoincrement, " +
"cognome TEXT NOT NULL, " +
"nome TEXT NOT NULL, " +
"email TEXT , " +
"note TEXT , " +
"cellulare NUMERIC , " +
"servizi TEXT , " +
"ultima_visita TEXT , " +
"data_aggiunta DATE , " +
"sesso TEXT NOT NULL)");
// stmt.close(); // rilascio le risorse
// pstmt.close(); // rilascio le risorse
conn.close(); // termino la connessione
}
catch(ClassNotFoundException e)
{
System.out.println(e);
}
catch(SQLException e)
{
System.out.println(e);
}
//################################################################################
//################################################################################
//############################parte grafica ######################################
//creo il pannello di AGGIUNGI CLIENTI ------------------------------------------------------------
final JFrame AGGIUNGICLIENTE = new JFrame ();
JPanel AGGIUNGICLIENTE1 = new JPanel (null);
final JTextField cognome = new JTextField (20);
final JTextField nome = new JTextField (20);
final JTextField email = new JTextField ();
final JTextField note = new JTextField ();
final JTextField cellulare = new JTextField ();
final JTextField servizi = new JTextField ();
final JTextField ultima_visita = new JTextField ();
final JTextField data_aggiunta = new JTextField ();
final JTextField sesso = new JTextField (8);
JButton bottoneAggiungiClienteDatabase = new JButton("aggiungi");
JLabel cognome1 = new JLabel ("cognome");
JLabel nome1 = new JLabel ("nome");
JLabel email1 = new JLabel ("email");
JLabel note1 = new JLabel ("note");
JLabel cellulare1 = new JLabel ("cellulare");
JLabel servizi1 = new JLabel ("servizi");
JLabel ultima_visita1 = new JLabel ("ultima_visita");
JLabel data_aggiunta1 = new JLabel ("data_aggiunta");
JLabel sesso1 = new JLabel ("sesso");
JLabel spazio = new JLabel ("");
bottoneAggiungiClienteDatabase.setBounds(250, 220, 100, 50);
cognome.setBounds (50, 100, 100, 30); //
nome.setBounds (50, 140, 100, 30); //
email.setBounds (50, 180, 100, 30); //campi testo
note.setBounds (50, 220, 100, 30); //
cellulare.setBounds (50, 260, 100, 30); //
servizi.setBounds (50, 300, 100, 30); //
ultima_visita.setBounds (50, 340, 100, 30); //
data_aggiunta.setBounds (50, 380, 100, 30); //
sesso.setBounds (50, 420, 100, 30); //
spazio.setBounds (50, 420, 100, 30); //
cognome1.setBounds (160, 100, 100, 30); //
nome1.setBounds (160, 140, 100, 30); //
email1.setBounds (160, 180, 100, 30); //
note1.setBounds (160, 220, 100, 30); //
cellulare1.setBounds (160, 260, 100, 30); //label
servizi1.setBounds (160, 300, 100, 30); //
ultima_visita1.setBounds (160, 340, 100, 30); //
data_aggiunta1.setBounds (160, 380, 100, 30); //
sesso1.setBounds (160, 420, 100, 30); //
spazio.setBounds (160, 420, 100, 30); //
AGGIUNGICLIENTE.add(bottoneAggiungiClienteDatabase);
AGGIUNGICLIENTE.add(cognome);
AGGIUNGICLIENTE.add(nome);
AGGIUNGICLIENTE.add(email);
AGGIUNGICLIENTE.add(note);
AGGIUNGICLIENTE.add(cellulare);
AGGIUNGICLIENTE.add(servizi);
AGGIUNGICLIENTE.add(ultima_visita);
AGGIUNGICLIENTE.add(data_aggiunta);
AGGIUNGICLIENTE.add(sesso);
AGGIUNGICLIENTE.add(cognome1);
AGGIUNGICLIENTE.add(nome1);
AGGIUNGICLIENTE.add(email1);
AGGIUNGICLIENTE.add(note1);
AGGIUNGICLIENTE.add(cellulare1);
AGGIUNGICLIENTE.add(servizi1);
AGGIUNGICLIENTE.add(ultima_visita1);
AGGIUNGICLIENTE.add(data_aggiunta1);
AGGIUNGICLIENTE.add(sesso1);
AGGIUNGICLIENTE.add(spazio);
AGGIUNGICLIENTE.setBackground(new Color (0,0,0));
AGGIUNGICLIENTE.setBounds(100, 100, 800, 650);
AGGIUNGICLIENTE.setVisible(true);
//################################################################################
//#######################eventi pulsante database ################################
bottoneAggiungiClienteDatabase.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e)
{
String stringacognome = cognome.getText();
String stringanome = nome.getText();
String stringaemail = email.getText();
String stringanote = note.getText();
String stringacellulare = cellulare.getText();
String stringaservizi = servizi.getText();
String stringaultima_visita = ultima_visita.getText();
String stringadata_aggiunta = data_aggiunta.getText();
String stringasesso = sesso.getText();
if((stringacognome.length() > 0) && (stringanome.length() > 0) && (stringacognome.length() > 0)){
try {
Class.forName("org.sqlite.JDBC");
Connection conn = DriverManager.getConnection("jdbc:sqlite:clienti.db");
stmt = conn.createStatement();
pstmt.executeQuery("INSERT INTO clienti(cognome, nome, email,note , cellulare,servizi,ultima_visita,data_aggiunta, sesso) " +
"VALUES('"+stringacognome+"','"+stringanome+"','"+stringaemail+"','"+stringanote+"','"+stringacellulare+"','"+stringaservizi+"','"+stringaultima_visita+"'" +
",'"+stringadata_aggiunta+"','"+stringasesso+"')");
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (ClassNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
cognome.setText("");
nome.setText("");
email.setText("");
note.setText("");
cellulare.setText("");
servizi.setText("");
ultima_visita.setText("");
data_aggiunta.setText("");
sesso.setText("");
}});}
//
//################################################################################
//################################################################################
//################################################################################
//################################################################################
//################################################################################
//################################################################################
//################################################################################
//#######################eventi pulsante database ################################
//creo il metodo main--------------------------------------------
public static void main(String[] args){
Gestionale a = new Gestionale();
}
};