SpringBoot启动后自动打开浏览器访问项目
之前我们用SSM或者SSH进行JAVA WEB开发的时候,IDEA 需要配置Tomcat然后把项目放到tomcat运行,tomcat启动的时候会自动打开浏览器去访问项目,但是SpringBoot是内嵌tomcat的,项目启动成功后无法自主访问,需要我们手动打开浏览器输入url访问,我觉得这样很不习惯所以研究了一下
具体实现方案
我想做成一个通用的启动,所以可以随手配置是否需要启动是打开浏览器
Mac 电脑
- 属性文件中添加对应属性
#运行项目后是否在浏览器中打开浏览器
openProject:
isOpen: true #是否打开浏览器运行
cmd: open -a #运行命令
web:
openUrl: http://localhost:8989/ #项目要运行url
googleExcute: GoogleChrome #运行的浏览器
这里我的电脑是Mac 所以需要使用这个open -a 命令window不需要这个属性还有这个googleExcute表示浏览器名称默认Mac 浏览器名称是有空格,请把这个app名字空格去掉且不能有种中文,否则使用open -a 命令无效无法打开
通过定义属性配置文件达到可以定制化,随手关闭
- 编写自己的CommandRunner类实现CommandLineRunner接口的run方法,这个方法会在项目启动后制动执行
package com.fashvn.ctmsdata.config;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.CommandLineRunner;
import org.springframework.stereotype.Component;
@Slf4j
@Component
public class CommandRunner implements CommandLineRunner {
@Value("${openProject.web.openUrl}")
private String openUrl;
@Value("${openProject.isOpen}")
private boolean isOpen;
@Value("${openProject.cmd}")
private String cmd;
@Value("${openProject.web.googleExcute}")
private String googleExcutePath;
@Override
public void run(String... args) throws Exception {
if (isOpen) {
String runCmd = cmd+" "+googleExcutePath + " " +openUrl ;
log.info("运行的命令:{}",runCmd);
Runtime run = Runtime.getRuntime();
try {
run.exec(runCmd);
log.debug("启动浏览器打开项目成功");
} catch (Exception e) {
e.printStackTrace();
log.error("启动项目自动打开浏览器失败:{}",e.getMessage());
}
}
}
}
window电脑
上图只是运行命令不一样,比mac简单,只用改下自己电脑对应浏览器路径就可以
SpringBoot启动后自动打开浏览器访问项目的更多相关文章
- SpringBoot项目启动后自动打开浏览器
编写一个类,注册为Spring的Bean,然后实现CommandLineRunner接口,重写run()方法即可 @Component public class OpenBrowser impleme ...
- vue中npm run dev 不能自动打开浏览器运行项目
最近用vue2.0 + webpack搭建了环境创建新的项目.出现一个很蹩脚的问题: 在终端输入 npm run dev 的时候,不能自动打开浏览器运行项目. 这段话的意思是:你的应用程序运行地址是: ...
- autoOpenBrowser: true, 运行npm后自动打开浏览器
autoOpenBrowser: true, 运行npm后自动打开浏览器
- springboot启动后自动退出
有时新建的springboot启动后自动退出运行,如图所示: 此种情况大都数是因为pom文件加入了tomcat的依赖,与springboot内嵌的tomcat冲突导致,所以只需将pom文件中的tomc ...
- vue 使用 npm run dev命令后 自动打开浏览器
1.使用vue-cli 老版本构建项目时, 可修改config文件夹下index.js文件 autoOpenBrowser 属性给为 true 即可 使用vue-cli 3.x 版本后,所有的配置项均 ...
- [vuejs] 终端npm run dev 不能自动打开浏览器运行项目解决办法
终端执行: npm run dev 出现: I Your application is running here: http://localhost:8080 但并没有打开浏览器运行项目 解决办法: ...
- 如何关闭D10 启动后自动打开的 WelCome页
在快捷方式上 修改为 "C:\Program Files (x86)\Embarcadero\Studio\19.0\bin\bds.exe" -pDelphi -np 最后增加 ...
- codeblocks如何设置,启动后自动打开上次未关闭的workspace
设置--环境--普通设置--on application start-up -------default 关闭code::blocks时不要关那个workspace就可以.至于其它方法就不知道了.
- Springboot项目启动后自动创建多表关联的数据库与表的方案
文/朱季谦 在一些项目开发当中,存在这样一种需求,即开发完成的项目,在第一次部署启动时,需能自行构建系统需要的数据库及其对应的数据库表. 若要解决这类需求,其实现在已有不少开源框架都能实现自动生成数据 ...
随机推荐
- HTML-表格-基础表格
主要内容: HTML表格 基本语法和结构: 案例: border用在table标签里面,表示边框的. th标签是加粗,width是宽度,表格宽度用在table里面.: caption用在table ...
- video.js 后端网页播放器
参考链接: https://www.cnblogs.com/afrog/p/6689179.html VideoJS的CSS样式,这里我提供一下BootCdn的链接 cdn.bootcss.com/v ...
- mybatis-plus QueryWrapper自定义查询条件
mybatis-plus QueryWrapper自定义查询条件 mybatis-plus框架功能很强大,把很多功能都集成了,比如自动生成代码结构,mybatis crud封装,分页,动态数据源等等, ...
- Linux监控工具nmon
Linux监控工具 nmon nmon是一种在Linux操作系统上广泛使用的监控与分析工具,nmon所记录的信息是比较全面的,它能在系统运行 过程中实时地捕捉系统资源的使用情况,并且能输出结果到文件中 ...
- socks5代理服务器搭建
1.首先,编译安装SS5需要先安装一些依赖组件 yum -y install gcc gcc-c++ automake make pam-devel openldap-devel cyrus-sasl ...
- [BJOI2012]连连看
Description Luogu4134 Solution \(l,r \le 1000\),暴力枚举是否能匹配.这是一个选匹配的问题,所以直接网络流,原图不一定是二分图咋办?拆点啊!然后直接做就行 ...
- 结合字符串常量池/String.intern()/String Table来谈一下你对java中String的理解
1.字符串常量池 每创建一个字符串常量,JVM会首先检查字符串常量池,如果字符串已经在常量池中存在,那么就返回常量池中的实例引用.如果字符串不在池中,就会实例化一个字符串放到字符串池中.常量池提高了J ...
- SpringBoot:静态资源的访问和配置(转载)
默认静态资源访问Spring Boot的默认静态资源的路径为: spring.resources.static-locations=classpath:/META-INF/resources/,cla ...
- mysql(5):主从复制和分库分表
主从复制集群 概念:主从复制是指数据可以从一个MySQL数据库服务器主节点复制到一个或多个从节点. 使用场景: 读写分离:使用主从复制,让主库负责写,从库负责读,这样,即使主库出现了锁表的情景,通过读 ...
- php设计模式之多态实例代码
<?php header("Content-type:text/html;charset=utf-8"); /** * 虎 */ abstract class Tiger { ...