SpringBoot项目的几种创建方式,启动、和访问

 

最常用的4种方式,但除了这些以外,还有其他方式:

①在线创建

②STS构建

③Intell  Idea内置构建工具

④Maven创建

  STS官网:https://start.spring.io  。STS是Spring出的eclipse,是特殊版本的eclipse,对Spring Boot有很好的支持。

  eclipse也可以用来开发SpringBoot项目,但是需要安装STS插件。

方式:在线创建

官网主页,在Quick Start中,点击超链接“start spring.io”进入https://start.spring.io

  选择Maven Project,Java,选择1.5.6 / 2.0.5 / 2.1.6某个版本的SpringBoot。

  Group:填写groupId(项目包目录xx.xx.xx),Artifact:填写ArtifactId(项目名)

  Dependencies选一些依赖的包,比如Web(web项目必选的的),JDBC、MySQL、Mybatis等。

  点击“生成”,会弹出下载框,把按照刚才配置的包下载下来。将包导入eclipse等开发工具,即可使用。

*)生成的项目:

**)打开下载的包,其中的pom.xml中有:

1 <parent>
2 <groupId>org.springframework.boot</groupId>
3 <artifactId>spring-boot-starter-parent</artifactId>
4 <version>2.0.5.RELEASE</version>
5 <relativePath/> <!-- lookup parent from repository -->
6 </parent>

  这里表示该项目继承了Spring的东西,项目里的累活、脏活都是它在做。“Ctrl+单击”这里,会进入这个继承的父pom文件,可以看到里面引入了很多的东西,这就是我们不用引入的原因,因为这里已经引入了。

  starter是一个依赖描述符的集合。别人写好、封装好,我们自己直接拿来用即可。

  Spring-boot-starter-web中自带Tomcat、SpringBoot。如果没有这个starter,我们就要回到以前的配置方式。

  常用的starter,有很多官方提供的,也有民间的,可以从官网和GitHub中查看。

**)  

生成的项目的resource文件目录是空的。

src/main/java中的底层文件夹里有一个Java文件,Application.java,含main方法。此时的项目是可以运行的,运行这个Java文件即可。

把这个包导入到开发工具中,能看到进度条开始download jar包,都是刚才配置项目时对应版本的jar。

导入完成之后,右击→Run As JavaApplication,可看到控制台上打印spring的logo(字符拼接的)。此外,还有Run As SpringBootApplication 选项,开发工具可以识别到该项目时SpringBoot项目。

启动时,可以从控制台发现SpringBoot项目的打印信息是彩色的。

在浏览器中,输入http://localhost:8080   (端口在pom中有配,也可以修改配置。也可以从刚才的console打印信息中看到Tomcat port 8080)。可以看到页面“Whitelabel Error Page”

**)SpringBoot 项目部署方式:

  package命令打成jar包,在target路径下运行:Java -jar xx.jar

  运行完之后,可以在浏览器中测试。

  这种方式的优点:方便部署。不需要配Tomcat,这个jar中已经包含了Tomcat,将生成的jar扔到服务器上,运行jar即可。

**)Application.java:

@SpringBootApplicaiton表示程序的入口。他相当于一下3个注解:

@Configuration   表示不写XML,基于Java配置

@ComponentScan    自动扫描,写法:@ComponentScan(basePackages= {"com.example"})

@EnableAutoConfiguration   扫描pom.xml中的starter,自动产生配置。比如pom中有spring-boot-starter-web,就知道这是web项目,所以,自动加入了Tomcat和springMVC

方式:STS创建

  右键→New→Project→Spring→SpringStarterProject→Next,配置页面中扔有serviceURL:http://start.spring.io 说明仍是通过Spring网站构建的(在没有网的情况下无法构建项目)。配置内容与刚才网站上的内容一样,只是展现方式不同。最后生成一个zip包,在eclipse/STS/Idea等开发工具中打开。

  这和方法①中的,去网站上打个压缩包,导入到STS中打开,生成的项目一模一样。

方式:Intell  Idea内置构建工具

  启动Idea,对“Loading Project”点取消(启动idea时弹出的框)

  选Spring Initilizer类型,创建,和STS一个道理,弹框中会选一个Default:https://start.spring.io(是idea默认的),说明这里也是通过网站构建的

  Description可以不要,删去值。

  package写到com.企业名  即可(也可以用默认的)

  Artifact:spring-boot(项目名),项目名中含Boot、SpringBoot等字样不让保存,所以项目名叫demo,→next→选只选web(勾选上),→Next→起文件夹名叫SpringBoot,Project Name也叫SpringBoot,这样项目名就改成SpringBoot了。

方式:Maven构建

  对比前3种,这种方式反而成了最麻烦的了。纯手工作业。

  先创建一个maven项目。然后:

  继承SpringBoot的POM文件:

1 <parent>
2 <groupId>org.springframework.boot</groupId>
3 <artifactId>spring-boot-starter-parent</artifactId>
4 <version>2.1.6.RELEASE</version>
5 <relativePath/> <!-- lookup parent from repository -->
6 </parent>

  然后,添加依赖:

1 <dependency>
2 <groupId>org.springframework.boot</groupId>
3 <artifactId>spring-boot-starter-web</artifactId>
4 </dependency>

  然后,添加插件:需要什么就添加什么

1 <plugins>
2 <plugin>
3 <groupId>xxx</groupId>
4 <artifactId>xxx</artifactId>
5 </plugin>
6 </plugins>

到此,SpringBoot项目创建好了。

  

 
 
分类: java

构建springboot的几种方式 在线构建 STS构建 Idea 内置构建 Maven 构建的更多相关文章

  1. 引入springboot的两种方式以及springboot容器的引入

    一.在项目中引入springboot有两种方式: 1.引入spring-boot-starter-parent 要覆盖parent自带的jar的版本号有两种方式: (1)在pom中重新引入这个jar, ...

  2. cxf构建webservice的两种方式

    一.简介 对于基于soap传输协议的webservice有两种开发模式,代码优先和契约优先的模式.代码优先的模式是通过编写服务器端的代码,使用代码生成wsdl:契约优先模式首先编写wsdl,再通过ws ...

  3. 手把手教你Dubbo与SpringBoot常用两种方式整合

    一.Dubbo整合SpringBoot的方式(1) 1)直奔主题,方式一: pom.xml中引入dubbo-starter依赖,在application.properties配置属性,使用@Servi ...

  4. 在DevExpress程序中使用内置的图标构建美观的界面元素

    在我们一般的程序中,为一般的界面元素添加一定的图标展示,有助于提升界面的整体的美观.结合排版布局,以及固定场景的图标,往往给用户非常好的直观感受:统一.美观.易理解.因此在一般的程序界面中,都尽量在略 ...

  5. 在DevExpress程序中使用内置的图标构建美观的界面元素【转】

    https://www.cnblogs.com/wuhuacong/p/6217012.html 在我们一般的程序中,为一般的界面元素添加一定的图标展示,有助于提升界面的整体的美观.结合排版布局,以及 ...

  6. 009-Spring Boot 事件监听、监听器配置与方式、spring、Spring boot内置事件

    一.概念 1.事件监听的流程 步骤一.自定义事件,一般是继承ApplicationEvent抽象类 步骤二.定义事件监听器,一般是实现ApplicationListener接口 步骤三.启动时,需要将 ...

  7. 构建Docker镜像两种方式的比较-Dockerfile方式和S2I方式

    前言 写Dockerfile是构建Docker镜像最通常的方式,接触过Docker的童鞋多少了解一些.前段时间研究OpenShift(paas的一种),发现了另外一种构建Docker镜像的方式:S2I ...

  8. [转] 构建Docker镜像两种方式的比较-Dockerfile方式和S2I方式

    原文地址:https://www.cnblogs.com/tianshifu/p/8127837.html 前言 写Dockerfile是构建Docker镜像最通常的方式,接触过Docker的童鞋多少 ...

  9. Docker系列教程04-Docker构建镜像的三种方式

    简介 创建镜像的方法主要有三种:基于已有镜像的容器创建.基于本地模板导入.基于Dockerfile创建. 今天就逐一讲述为大家讲述,如何构建属于自己的docker镜像. 1.基于容器构建镜像 基于已有 ...

随机推荐

  1. Ruby学习中(首探数组, 注释, 运算符, 三元表达式, 字符串)

    一. 数组 1.定义一个数组 games = ["英雄联盟", "绝地求生", "钢铁雄心"] puts games 2.数组的循环 gam ...

  2. vue-router动态路由设置参数可选

    在日常工作中,我们需要将匹配到的所有路由,映射到一个组件上. 如下代码想要达到的效果: 不传page和id,则映射到user默认list页面 传page和id,根据page不同,显示不同的页面 问题 ...

  3. Java后端技术面试汇总(第五套)

    1.Java相关 • 乐观悲观锁的设计,如何保证原子性,解决的问题:• char和double的字节,以及在内存的分布是怎样:• 对象内存布局,然后讲下对象的死亡过程?• 对象头,详细讲下:• syn ...

  4. CSS---解决文本溢出,换行

    当我们设置我的的div,或者其它文本框固定宽度之后,文本内容过多就会出文本溢出(显示在区域外面,不换行的情况). 这时我们可以使用Css中的几个属于来解.有以下的三个属于可以解决问题: 1,word- ...

  5. vue中添加与删除,关键字搜索

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. python 运行sum函数的使用

    sum(iterable[, start]) ,iterable为可迭代对象,如: sum([ ], start) , #iterable为list列表. sum(( ), start ) , #it ...

  7. vue中map组件

    分享一个比较好用的基于百度地图的vue组件.也有react版本的,可以自行选择. 分享链接:点击

  8. Java爬取并下载酷狗音乐

    本文方法及代码仅供学习,仅供学习. 案例: 下载酷狗TOP500歌曲,代码用到的代码库包含:Jsoup.HttpClient.fastJson等. 正文: 1.分析是否可以获取到TOP500歌单 打开 ...

  9. LLVM 安装教程(包安装)

    LLVM 安装教程 环境:ubuntu16.04  llvm-4.0 clang-4.0 步骤: 1.依赖库安装 $ sudo apt-get install build-essential curl ...

  10. string 驻留机制

    string 驻留机制   string s1 = "abc"; string s2 = "ab"; string s3 = s2 + "c" ...