скомпилировать и создать пакет с несколькими архивами в javafx, используя командную строку - PullRequest
0 голосов
/ 03 марта 2019

меня зовут Омар, я хотел бы скомпилировать эти три java-программы в javafx, я уже установил mysql на свой компьютер и создал базу данных floggerdb в соответствии с кодом, показанным ниже.Чтобы соединить базу данных mysql и javafx, мне нужен «mysql-connector-java-5.1.20.jar», который у меня уже есть вместе с теми же тремя файловыми программами.

первая программа

/***** DBConnection.java *****/  
package mtechproject.samples;
import java.sql.Connection; 
import java.sql.DriverManager;
import java.sql.SQLException;
public class DBConnection {
private static Connection conn;  
private static String url =
"jdbc:mysql://localhost:3306/floggerdb";
private static String user = "root";//Username of database  
   private static String pass = "password";//Password of database  
   public static Connection connect() throws SQLException{  
     try{  
   Class.forName("com.mysql.jdbc.Driver").newInstance();  
 }catch(ClassNotFoundException cnfe){  
   System.err.println("Error: "+cnfe.getMessage());  
 }catch(InstantiationException ie){  
   System.err.println("Error: "+ie.getMessage());  
 }catch(IllegalAccessException iae){  
   System.err.println("Error: "+iae.getMessage());  
 }  
 conn = DriverManager.getConnection(url,user,pass);  
 return conn;  

   }  
   public static Connection getConnection() throws SQLException, ClassNotFoundException{  
     if(conn !=null && !conn.isClosed())  
       return conn;  
     connect();  
     return conn;  
   }  
 }   

вторая программа

/***** DisplayDatabase.java *****/  `
 package mtechproject.samples;  
 import java.sql.Connection;  
 import java.sql.ResultSet;  
 import javafx.beans.property.SimpleStringProperty;  
 import javafx.beans.value.ObservableValue;  
 import javafx.collections.FXCollections;  
 import javafx.collections.ObservableList;  
 import javafx.scene.control.TableColumn;  
 import javafx.scene.control.TableColumn.CellDataFeatures;  
 import javafx.scene.control.TableView;  
 import javafx.util.Callback;  
 import mtechproject.dbfrontend.DBConnectFlogger;  
 public class DisplayDatabase{  
   //Tableview and data  
   private static ObservableList<ObservableList> data;  
   //Connection database  
   public static void buildData(TableView tableview){  
      Connection c ;  
      data = FXCollections.observableArrayList();  
      try{  
       c = DBConnectFlogger.connect();  
       String SQL = "SELECT * from usertable";  
       //ResultSet  
       ResultSet rs = c.createStatement().executeQuery(SQL);  
       /**********************************  
        * TABLE COLUMN ADDED DYNAMICALLY *  
        **********************************/  
       for(int i=0 ; i<rs.getMetaData().getColumnCount(); i++){  
         //We are using non property style for making dynamic table  
         final int j = i;          
         TableColumn col = new TableColumn(rs.getMetaData().getColumnName(i+1));  
         col.setCellValueFactory(new Callback<CellDataFeatures<ObservableList,String>,ObservableValue<String>>(){            
           public ObservableValue<String> call(CellDataFeatures<ObservableList, String> param) {                                                 
             return new SimpleStringProperty(param.getValue().get(j).toString());              
           }            
         });  
         tableview.getColumns().addAll(col);  
       }  
       /********************************  
        * Data added to ObservableList *  
        ********************************/  
       while(rs.next()){  
         //Iterate Row  
         ObservableList<String> row = FXCollections.observableArrayList();  
         for(int i=1 ; i<=rs.getMetaData().getColumnCount(); i++){  
           //Iterate Column  
           row.add(rs.getString(i));  
         }  
         //System.out.println("Row [1] added "+row );  
         data.add(row);  
       }  
       //FINALLY ADDED TO TableView  
       tableview.setItems(data);  
      }catch(Exception e){  
        e.printStackTrace();  
        System.out.println("Error on Building Data");        
      }  
    }  
 }   

третья программа

/***** FXDisplayDatabase.java *****/  
 package mtechproject.samples;  
 import javafx.application.Application;  
 import javafx.geometry.Insets;  
 import javafx.scene.Scene;  
 import javafx.scene.control.TableView;  
 import javafx.scene.layout.GridPane;  
 import javafx.stage.Stage;  
 public class FXDatabaseDisplay extends Application{  
   @Override  
   public void start(Stage stage) throws Exception {  
     stage.setFullScreen(true);  
     TableView tableview;  
     //TableView  
     tableview = new TableView();  
     DisplayDatabase.buildData(tableview);  
     //Adding GridPane  
     GridPane gridPane = new GridPane();  
     gridPane.setPadding(new Insets(20,20,20,20));  
     gridPane.setHgap(5);  
     gridPane.setVgap(5);  
     //Main Scene  
     Scene scene = new Scene(tableview);      
     stage.setScene(scene);  
     stage.show();  
   }  
   public static void main(String args[]){  
     launch(null);  
   }  
 }  

эти три программы должны быть скомпилированы и находиться в пакете с именем "mtechproject.samples;"мой вопрос, как я могу скомпилировать эти три программы и создать такой пакет (mtechproject.samples) в сочетании с .jar MySQL-коннектор, используя только командную строку ?

большое спасибо,любая помощь приветствуется

Омар

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...