SpringBoot啟動(dòng)后啟動(dòng)內(nèi)嵌瀏覽器的方法
1、下載內(nèi)嵌瀏覽器Jar包
下載地址:點(diǎn)擊下載
2、項(xiàng)目下加入對(duì)應(yīng)jar;然后右鍵:Add as Library...
3、添加啟動(dòng)項(xiàng)目后事件
效果:內(nèi)嵌瀏覽器打開指定頁(yè)面,全屏
import com.teamdev.jxbrowser.chromium.Browser;
import com.teamdev.jxbrowser.chromium.swing.BrowserView;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component;
 
import javax.swing.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
 
/**
 * @author 魯達(dá)
 * createTime 2019-12-29 20:51
 **/
@Component
public class ApplicationRunnerImpl implements ApplicationRunner {
  @Override
  public void run(ApplicationArguments args) throws Exception {
    String url = "http://localhost:9028/open/index";
    JFrame frame = new JFrame();
    // 谷歌內(nèi)核瀏覽器
    Browser browser = new Browser();
    BrowserView view = new BrowserView(browser);
    //禁用close功能
//    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    //隱藏任務(wù)欄圖標(biāo)
//    frame.setType(JFrame.Type.UTILITY);
//    //不顯示標(biāo)題欄,最大化,最小化,退出按鈕
    frame.setUndecorated(true);
    //尺寸
//    frame.setSize(500, 500);
    //坐標(biāo)
    frame.setLocation(0, 0);
    frame.add(view);
    //全屏顯示
    frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
    // 是否顯示
    frame.setVisible(true);
    //是否在屏幕最上層顯示
    frame.setAlwaysOnTop(true);
    //加載地址
    browser.loadURL(url);
//    System.out.println(frame.getX());
//    System.out.println(frame.getY());
//    list.add(frame);
    frame.addWindowListener(new WindowAdapter() {
      // 窗口關(guān)閉時(shí)間監(jiān)聽
      @Override
      public void windowClosing(WindowEvent e){
        System.out.println("窗口關(guān)閉...");
      }
    });
  }
}
4、然后在ide 的run--->VM Options里加上一句-Djava.awt.headless=false
解決問題:java.awt.HeadlessException運(yùn)行時(shí)異常
5、pom.xml文件添加依賴
解決問題:打包找不到依賴的問題
<!--內(nèi)嵌瀏覽器-->
    <dependency>
      <groupId>jxbrowser-6.14</groupId>
      <artifactId>jxbrowser-6.14</artifactId>
      <version>6.14</version>
      <scope>system</scope>
      <systemPath>${project.basedir}\src\main\resources\lib\jxbrowser-6.14.jar</systemPath>
    </dependency>
    <dependency>
      <groupId>jxbrowser-win32-6.14</groupId>
      <artifactId>jxbrowser-win32-6.14</artifactId>
      <version>6.14</version>
      <scope>system</scope>
      <systemPath>${project.basedir}\src\main\resources\lib\jxbrowser-win32-6.14.jar</systemPath>
    </dependency>
<build>
    <plugins>
      <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
        <configuration>
          <includeSystemScope>true</includeSystemScope>
        </configuration>
      </plugin>
    </plugins>
  </build>
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持我們。
欄 目:Java
下一篇:Spring實(shí)戰(zhàn)之ResourceLoaderAware加載資源用法示例
本文標(biāo)題:SpringBoot啟動(dòng)后啟動(dòng)內(nèi)嵌瀏覽器的方法
本文地址:http://www.jygsgssxh.com/a1/Java/8776.html
您可能感興趣的文章
- 01-10Springboot中@Value的使用詳解
 - 01-10springboot實(shí)現(xiàn)文件上傳步驟解析
 - 01-10springboot jta atomikos實(shí)現(xiàn)分布式事物管理
 - 01-10Java后臺(tái)防止客戶端重復(fù)請(qǐng)求、提交表單實(shí)現(xiàn)原理
 - 01-10SpringBoot使用RabbitMQ延時(shí)隊(duì)列(小白必備)
 - 01-10如何基于SpringBoot部署外部Tomcat過程解析
 - 01-10SPRING BOOT啟動(dòng)命令參數(shù)及源碼詳析
 - 01-10springboot集成fastDfs過程代碼實(shí)例
 - 01-10SPRINGBOOT讀取PROPERTIES配置文件數(shù)據(jù)過程詳解
 - 01-10springboot 配置DRUID數(shù)據(jù)源的方法實(shí)例分析
 


閱讀排行
- 1C語(yǔ)言 while語(yǔ)句的用法詳解
 - 2java 實(shí)現(xiàn)簡(jiǎn)單圣誕樹的示例代碼(圣誕
 - 3利用C語(yǔ)言實(shí)現(xiàn)“百馬百擔(dān)”問題方法
 - 4C語(yǔ)言中計(jì)算正弦的相關(guān)函數(shù)總結(jié)
 - 5c語(yǔ)言計(jì)算三角形面積代碼
 - 6什么是 WSH(腳本宿主)的詳細(xì)解釋
 - 7C++ 中隨機(jī)函數(shù)random函數(shù)的使用方法
 - 8正則表達(dá)式匹配各種特殊字符
 - 9C語(yǔ)言十進(jìn)制轉(zhuǎn)二進(jìn)制代碼實(shí)例
 - 10C語(yǔ)言查找數(shù)組里數(shù)字重復(fù)次數(shù)的方法
 
本欄相關(guān)
- 01-10Java實(shí)現(xiàn)動(dòng)態(tài)模擬時(shí)鐘
 - 01-10Springboot中@Value的使用詳解
 - 01-10JavaWeb實(shí)現(xiàn)郵件發(fā)送功能
 - 01-10利用Java實(shí)現(xiàn)復(fù)制Excel工作表功能
 - 01-10Java實(shí)現(xiàn)動(dòng)態(tài)數(shù)字時(shí)鐘
 - 01-10java基于poi導(dǎo)出excel透視表代碼實(shí)例
 - 01-10java實(shí)現(xiàn)液晶數(shù)字字體顯示當(dāng)前時(shí)間
 - 01-10基于Java驗(yàn)證jwt token代碼實(shí)例
 - 01-10Java動(dòng)態(tài)顯示當(dāng)前日期和時(shí)間
 - 01-10淺談Java中真的只有值傳遞么
 
隨機(jī)閱讀
- 08-05dedecms(織夢(mèng))副欄目數(shù)量限制代碼修改
 - 04-02jquery與jsp,用jquery
 - 08-05DEDE織夢(mèng)data目錄下的sessions文件夾有什
 - 01-10C#中split用法實(shí)例總結(jié)
 - 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
 - 01-11ajax實(shí)現(xiàn)頁(yè)面的局部加載
 - 01-10delphi制作wav文件的方法
 - 01-10SublimeText編譯C開發(fā)環(huán)境設(shè)置
 - 08-05織夢(mèng)dedecms什么時(shí)候用欄目交叉功能?
 - 01-10使用C語(yǔ)言求解撲克牌的順子及n個(gè)骰子
 


