Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package bazaddx;
- import java.awt.BorderLayout;
- import java.awt.EventQueue;
- import java.awt.event.ActionEvent;
- import java.awt.event.ActionListener;
- import javax.swing.*;
- import javax.swing.JPanel;
- import javax.swing.border.EmptyBorder;
- import javax.swing.JTable;
- import javax.swing.BoxLayout;
- import javax.swing.table.DefaultTableModel;
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.PreparedStatement;
- import java.sql.ResultSet;
- import java.sql.ResultSetMetaData;
- import java.sql.SQLException;
- import java.sql.Statement;
- import java.text.ParseException;
- import java.text.SimpleDateFormat;
- import java.util.Vector;
- public class PietriWager extends JFrame implements ActionListener {
- private JPanel contentPane;
- private JScrollPane scrollPane;
- private final ButtonGroup buttonGroup = new ButtonGroup();
- private String querry;
- private ResultSet resultSet;
- private JRadioButtonMenuItem rdbtnmntmStatystykiGraczy;
- private JRadioButtonMenuItem mntmZawodnicy;
- private JRadioButtonMenuItem mntmPierwszySkad;
- private JRadioButtonMenuItem mntmUbiege;
- private JRadioButtonMenuItem mntmNadchodzce;
- JButton btnDodaj;
- JButton btnUsuZaznaczony;
- private static Statement newStatement;
- private DefaultTableModel model;
- private JTable table;
- private Table zawodnicy = new Table(0, "zawodnicy");
- private Table meczeubiegle = new Table(0, "meczeubiegle");
- private Table meczenadchodzace = new Table(0, "meczenadchodzace");
- private Table pierwszysklad = new Table(0, "pierwszysklad");
- private Table statystyki = new Table(0, "statystyki");
- private String actualTable = null;
- /**
- * Launch the application.
- * @throws ParseException
- */
- public static void main(String[] args) throws ClassNotFoundException, ParseException {
- Class.forName("org.sqlite.JDBC");
- Connection connection = null;
- try {
- connection = DriverManager.getConnection("jdbc:sqlite:sample.db");
- newStatement = connection.createStatement();
- //newStatement.setQueryTimeout(30); // set timeout to 30 sec.
- newStatement.executeUpdate("DROP TABLE zawodnicy");
- newStatement.executeUpdate("DROP TABLE meczeubiegle");
- newStatement.executeUpdate("DROP TABLE meczenadchodzace");
- newStatement.executeUpdate("DROP TABLE pierwszysklad");
- newStatement.executeUpdate("DROP TABLE statystyki");
- }
- catch (SQLException e1) {
- // TODO Auto-generated catch block
- JOptionPane.showMessageDialog(null, e1.getMessage());
- }
- connection = null;
- try{
- connection = DriverManager.getConnection("jdbc:sqlite:sample.db");
- newStatement = connection.createStatement();
- newStatement.setQueryTimeout(30);
- newStatement.executeUpdate("CREATE TABLE IF NOT EXISTS pierwszysklad (id INTEGER, rozgrywajacy int, obronca int, niski_skrzydlowy int, silny_skrzydlowy int, center int)");
- newStatement.executeUpdate("CREATE TABLE IF NOT EXISTS meczenadchodzace (id INTEGER, data Date, druzyna String)");
- newStatement.executeUpdate("CREATE TABLE IF NOT EXISTS meczeubiegle (id INTEGER, data Date, wynik String, drużyna String)");
- newStatement.executeUpdate("CREATE TABLE IF NOT EXISTS statystyki (id INTEGER, pkt int, asysty int, odbiory int, zbiorki int)");
- newStatement.executeUpdate("CREATE TABLE IF NOT EXISTS zawodnicy (id INTEGER, imie STRING, nazwisko String)");
- } catch (SQLException e2) {
- // TODO Auto-generated catch block
- JOptionPane.showMessageDialog(null, e2.getMessage());
- }
- try {
- connection = DriverManager.getConnection("jdbc:sqlite:sample.db");
- Statement stmt = connection.createStatement();
- SimpleDateFormat dt = new SimpleDateFormat("dd-MM-yyyy'T'HH:mm");
- ///////////////////////////////////////////////////////////////////////MECZE UBIEGLE
- String du [] = {"20-02-2016T20:00","20-02-2016T19:45","15-02-2016T18:45","10-02-2016T22:00","18-02-2016T21:30"};
- String druzynau [] = {"New Jersey Bets","Milwaukee Bugs","Memphis TeddyBears","Detroit Poverty","Chicago Balls"};
- String wynik [] = {"99:90","98:15","120:80","88:90","100:101"};
- for(int i=0;i<du.length;i++)
- stmt.executeUpdate("INSERT INTO meczeubiegle values('"+(i+1)+"', '"+druzynau[i]+"', '"+wynik[i]+"', '"+dt.parse(du[i])+"')");
- ///////////////////////////////////////////////////////////////////////MECZE NADCHODZACE
- String dn [] = {"31-03-2016T20:00","22-03-2016T21:00","20-03-2016T20:30","14-03-2016T22:45","18-03-2016T19:10"};
- String druzynan [] = {"New Orleans Penicillins", "Cleveland Caravels", "Golden State Peacekeepers", "Minnesota Bunnies", "Los Angeles Ponds"};
- for(int i=0;i<dn.length;i++)
- stmt.executeUpdate("INSERT INTO meczenadchodzace values(' "+(i+1)+"', '"+dt.parse(dn[i])+"','"+druzynan[i]+"')");
- ////////////////////////////////////////////////////////////////////////////// ZAWODNICY
- String imie [] = {"Peter","Pallar","William","Paul","LeBron"};
- String nazwisko [] = {"Parker","Pawnson","Szejkspir","CP3","James-Błąd"};
- for(int i=0;i<imie.length;i++)
- stmt.executeUpdate("INSERT INTO zawodnicy values(' "+(i+1)+"', '"+imie[i]+"', '"+nazwisko[i]+"')");
- ////////////////////////////////////////////////////////////////////////////// STATYSTYKI
- int punkty[] = {36,12,15,18,8};
- int odbiory[] = {1,0,0,2,9};
- int asysty[] = {5,3,8,4,5};
- int zbiorki[] = {1,2,4,0,12};
- for(int i=0;i<imie.length;i++)
- stmt.executeUpdate("INSERT INTO statystyki values(' "+(i+1)+"', '"+punkty[i]+"', '"+asysty[i]+"', '"+odbiory[i]+"', '"+zbiorki[i]+"')");
- ///////////////////////////////////////////////////////////////////////////// PIERWSZA PIATKA
- //int idmeczu[]={1,2,3,4,5};
- int idpg[]={1,1,1,1,1};int idsg[]={2,2,2,2,2};int idsf[]={3,3,3,3,3}; int idpf[]={4,4,4,4,4};int idc[]={5,5,5,5,5};
- for(int i=0;i<idpg.length;i++)
- stmt.executeUpdate("INSERT INTO pierwszysklad values(' "+(i+1)+"', '"+idpg[i]+"', '"+idsg[i]+"', '"+idsf[i]+"', '"+idpf[i]+"', '"+idc[i]+"')");
- } catch (SQLException e3) {
- // TODO Auto-generated catch block
- JOptionPane.showMessageDialog(null, e3.getMessage());
- }
- EventQueue.invokeLater(new Runnable() {
- public void run() {
- try {
- PietriWager frame = new PietriWager();
- frame.setVisible(true);
- } catch (Exception e) {
- JOptionPane.showMessageDialog(null, e.getMessage());
- }
- }
- });
- }
- /**
- * Create the frame.
- */
- public PietriWager() {
- setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- setBounds(100, 100, 450, 300);
- JMenuBar menuBar = new JMenuBar();
- setJMenuBar(menuBar);
- JMenu mnMenu = new JMenu("Menu");
- menuBar.add(mnMenu);
- JMenu mnZnajdZawodnika = new JMenu("Znajd\u017A Zawodnika");
- mnMenu.add(mnZnajdZawodnika);
- JMenuItem mntmPoImieniu = new JMenuItem("Po imieniu");
- mntmPoImieniu.setActionCommand("findPlayerByName");
- mnZnajdZawodnika.add(mntmPoImieniu);
- JMenuItem mntmPoNazwisku = new JMenuItem("Po nazwisku");
- mntmPoNazwisku.setActionCommand("findPlayerBySurname");
- mnZnajdZawodnika.add(mntmPoNazwisku);
- JMenuItem mntmPoWieku = new JMenuItem("Po wieku");
- mntmPoWieku.setActionCommand("findPlayerByName");
- mnZnajdZawodnika.add(mntmPoWieku);
- JMenu mnZnajdMecz = new JMenu("Znajd\u017A Mecz");
- mnMenu.add(mnZnajdMecz);
- JMenuItem mntmPoPrzeciwniku = new JMenuItem("Przeciwko danej dru\u017Cynie");
- mntmPoPrzeciwniku.setActionCommand("findGameByOponent");;
- mnZnajdMecz.add(mntmPoPrzeciwniku);
- JMenuItem mntmWOkrelonymCzasie = new JMenuItem("W okre\u015Blonym czasie");
- mntmWOkrelonymCzasie.setActionCommand("findGameByDate");
- mnZnajdMecz.add(mntmWOkrelonymCzasie);
- JMenu mnWidok = new JMenu("Widok");
- menuBar.add(mnWidok);
- JRadioButtonMenuItem mntmZawodnicy = new JRadioButtonMenuItem("Zawodnicy");
- mntmZawodnicy.setActionCommand("zawodnicy");
- buttonGroup.add(mntmZawodnicy);
- mnWidok.add(mntmZawodnicy);
- JRadioButtonMenuItem mntmPierwszySkad = new JRadioButtonMenuItem("Pierwszy Sk\u0142ad");
- buttonGroup.add(mntmPierwszySkad);
- mntmPierwszySkad.setActionCommand("pierwszysklad");
- mnWidok.add(mntmPierwszySkad);
- JRadioButtonMenuItem mntmNadchodzce = new JRadioButtonMenuItem("Mecze Nadchodz\u0105ce");
- mntmNadchodzce.setActionCommand("meczenadchodzace");
- buttonGroup.add(mntmNadchodzce);
- mnWidok.add(mntmNadchodzce);
- JRadioButtonMenuItem mntmUbiege = new JRadioButtonMenuItem("Mecze Ubieg\u0142e");
- mntmUbiege.setActionCommand("meczeubiegle");
- buttonGroup.add(mntmUbiege);
- mnWidok.add(mntmUbiege);
- JRadioButtonMenuItem rdbtnmntmStatystykiGraczy = new JRadioButtonMenuItem("Statystyki Graczy");
- rdbtnmntmStatystykiGraczy.setActionCommand("statystyki");
- buttonGroup.add(rdbtnmntmStatystykiGraczy);
- mnWidok.add(rdbtnmntmStatystykiGraczy);
- btnDodaj = new JButton("Dodaj");
- menuBar.add(btnDodaj);
- btnUsuZaznaczony = new JButton("Usu\u0144 zaznaczony");
- menuBar.add(btnUsuZaznaczony);
- rdbtnmntmStatystykiGraczy.addActionListener(this);
- mntmNadchodzce.addActionListener(this);
- mntmUbiege.addActionListener(this);
- mntmPierwszySkad.addActionListener(this);
- mntmZawodnicy.addActionListener(this);
- mntmPoImieniu.addActionListener(this);
- mntmPoNazwisku.addActionListener(this);
- mntmPoWieku.addActionListener(this);
- mntmPoPrzeciwniku.addActionListener(this);
- mntmWOkrelonymCzasie.addActionListener(this);
- btnDodaj.addActionListener(this);
- btnUsuZaznaczony.addActionListener(this);
- contentPane = new JPanel();
- contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
- setContentPane(contentPane);
- contentPane.setLayout(new BoxLayout(contentPane, BoxLayout.X_AXIS));
- JScrollPane scrollPane_1 = new JScrollPane();
- contentPane.add(scrollPane_1);
- table = new JTable();
- scrollPane_1.setViewportView(table);
- }
- public static DefaultTableModel buildTableModel(ResultSet rs)
- throws SQLException {
- ResultSetMetaData metaData = rs.getMetaData();
- Vector<String> columnNames = new Vector<String>();
- int columnCount = metaData.getColumnCount();
- for (int column = 1; column <= columnCount; column++) {
- columnNames.add(metaData.getColumnName(column));
- }
- Vector<Vector<Object>> data = new Vector<Vector<Object>>();
- while (rs.next()) {
- Vector<Object> vector = new Vector<Object>();
- for (int columnIndex = 1; columnIndex <= columnCount; columnIndex++) {
- vector.add(rs.getObject(columnIndex));
- }
- data.add(vector);
- }
- return new DefaultTableModel(data, columnNames);
- }
- public void insertRow(int ID){
- int rowCount = model.getRowCount();
- int columnCount = model.getColumnCount();
- String tempString = "";
- for(int i = 0;i<columnCount-1;i++)
- tempString+=" , ''";
- querry = "INSERT INTO " + actualTable + " VALUES ('" + Integer.toString(ID) + "'" + tempString +")";
- try {
- newStatement.executeUpdate(querry);
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- JOptionPane.showMessageDialog(null, e.getMessage());
- }
- }
- public void updateTable(){
- int rowCount = model.getRowCount();
- int columnCount = model.getColumnCount();
- String columnNames = "";
- for(int i = 0;i<rowCount;i++){
- for (int column = 0; column < columnCount; column++) {
- columnNames+=model.getColumnName(column)+ " = '" + model.getValueAt(i, column).toString() + "' , ";
- }
- querry = "UPDATE " + actualTable + " SET " + columnNames.substring(0, columnNames.length()-2) + " WHERE id = " + Integer.toString(i+1);
- try {
- newStatement.executeUpdate(querry);
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- JOptionPane.showMessageDialog(null, e.getMessage());
- }
- columnNames="";
- }
- }
- public int incrementID(Table t1, Table t2, Table t3, Table t4, Table t5){
- int id = 0;
- if(actualTable.equals(t1.getName())){
- id=t1.getID();
- t1.setID(id+1);
- }
- else if(actualTable.equals(t2.getName())){
- id=t2.getID();
- t2.setID(id+1);
- }
- else if(actualTable.equals(t3.getName())){
- id=t3.getID();
- t3.setID(id+1);
- }
- else if(actualTable.equals(t4.getName())){
- id=t4.getID();
- t4.setID(id+1);
- }
- else if(actualTable.equals(t5.getName())){
- id=t5.getID();
- t5.setID(id+1);
- }
- return id;
- }
- public void decrementID(Table t1, Table t2, Table t3, Table t4, Table t5){
- int id = 0;
- if(actualTable.equals(t1.getName())){
- t1.setID(Integer.parseInt(model.getValueAt(model.getRowCount()-1, 0).toString())+1);
- }
- else if(actualTable.equals(t2.getName())){
- t1.setID(Integer.parseInt(model.getValueAt(model.getRowCount()-1, 0).toString())+1);
- }
- else if(actualTable.equals(t3.getName())){
- t1.setID(Integer.parseInt(model.getValueAt(model.getRowCount()-1, 0).toString())+1);
- }
- else if(actualTable.equals(t4.getName())){
- t1.setID(Integer.parseInt(model.getValueAt(model.getRowCount()-1, 0).toString())+1);
- }
- else if(actualTable.equals(t5.getName())){
- t1.setID(Integer.parseInt(model.getValueAt(model.getRowCount()-1, 0).toString())+1);
- }
- }
- public void setTableID(Table t1, Table t2, Table t3, Table t4, Table t5, int rowCount){
- if(actualTable.equals(t1.getName())){
- t1.setID(rowCount+1);
- }
- else if(actualTable.equals(t2.getName())){
- t2.setID(rowCount+1);
- }
- else if(actualTable.equals(t3.getName())){
- t3.setID(rowCount+1);
- }
- else if(actualTable.equals(t4.getName())){
- t4.setID(rowCount+1);
- }
- else if(actualTable.equals(t5.getName())){
- t5.setID(rowCount+1);
- }
- }
- public void executeQuerryAndUpdateTable(String querry) throws SQLException{
- resultSet = newStatement.executeQuery(querry);
- model = buildTableModel(resultSet);
- table.setModel(model);
- }
- @Override
- public void actionPerformed(ActionEvent arg0) {
- if(arg0.getActionCommand().equals("findGame")){
- buttonGroup.clearSelection();
- String inputValue = JOptionPane.showInputDialog("Podaj nazwę przeciwnika");
- }
- else if(arg0.getActionCommand().equals("findPlayerByName")){
- buttonGroup.clearSelection();
- String inputValue = JOptionPane.showInputDialog("Podaj imię gracza");
- querry = "SELECT * FROM zawodnicy WHERE name = " + "'"+inputValue+"'";
- try {
- executeQuerryAndUpdateTable(querry);
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- JOptionPane.showMessageDialog(null, e.getMessage());
- }
- }
- else if(arg0.getSource()== btnDodaj){
- try{
- int colCount = model.getColumnCount();
- Object tempObj[] = new Object[colCount];
- int tempId = incrementID(zawodnicy, meczeubiegle, meczenadchodzace, pierwszysklad, statystyki);
- tempObj[0]=(tempId);
- insertRow(tempId);
- updateTable();
- for(int i = 1;i<colCount;i++) tempObj[i] = " ";
- model.addRow(tempObj);
- }
- catch (NullPointerException e){
- JOptionPane.showMessageDialog(null,"Wybierz tabelę");
- }
- }
- else if(arg0.getSource()== btnUsuZaznaczony){
- try{
- int selectedRow = table.getSelectedRow();
- if(selectedRow != -1){
- querry = "DELETE FROM " + actualTable + " WHERE ID = " + Integer.toString(selectedRow+1);
- try {
- newStatement.executeUpdate(querry);
- decrementID(zawodnicy, meczeubiegle, meczenadchodzace, pierwszysklad, statystyki);
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- JOptionPane.showMessageDialog(null, e.getMessage());
- }
- model.removeRow(selectedRow);
- }
- else JOptionPane.showMessageDialog(null, "Nie wybrano żadnego wiersza");
- }
- catch (NullPointerException e){
- JOptionPane.showMessageDialog(null,"Wybierz tabelę");
- }
- }
- else{
- actualTable = arg0.getActionCommand();
- querry = "SELECT * from " + arg0.getActionCommand();
- try {
- executeQuerryAndUpdateTable(querry);
- setTableID(zawodnicy, meczeubiegle, meczenadchodzace, pierwszysklad, statystyki, model.getRowCount());
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- JOptionPane.showMessageDialog(null, e.getMessage());
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement