第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用套接字循環(huán)時 Java Fx 無法正常工作

使用套接字循環(huán)時 Java Fx 無法正常工作

MMTTMM 2022-10-12 15:52:49
我對 java fx 有一些問題,我正在開發(fā)一個服務郵件,我在顯示服務器階段(使用 java fx)時遇到了問題。通過使用我創(chuàng)建的模式 MVC:1)MainServer.java(我啟動 java fx 應用程序的地方)2)ControllerServer.java(控制器類)3)ServerLog.java(模型類,對我的問題并不重要,但不得不提及它)?,F(xiàn)在,我有另一個名為 Server.java 的類,其中有真正的服務器代碼,我嘗試通過將 Server.java 代碼移動到 ControllerServer.java 來將 MainServer.java 與 Server.java 合并,服務器運行良好,但階段沒有顯示階段,我認為問題出在可初始化的while循環(huán)中。public class Server {    private static Object lock = new Object();    private static ServerLog serverLog = new ServerLog();    public static void getService(Socket s) throws IOException {         // not important for my question so deleted    }    public static void main(String[] args){        new File("users").mkdir();        try {            ServerSocket socket = new ServerSocket(8189);                while(true) {                    Socket s = socket.accept();                    getService(s);                }        }catch(IOException e){e.printStackTrace();}    }}public class ServerMain extends Application {    public static void main(String[] args) {        launch(args);    }    @Override    public void start(Stage primaryStage) throws Exception {        Parent root = FXMLLoader.load(getClass().getResource("View/server.fxml"));        primaryStage.setScene(new Scene(root, 800, 600));        primaryStage.setTitle("Server Log");        primaryStage.show();    }}public class ControllerServer implements Initializable {    @FXML    private ListView myListView;    //protected List<String> listLog = new ArrayList<>();    protected ListProperty<String> listProperty = new SimpleListProperty<>();    private ServerLog serverLog = new ServerLog();我想要做的是刪除 ServerMain.java 并將 ServerMain.java 正在做的事情轉(zhuǎn)移到服務器中(所以服務器需要在打開時顯示舞臺)
查看完整描述

1 回答

?
jeck貓

TA貢獻1909條經(jīng)驗 獲得超7個贊

不得不編輯我的答案,因為最后它工作了,但不正確,現(xiàn)在有了這個類,我可以正確看到 java fx 階段,但服務器停止正常工作,所以如果有人有更好的解決方案,我將很榮幸閱讀這個解決方案 :( .


public class Server extends Application {

    private static Object lock = new Object();

    private static ServerLog serverLog = new ServerLog();


    public static void getService(Socket s) throws IOException { ... }


    public static void main(String[] args){

        launch(args);

        new File("users").mkdir();

        try {

            ServerSocket socket = new ServerSocket(8189);


                while(true) {

                    Socket s = socket.accept();

                    getService(s);

                }


        }catch(IOException e){e.printStackTrace();}


    }

    @Override

    public void start(Stage primaryStage) throws Exception {

        Parent root = FXMLLoader.load(getClass().getResource("View/server.fxml"));

        primaryStage.setScene(new Scene(root, 800, 600));

        primaryStage.setTitle("Server Log");

        primaryStage.show();

    }

}


查看完整回答
反對 回復 2022-10-12
  • 1 回答
  • 0 關(guān)注
  • 119 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號