Create a Java FX GUI program that allows the user to insert

Create a Java FX GUI program that allows the user to insert data into a SQL database. The goal of this project is to write a basic Java FX GUI database program. The program should have a list component which on launching the program shows the contents of the database. Also the program should present the user with a form of TextFields for capturing data to insert into a database (use the CPU database you created in previous projects). The form should also have a submit button which will attempt to create a new record in the database. The data should be validated first (numbers, text, blank, etc.). If the data is invalid nothing should be inserted into the database and a warning message should be presented to the user via a Label component. If a record is inserted into the database the List should be updated to include the new record. The report needs to be in the following format: Intel Core i7-6700HQ @ 2.60GHz: $1,509.00 Intel Core i7-3770K @ 3.50GHz: $560.50 Intel Core i5-3570K @ 3.40GHz: $477.23 Intel Core i7-4700MQ @ 2.40GHz: $467.40

SQL database: create database intelprocessors; use intelprocessors; show tables; create table computers(id int not null auto_increment primary key, cpuname varchar( 32 ) not null, performance varchar( 32 ) not null, price float); describe computers;

I need to get my code to read and from the SQL database and and then manipulate the database per the instructions above.

This is what I have so far:

//CPUTable.java

import javafx.application.*;
import javafx.beans.value.*;
import javafx.collections.*;
import javafx.geometry.*;
import javafx.scene.*;
import javafx.scene.control.*;
import javafx.scene.layout.*;
import javafx.stage.*;
import java.util.Date;
import javafx.scene.control.cell.*;
import java.sql.Connection;
import java.sql.DriverManager;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;

import java.sql.*;
import java.util.*;

public class CPUTable extends Application{

   private Label response;
   private Label heading;
  
   private TextField cpuField;
   private TextField performanceField;
   private TextField priceField;
   private Button addBtn;
  
   // The table graphic component
   TableView< Computer > CPUTable;
  
   public static void main( String[] args ){
       launch( args );
   }
  
   public void start( Stage myStage ){
  
       myStage.setTitle( \"CPU Table\" );
       FlowPane rootNode = new FlowPane( 10, 10 );
       rootNode.setAlignment( Pos.CENTER );
       Scene myScene = new Scene( rootNode, 400, 400 );
       myStage.setScene(myScene);
      
       response = new Label( \"\" );
       heading = new Label( \"CPU Table\" );
      
       // The data structure that is under the table - it alerts the table when
       // it is modified
       ObservableList< Computer > ComputerList = FXCollections.observableArrayList(
           new Computer( \"TitleA\", \"111\", \"2016\" ),
           new Computer( \"TitleB\", \"222\", \"2016\" )
          
       );
  
      
       // The view that is connected to the list.
       CPUTable = new TableView< Computer >( ComputerList );
      
       // Sets up a column in the table.
       // By using properties with field names that follow the convention
       // we can easily connect a field from the datatype to a column in our
       // table.
       TableColumn< Computer, String > cpuCol = new TableColumn<>( \"CPU name\" );
       cpuCol.setCellValueFactory( new PropertyValueFactory<>( \"cpu name\" ) );
       CPUTable.getColumns().add( cpuCol );

       TableColumn< Computer, String > performanceCol = new TableColumn<>( \"Performance\" );
       performanceCol.setCellValueFactory( new PropertyValueFactory<>( \"performance\" ) );
       CPUTable.getColumns().add( performanceCol );

       TableColumn< Computer, String > priceCol = new TableColumn<>( \"Price\" );
       priceCol.setCellValueFactory( new PropertyValueFactory<>( \"price\" ) );
       CPUTable.getColumns().add( priceCol );
      
      
       CPUTable.setPrefWidth( 400 );
       CPUTable.setPrefHeight( 200 );
      
       // The selection model is what we need to look at to connect listeners to
       // to be able to handle acitons.
       TableView.TableViewSelectionModel< Computer > ComputerSelectionModel = CPUTable.getSelectionModel();
       ComputerSelectionModel.selectedIndexProperty().addListener(
           new ChangeListener< Number >(){
               public void changed( ObservableValue< ? extends Number > changed, Number oldValue, Number newValue){
                   Computer tempComputer = ComputerList.get( newValue.intValue() );
                   response.setText( \"SelectedRow: \" + newValue + \", with title: \" + tempComputer.getCpu() );
                  
               }
           }
       );
      
       cpuField = new TextField();
       performanceField = new TextField();
       priceField = new TextField();
       addBtn = new Button( \"Submit\" );
      
       addBtn.setOnAction(
           new EventHandler< ActionEvent >(){
               public void handle( ActionEvent ae ){
                   ComputerList.add(
                       new Computer(
                       cpuField.getText(),
                       performanceField.getText(),
                       priceField.getText()
                       )
                   );
                   cpuField.clear();
                   performanceField.clear();
                   priceField.clear();
               }
           }
       );

      
       rootNode.getChildren().addAll( heading, CPUTable, response, cpuField, performanceField, priceField, addBtn );
       myStage.show();
      
   }
  
}

-----------------------------------------------------------------------------------------------------------------------------

//Computer.java

import javafx.beans.property.*;

public class Computer{

   private SimpleIntegerProperty id;
   private SimpleStringProperty cpu;
   private SimpleStringProperty performance;
   private SimpleStringProperty price;
      
  
   public Computer( String c, String s, String p ){
       cpu = new SimpleStringProperty( c );
       performance = new SimpleStringProperty( s );
       price = new SimpleStringProperty( p );
      
   }  

   public void setCpu( String c ){
       cpu.set( c );
   }
  
   public String getCpu(){
       return cpu.get();
   }

   public void setperformance( String s ){
       performance.set( s );
   }
  
   public String getperformance(){
       return performance.get();
   }
  
   public void setPrice( String p ){
       price.set( p );
   }

  
   public String getPrice(){
       return price.get();
   }

}

------------------------------------------------------------------------------------------------------

//ComputerList.java

/*
import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;


public class ComputerList
{
ArrayList<Computer> theList = new ArrayList<>();

public void ComputerList()
{

}

public void AddComputer(String strInputLine)
{
theList.add(new Computer(strInputLine));
}

public void AddComputer(Computer tempComputer)
{
theList.add(tempComputer);
}

public String toString()
{
String strString = \"\";

for (Computer Computer : theList)
{
strString += Computer;
}

return(strString);
}


public void ShowReport()
{
for(Computer objComputer : theList)
{
System.out.printf(\"%s: %5.2f\ \", objComputer.getComputerName(), objComputer.getPrice());
}
}

public void CleanComputerList()
{
Iterator<Computer> it = theList.iterator();

while( it.hasNext() )
{
Computer objComputer = it.next();

if(objComputer.getValid() == false)
{
it.remove();
}
}
}
}

*/

Solution

import javafx.application.*;
import javafx.beans.value.*;
import javafx.collections.*;
import javafx.geometry.*;
import javafx.scene.*;
import javafx.scene.control.*;
import javafx.scene.layout.*;
import javafx.stage.*;
import java.util.Date;
import javafx.scene.control.cell.*;
import java.sql.Connection;
import java.sql.DriverManager;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import java.sql.*;
import java.util.*;
public category CPUTable extends Applicationpersonal Label response;
non-public Label heading;
  
non-public TextField cpuField;
non-public TextField performanceField;
non-public TextField priceField;
non-public Button addBtn;
  
// The table graphic part
TableView&lt; pc &gt; CPUTable;
  
public static void main( String[] args )
  
public void start( Stage myStage )modified( ObservableValue&lt; ? extends variety &gt; changed, variety oldValue, variety newValue){
pc tempComputer = ComputerList.get( newValue.intValue() );
response.setText( \"SelectedRow: \" + newValue + \", with title: \" + tempComputer.getCpu() );
  
}
}
);
  
cpuField = new TextField();
performanceField = new TextField();
priceField = new TextField();
addBtn = new Button( \"Submit\" );
  
addBtn.setOnAction(
new EventHandler&lt; ActionEvent &gt;()
}
);
  
rootNode.getChildren().addAll( heading, CPUTable, response, cpuField, performanceField, priceField, addBtn );
myStage.show();
  
}
  
}
-----------------------------------------------------------------------------------------------------------------------------
//Computer.java
import javafx.beans.property.*;
public category Computerpersonal SimpleIntegerProperty id;
non-public SimpleStringProperty cpu;
non-public SimpleStringProperty performance;
non-public SimpleStringProperty price;
  
  
public Computer( String c, String s, String p )C.P.U. = new SimpleStringProperty( c );
performance = new SimpleStringProperty( s );
worth = new SimpleStringProperty( p );
  
}
public void setCpu( String c )
  
public String getCpu()
public void setperformance( String s )
  
public String getperformance()come performance.get();
}
  
public void setPrice( String p )
  
public String getPrice()come worth.get();
}
}
------------------------------------------------------------------------------------------------------

//ComputerList.java
/*
import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;

public category ComputerList

public void AddComputer(String strInputLine)
  
public void AddComputer(Computer tempComputer)
  
public String toString()
{
String strString = \"\";
for (Computer pc : theList)
  
return(strString);
}

public void ShowReport()
  
}
}
}

Create a Java FX GUI program that allows the user to insert data into a SQL database. The goal of this project is to write a basic Java FX GUI database program.
Create a Java FX GUI program that allows the user to insert data into a SQL database. The goal of this project is to write a basic Java FX GUI database program.
Create a Java FX GUI program that allows the user to insert data into a SQL database. The goal of this project is to write a basic Java FX GUI database program.
Create a Java FX GUI program that allows the user to insert data into a SQL database. The goal of this project is to write a basic Java FX GUI database program.
Create a Java FX GUI program that allows the user to insert data into a SQL database. The goal of this project is to write a basic Java FX GUI database program.
Create a Java FX GUI program that allows the user to insert data into a SQL database. The goal of this project is to write a basic Java FX GUI database program.

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site