用IDEAC创建javaFX项目,连接数据库,生成exe文件

7 篇文章 0 订阅
6 篇文章 1 订阅

准备工作,JDK1.8,IDEA,e(fx)clipse

一、按装 fx 插件

我用的是IDEA,用eclipse也可以,都需要按装 fx 插件

1、打开设置 

2、查询插件 fx

3、javaFX安装完成,

二、创建javaFX项目

1、文件 - 新建 - 项目

2、选择javaFX

2、项目名称

三、连接数据库

连接数据库需要加载驱动,就得自己导入jar包

1、创建包,放数据库的jar包,注意,包的目录必须在src的路径下,因为打包的时候默认打包src下所有

2、输入包名,随意,把数据库驱动包复制粘贴到新建的包下,我用的是SQL Server

3、对这个包进行设置

找到刚才创建的包

然后两次OK就行,如下图,继续OK

4、这时这个包就相当于 web项目的lib包,目录也会发生变化

5、画页面,写代码

package sample;

import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;
import javafx.scene.layout.HBox;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;

import java.sql.*;

public class Main extends Application {

    private Statement stmt;
    private TextField tfSSN = new TextField();
    private TextField tfCourseId = new TextField();
    private Label lblStatus = new Label(); //存放查询结果
    @Override
    public void start(Stage primaryStage) throws Exception{

        initializeDB();

        Button bsShowGrade = new Button("Show Grade");
        HBox hBox = new HBox(5);
        hBox.getChildren().addAll(new Label("tfSSN"), tfSSN, new Label("tfCourse Id"), tfCourseId, bsShowGrade);

        VBox vBox = new VBox(10);
        vBox.getChildren().addAll(hBox, lblStatus);

        tfSSN.setPrefColumnCount(6);
        tfCourseId.setPrefColumnCount(6);
        bsShowGrade.setOnAction(new EventHandler<ActionEvent>() {

            @Override
            public void handle(ActionEvent arg0) {
                // TODO Auto-generated method stub
                String ssn = tfSSN.getText();// 获取输入的SSN
                String courseId = tfCourseId.getText();
                try {
                    String queryString ="select uid, account, password, userName from llm_user " +
                            " where account = '"+ssn+"' and uid = "+courseId;
                    String queryStrin = "select uid, account, password, userName from llm_user where account = 'admin' and uid = 2";
                    ResultSet rSet = stmt.executeQuery(queryString);// 查询数据库,并返回查询结果
                    if (rSet.next()) {// 显示查询结果
                        String uid = rSet.getString(1);
                        String account = rSet.getString(2);
                        String password = rSet.getString(3);
                        String userName = rSet.getString(4);

                        lblStatus.setText(uid + " " + account + " " + password + " " + userName);
                    } else {
                        lblStatus.setText("Not found");
                    }
                } catch (SQLException ex) {
                    ex.printStackTrace();
                }
            }
        });

        Scene scene = new Scene(vBox, 620, 300);
        primaryStage.setTitle("FindGrade");
        primaryStage.setScene(scene);
        primaryStage.show();

//        Parent root = FXMLLoader.load(getClass().getResource("sample.fxml"));
//        primaryStage.setTitle("Hello World");
//        primaryStage.setScene(new Scene(root, 300, 275));
//        primaryStage.show();
    }

    //连接数据库的方法
    private void initializeDB() {
        try {
            Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

            Connection conn = DriverManager.getConnection("jdbc:sqlserver://localhost:61826;databasename=ZHM", "admin", "123");

            stmt = conn.createStatement();
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }


    public static void main(String[] args) {
        launch(args);
    }
}

6、点击运行,效果如下

四、打包生成可执行文件 exe

这样,就生成了exe文件,文件位置,在往上数第三张截图中有

然后点击就可以运行了,而且把这整个包都复制放到任何电脑都可以运行,不用进行任何配置,生成快捷方式放到桌面双击就可运行

 

这些内容是找个很多资料,并问了一些朋友,做的一个最简易的可执行文件。

关于javaFX的更多知识,可以百度 易百教程 ,有不对的地方请大家多多指教。 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值