springboot的web部署,springboot开发非web程序

木心      2022-04-04     481

关键词:

录:

1、SpringBoot的web项目部署为war
2、SpringBoot的web项目部署为jar
3、SpringBoot开发非Web程序
    3.1、方式一:利用 main()方法
    3.2、方式二:通过springboot启动加载类 CommandLineRunner#run()

1、SpringBoot的web项目部署为war    <--返回目录

  项目结构

   继承 SpringBootServletInitializer,重写configure()方法

@SpringBootApplication
public class Application extends SpringBootServletInitializer {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
    
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(Application.class);
    }

}
View Code

  将pom.xml的项目打包方式改为 war,  <packaging>war</packaging>;在 pom.xml 添加springboot打包插件;<finalName>demo</finalName> 配置了最终打包为demo.war。具体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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.1.RELEASE</version>
    </parent>

    <groupId>com.oy</groupId>
    <artifactId>boot-hello</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>war</packaging>
    <name>boot-hello</name>
    <description>project for Spring Boot</description>

    <properties>
        <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-tomcat</artifactId>
      <scope>provided</scope>
    </dependency>
</dependencies> <build> <finalName>demo</finalName> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>

  选中项目 -> 右键 -> Run as... -> Maven build... ->输入命令 clean package -DskipTests

 

   选中项目 -> 右键 -> Properties

   将demo.war放到tomcat,启动tomcat

   访问 http://localhost:8080/demo/hello。

 

2、SpringBoot的web项目部署为jar    <--返回目录

  另外可以参考:netty-socketio(一)之helloworld,与springboot整合(linux注册服务启动jar服务)

  将pom.xml的项目打包方式改为 jar,  <packaging>jar</packaging>;在 pom.xml 添加springboot打包插件;<finalName>demo</finalName> 配置了最终打包为demo.jar。

  选中项目 -> 右键 -> Run as... -> Maven build... ->输入命令 clean package -DskipTests

   进入到 target 目录,  shift + 右键 ->在此处打开命令行窗口 或 Git Bash Here

  在打开的命令行窗口输入 java -jar demo.jar。

  访问http://localhost:8080/hello。

 

3、SpringBoot开发非Web程序    <--返回目录

3.1、方式一:利用 main()方法    <--返回目录

  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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.1.RELEASE</version>
    </parent>

    <groupId>com.oy</groupId>
    <artifactId>boot-hello</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>
    <name>boot-hello</name>
    <description>project for Spring Boot</description>

    <properties>
        <java.version>1.8</java.version>
    </properties>

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

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

</project>

  UserServiceImpl

@Service
public class UserServiceImpl implements UserService {

    @Override
    public void getUser(Integer id) {
        System.out.println("id = " + id);
    }
    
}

  Application

@SpringBootApplication
public class Application {

    public static void main(String[] args) {
        ConfigurableApplicationContext context = SpringApplication.run(Application.class, args);
        UserService userService = (UserService)context.getBean(UserService.class);
        userService.getUser(1);
    }
    
}

  运行:Application#main()方法,选中main, 右键 -> run as -> java application。当然也可以打成jar包,通过java -jar demo.jar运行。

 

3.2、方式二:通过springboot启动加载类 CommandLineRunner#run()    <--返回目录

  依赖

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

  Application

@SpringBootApplication
public class Application implements CommandLineRunner {

    @Autowired
    private UserService userService;
    
    public static void main(String[] args) {
         SpringApplication.run(Application.class, args);
    }

    @Override
    public void run(String... args) throws Exception {
        userService.getUser(2);
    }
    
}

  运行:Application#main()方法,选中main, 右键 -> run as -> java application。当然也可以打成jar包,通过java -jar demo.jar运行。

springboot框架开发web项目springboot项目的打包和部署(代码片段)

现在我们已经有了一个简单的项目了,我们应该怎么将项目打包,并部署到服务器上呢?工具IntelliJIDEA16JDK1.8Maven3.5Tomcat1.8将项目打成war包并部署到Tomcat中1、首先打开我们的pom.xml文件,修改其中的配置<groupId>c... 查看详情

(转)springboot

(二期)4、springboot的综合讲解【课程四】springbo...概念.xmind64.5KB【课程四】spring装配方式.xmind0.2MB【课程四预习】spri...解读.xmind0.1MB【课程四】springbo...过程.xmind0.3MB  gitdemo:https://gitee.com/lv-success/git-second/tree/ma 查看详情

springboot入门基础:介绍

一.SpringBoot初级(一)SpringBoot入门SpringBoot简介构件SpringBoot项目以及启动器讲解SpringBoot入门HelloWorld(二)SpringBoot整合Web开发整合Servlet整合Filter整合Listener访问静态资源文件上传(三)SpringBoot视图层技术整合jsp技术整合freemarker... 查看详情

springboot使用传统方式部署

springboot默认创建出来的应用程序是内嵌web容器的,直接运行jar文件就可以的,但通常我们也需要将程序部署到tomcat中,这需要做如下改进:1.pom.xml修改打包方式需要修改成war:<packaging>war</packaging>spring-boot-starter-web的配置中需... 查看详情

web开发vue+springboot项目服务器部署(环境搭建+部署流程)

前言前段时间使用Vue+Springboot写了个小项目,于是想部署到服务器上以便分享。于是,就开始了长达一天的踩坑之旅。。为了让读者(包括下一次想干这事的自己)少踩坑,把整个过程记录一下。技术选型... 查看详情

springboot简单的打包部署(代码片段)

  SpringBoot支持使用Jar内嵌Web服务器(Tomcat)的方式发布,也支持生成war包放在外置的web服务器运行。  1、使用Jar发布应用  配置步骤:  ①pom.xml要显示加入插件org.springframework.boot,否则无法产生jar清单文件,导致打出... 查看详情

将springboot应用程序部署到heroku-错误消息“没有正在运行的web进程”

...。steady_progress想要引起更多关注对此问题。我创建了一个SpringBootWeb应用程序(在IntelliJIDEA中,该应用程序在本地运行没有问题。我尝试按照heroku在本演练中描述的步骤完全将应用程序部署到heroku:https://devcenter.heroku.com/articles/dep... 查看详情

springboot简单打包部署(附工程)

SpringBoot简单打包部署(附工程)前言本文主要介绍SpringBoot的一些打包事项和项目部署以及在其中遇到一些问题的解决方案。SpringBoot打包在SpringBoot打包这块,我们就用之前的一个web项目来进行打包。首先需要明确的是,该项目打包... 查看详情

springboot最佳实践集成jsp与生产环境部署

...市面上仍有很多的公司在使用JSP,所以本文就来介绍一下SpringBoot怎么集成JSP开发,以及生产环境的详细部署方法。二、集成JSP开发环境SpringBoot2.0.4RELEASETomcat9.0.10IDEA(IntellijIDEA简称,下文统 查看详情

springboot框架开发web项目springboot项目的打包和部署(代码片段)

现在我们已经有了一个简单的项目了,我们应该怎么将项目打包,并部署到服务器上呢?工具IntelliJIDEA16JDK1.8Maven3.5Tomcat1.8将项目打成war包并部署到Tomcat中1、首先打开我们的pom.xml文件,修改其中的配置<groupId>c... 查看详情

springboot入门基础:构建springboot项目及启动器讲解

...制类(Controller)需要一个部署web应用的服务器,如tomcat二.SpringBoot特点SpringBoot设计目的是用来简化新Spring应用的初始搭建以及开发过程嵌入的tomcat,无需部署war文件Spring 查看详情

springboot入门

一,SpringBoot 1,如果使用Spring开发一个"HelloWorld"的web应用:?创建一个web项目并且导入相关jar包。SpringMVCServlet?创建一个web.xml?编写一个控制类(Controller)?需要一个部署web应用的服务器如tomcat2,SpringBoot特点:?SpringBoot设计目的是... 查看详情

springboot简单打包部署(附工程)

前言本文主要介绍SpringBoot的一些打包事项和项目部署以及在其中遇到一些问题的解决方案。SpringBoot打包在SpringBoot打包这块,我们就用之前的一个web项目来进行打包。首先需要明确的是,该项目打包的形态是可执行的jar包,还是... 查看详情

《springboot编程实战与面试指南》05-04:springboot应用的打包和部署(代码片段)

 《SpringBoot编程实战与面试指南》05-04:SpringBoot应用的打包和部署 传统的Web应用进行打包部署时,通常会打成War包的形式,然后将War包部署到Tomcat等服务器中,而SpringBoot应用使用的是嵌入式Servlet容器,也就是说,SpringBoo... 查看详情

springboot初始教程之servletfilterlistener配置(代码片段)

SpringBoot初始教程之Servlet、Filter、Listener配置(七)1.介绍通过之前的文章来看,SpringBoot涵盖了很多配置,但是往往一些配置是采用原生的Servlet进行的,但是在SpringBoot中不需要配置web.xml的因为有可能打包之后是一个jar包... 查看详情

springcloud:springcloud简介

...loud是什么鬼?SpringCloud是一系列框架的有序集合。它利用SpringBoot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用SpringBoot的开发风格做... 查看详情

springboot使用scala开发

参考技术A咋说呢,还是使用scala做springboot开发比较流畅一些按道理来说根据打包模式mavensbtgradle来说三种方式都可以maven是最简单的gradle也比较简单,但是我并没有尝试gradlesbt其实也还可以,你要找到方向基本就直到套路了,经... 查看详情

springboot热部署

...然平时开发web项目过程中,改动项目启重启总是报错;但springBoot对调试支持很好,修改之后可以实时生效,需要添加以下的配置:  pom.xml文件添加一下配置:<dependency><groupId>org.springframework.boot</groupId><artif 查看详情