デスクトップアプリケーションのための春ブーツ

Prasath:

私は、JavaのSwingを使用して開発された私のデスクトップアプリケーションのための春のブートを使用することはできますか?その罰金であるか、またはそれは賢明ではないでしょうか?私は、Swingアプリケーションで春のブートの利点を得ることができるか、それはパフォーマンスが低下しますか?

tmarwen:

公式で述べたように春ブーツドキュメント

春ブーツは、それが簡単にあなたが「単に実行する」ことができ、スタンドアローン、生産グレードの春ベースのアプリケーションを作成することができます。

述べて何もありません春ブーツが、それは周りの多くの機能提供していますとしてのみのWebアプリケーション開発のために意味される春のフレームワーク自体と、そのようなコアコンテナ、などのWebアプリケーションに関連していない春AOP春JPAは ...

ここではサンプル実装ダウン春ブーツ注釈付きのアプリケーションは単純に実行スイングフレームを:

@SpringBootApplication
public class SpringDesktopSampleApplication implements CommandLineRunner {

    public static void main(String[] args) {
        new SpringApplicationBuilder(SpringDesktopSampleApplication.class).headless(false).run(args);
    }

    @Override
    public void run(String... args) {
        JFrame frame = new JFrame("Spring Boot Swing App");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize(300,300);
        JPanel panel = new JPanel(new BorderLayout());
        JTextField text = new JTextField("Spring Boot can be used with Swing apps");
        panel.add(text, BorderLayout.CENTER);
        frame.setContentPane(panel);
        frame.setVisible(true);
    }
}

あなたは、古典的な方法で2つの違いに注意して春ブートアプリケーションが実行されました:

  • メインアプリケーションクラスが実装CommandLineRunnerアプリケーションの実行時の動作を変更することができるようにするために:今回のユーザインタフェースを起動します。
  • 初期春ブートアプリケーションを介して行われますSpringApplicationBuilder無効にすることができるようにするために、ヘッドレスサーバーベースのアプリケーション内での使用のために意味される機能を。

パフォーマンスに関しては、春ブーツのデスクトップアプリケーションが残っているJVMは、アプリケーションを展開し、自分で導入するものを除いアプリケーションで発生することになる(最小限のスタートアップのものを除く)は、パフォーマンスのオーバーヘッドはありません。

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=221730&siteId=1