springboot的四种启动方式

目录
  • 环境准备
  • 第一种:直接main方法启动TxDemo2Application
  • 第二种:通过maven插件来启动
  • 第三种打jar包来访问
  • 第四种通过docker容器虚拟化运行

环境准备

创建工程

pom.xml内容

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>

	<groupId>cn.tx.springboot</groupId>
	<artifactId>tx_demo2</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<packaging>jar</packaging>

	<name>tx_demo2</name>
	<description>Demo project for Spring Boot</description>

	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>2.0.3.RELEASE</version>
		<relativePath/> <!-- lookup parent from repository -->
	</parent>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
		<java.version>1.8</java.version>
	</properties>

	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>

	</dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>

</project>

启动类TxDemo2Application

@SpringBootApplication
public class TxDemo2Application {

	public static void main(String[] args) {
		SpringApplication.run(TxDemo2Application.class, args);
	}
}
 

测试类TestController

@RestController
public class TestController {

    @RequestMapping("/hello")
    public String hello(){
        return "hello";
    }

}

第一种:直接main方法启动TxDemo2Application

测试访问

第二种:通过maven插件来启动

输入:

C:\Users\rlsl180506\Desktop\tx_demo2>mvn spring-boot:run

测试访问

第三种 打jar包来访问

C:\Users\rlsl180506\Desktop\tx_demo2>mvn clean package

进入jar所在路径执行

C:\Users\rlsl180506\Desktop\tx_demo2\target>java -jar tx_demo2-0.0.1-SNAPSHOT.jar

测试结果:

第四种 通过docker容器虚拟化运行

首先我要在linux的docker环境下。其次把第三步打好的jar拷贝到linux下的指定目录,修改名字成tx_demo2.jar

mv tx_demo2-0.0.1-SNAPSHOT.jar tx_demo2.jar

创建DockerFile文件

FROM  openjdk:8-jdk-alpine
ARG  JAR_FILE
COPY  ${JAR_FILE}  app.jar
EXPOSE  10001
ENTRYPOINT  ["java","-jar","/app.jar"]

tx_demo2.jar和DockerFile在同一个路径构建镜像

docker build --build-arg JAR_FILE=tx_demo2.jar -t tx_demo2:1.0 .

启动容器:

docker run -p 8080:8080 tx_demo2:1.0 

访问测试

到此这篇关于springboot的四种启动方式的文章就介绍到这了,更多相关springboot 启动方式内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • springboot使用外置tomcat启动方式

    目录 使用外置tomcat启动 使用外置的tomcat启动注意事项 使用外置tomcat启动 打开pom文件,把打包格式设置为war <packaging>war</packaging> SpringBoot默认有内置的tomcat运行模块,可以在Application(继承SpringBootServletInitializer)中直接main启动. 如下配置可在外置tomcat容器中运行 <dependency> <groupId>org.springf

  • springBoot 项目排除数据库启动方式

    目录 springBoot 排除数据库启动 1. 场景 2. 配置 Springboot不经过数据库直接启动 问题 错误 原因 解决 springBoot 排除数据库启动 1. 场景 在家里运行项目,运行springBoot的时候报数据库连接不了,公司的数据库家里不能连接. 2. 配置 2.1 保留之前的properties 配置,不删除: 2.2 在启动类中添加 exclude = {DataSourceAutoConfiguration.class} package cn.cncommdat

  • springboot在服务器上的几种启动方式(小结)

    一.使用内置的tomcat,通过java -jar的方式启动 比如:java -jar bms.jar 但是这种启动方式 一旦关闭控制台 或者crtl+c 退出 此时应用就关闭了 所以我们需要换种方式 springboot中的maven插件,提供了一种很方便的类似于shell的开启.关闭.重启服务的操作.而且这种启动方式是让项目在后台运行的,关闭shell也不会使项目停止运行 1.首先,项目的pom添加下面的插件,然后maven install <build> <plugins>

  • 详解springboot的三种启动方式

    一:IDE 运行Application这个类的main方法 二:在springboot的应用的根目录下运行mvn spring-boot:run 三:使用mvn install 生成jar后运行 先到项目根目录 mvn install cd target java -jar xxxx.jar 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们.

  • 浅谈springboot的三种启动方式

    有段时间没有写博客了,也在努力的从传统单机开发向分布式系统过度,所以再次做一些笔记,以方便日后查看. 直接进入正题吧,今天记录spring-boot项目的三种启动方式. spring-boot的启动方式主要有三种: 1. 运行带有main方法类 2. 通过命令行 java -jar 的方式 3. 通过spring-boot-plugin的方式 一.执行带有main方法类 这种方式很简单,我主要是通过idea的方式,进行执行.这种方式在启动的时候,会去自动加载classpath下的配置文件 (这里

  • springboot的四种启动方式

    目录 环境准备 第一种:直接main方法启动TxDemo2Application 第二种:通过maven插件来启动 第三种打jar包来访问 第四种通过docker容器虚拟化运行 环境准备 创建工程 pom.xml内容 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="h

  • Activity 四种启动模式详细介绍

    Activity 四种启动模式详细介绍 在Android中每个界面都是一个Activity,切换界面操作其实是多个不同Activity之间的实例化操作.在Android中Activity的启动模式决定了Activity的启动运行方式. Android总Activity的启动模式分为四种: Activity启动模式设置: <activity android:name=".MainActivity" android:launchMode="standard" /&

  • SpringBoot异步处理的四种实现方式

    本篇文章我们以SpringBoot中异步的使用(包括:异步调用和异步方法两个维度)来进行讲解. 异步请求与同步请求 我们先通过一张图来区分一下异步请求和同步请求的区别: 在上图中有三个角色:客户端.Web容器和业务处理线程. 两个流程中客户端对Web容器的请求,都是同步的.因为它们在请求客户端时都处于阻塞等待状态,并没有进行异步处理. 在Web容器部分,第一个流程采用同步请求,第二个流程采用异步回调的形式. 通过异步处理,可以先释放容器分配给请求的线程与相关资源,减轻系统负担,从而增加了服务器对

  • Android编程中Activity的四种启动模式

    本文实例讲述了Android编程中Activity的四种启动模式.分享给大家供大家参考,具体如下: Activity启动方式有四种,分别是: standard singleTop singleTask singleInstance 可以根据实际的需求为Activity设置对应的启动模式,从而可以避免创建大量重复的Activity等问题. 设置Activity的启动模式,只需要在AndroidManifest.xml里对应的<activity>标签设置android:launchMode属性,例

  • Android LaunchMode四种启动模式详细介绍

    Android LaunchMode详解 越是做的时间越长,基础知识就忘的越干净,最近做一个项目中,发现启动的几个Activity居然重叠了,我ri--,再不回忆一下就要退出Android界了. 概念解释 Task Task叫做任务,这个简单,表示我们需要完成的事情,注意,这里我们说的是任务,是个名词,例如要发短信,那我们的任务就是发送一条短信,仅此而已,再例如教官说:"张三,你去吃屎!",ok,那张三的任务就是吃屎. Back Stack 我们常叫做回退栈,或者是任务栈,这个是什么意

  • Android中Activity的四种启动模式和onNewIntent()

    写在前面 Activity是Android四大组件之一,用于直接跟用户进行交互,本篇文章将介绍Activity的启动流程.用户启动Activity的方式大致有两种:一种是在桌面点击应用程序的图标,进入应用程序的主界面:另一种是在应用程序中,进入一个新的Activity.前者,桌面其实是系统应用launcher的界面,点击应用程序图标,会进行应用程序的主界面,实质是从一个应用的Activity进入另一个应用Activity. 因此,不管是从桌面进入应用主界面,还是在应用里进入一个新的Activit

  • 手把手教你SpringBoot过滤器N种注册方式

    要说在 Spring Boot 中注册过滤器有三种方式,你都能想到哪些呢?今天松哥就来和大家聊一聊 Spring Boot 中注册过滤器的三种方式! 其实本来是想和大家聊 Spring Security 过滤器链的问题的,结果看源码看着看着就跑题了,索性就先和大家聊一聊 Spring Boot 中注册过滤器的三种方式,算是给 后面的 Spring Security 打一点基础. 1.@WebFilter 通过 @WebFilter 注解来标记一个过滤器,这种方式相信大家很容易想到.这是将 Ser

  • 浅谈Java中的四种引用方式的区别

    强引用.软引用.弱引用.虚引用的概念 强引用(StrongReference) 强引用就是指在程序代码之中普遍存在的,比如下面这段代码中的object和str都是强引用: Object object = new Object(); String str = "hello"; 只要某个对象有强引用与之关联,JVM必定不会回收这个对象,即使在内存不足的情况下,JVM宁愿抛出OutOfMemory错误也不会回收这种对象. 比如下面这段代码: public class Main { publi

随机推荐