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中有:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.5.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</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文件:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.6.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
然后,添加依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
然后,添加插件:需要什么就添加什么
<plugins>
<plugin>
<groupId>xxx</groupId>
<artifactId>xxx</artifactId>
</plugin>
</plugins>
到此,SpringBoot项目创建好了。
SpringBoot项目的几种创建方式,启动、和访问的更多相关文章
- Tomcat 部署项目的几种常见方式
转自:https://www.cnblogs.com/yuht/p/5714624.html https://www.cnblogs.com/ysocean/p/6893446.html Tomcat ...
- 2019年6月14日 Web框架之Django_07 进阶操作(MTV与MVC、多对多表三种创建方式、前后端传输数据编码格式contentType、ajax、自定义分页器)
摘要 MTV与MVC 多对多表三种创建方式 ajax ,前后端传输数据编码格式contentType 批量插入数据和自定义分页器 一.MVC与MTV MVC(Model View Controller ...
- Django-多对多关系的三种创建方式-forms组件使用-cookie与session-08
目录 表模型类多对多关系的三种创建方式 django forms 组件 登录功能手写推理过程 整段代码可以放过来 forms 组件使用 forms 后端定义规则并校验结果 forms 前端渲染标签组件 ...
- Springboot项目 配置数据库连接属性后,启动项目报错
Springboot项目 配置数据库连接属性后,启动项目报错,错误如下: 错误原因分析: 1.连接信息配置错误 当使用properties为配置文件时,如图所示,上面的 spring.datasour ...
- 面向面试编程——javascript对象的几种创建方式
javascript对象的几种创建方式 总共有以下几个模式: 1.工厂模式 2.构造函数模式 3.原型模式 4.混合构造函数和原型模式 5.动态原型模式 6.寄生构造函数模式 7.稳妥构造函数模式 1 ...
- 【转载】 Java中String类型的两种创建方式
本文转载自 https://www.cnblogs.com/fguozhu/articles/2661055.html Java中String是一个特殊的包装类数据有两种创建形式: String s ...
- 精读JavaScript模式(四),数组,对象与函数的几种创建方式
一.前言 放了个元旦,休息了三天,加上春运抢票一系列事情的冲击,我感觉我的心已经飞了.确实应该收收心,之前计划的学习任务也严重脱节了:我恨不得打死我自己. 在上篇博客中,笔记记录到了关于构造函数方面的 ...
- Struts2之命名空间与Action的三种创建方式
看到上面的标题,相信大家已经知道我们接下来要探讨的知识了,一共两点:1.package命名空间设置:2.三种Action的创建方式.下面我们开始本篇的内容: 首先我们聊一聊命名空间的知识,namesp ...
- JavaScript 闭包的详细分享(三种创建方式)(附小实例)
JavaScript闭包的详细理解 一.原理:闭包函数--指有权访问私有函数里面的变量和对象还有方法等:通俗的讲就是突破私有函数的作用域,让函数外面能够使用函数里面的变量及方法. 1.第一种创建方式 ...
随机推荐
- 部署 laravel项目404错误
1.nginx 下部署出现404错误 (1)打开php.ini中的php_openssl.dll这个扩展: (2)修改nginx 下的站点目录配置文件(我的是配置在vhost.conf)为: loca ...
- python之代码规范
第一章 为什么要有规范化目录 真正的后端开发的项目,系统等,少则几万行代码,多则十几万,几十万行代码 软件开发,规范你的项目目录结构,代码规范,遵循PEP8规范等等,让你更加清晰,合理开发. 1.代码 ...
- Python进阶编程 反射
1.7反射 python面向对象中的反射:通过字符串的形式操作对象相关的属性.python中的一切事物都是对象(都可以使用反射) class Foo: f = '类的静态变量' def __init_ ...
- Ubuntu下Win10虚拟机卡顿问题解决
问题描述 Ubuntu下用VMware创建了一个Windows10的虚拟机,初始给的配置如下: Memory: 4GB Graphics Memory: 1GB Hard Disk: 60GB 用的时 ...
- java 工具类使用
BigDecimalUtil 金额计算工具类 import java.math.BigDecimal; public class BigDecimalUtil { private BigDecimal ...
- IDEA的快捷方式
一,IDEA的快捷方式1,F8单步执行 2,F9运行调试 3,CTRL +鼠标左键=进入查看定义 4,CTRL+alt +鼠标左键=查看实现 5,Shift+F6重命名 6,alt +intsert= ...
- 前端页面适配的rem换算 为什么要使用rem
之前有些适配做法,是通过js动态计算viewport的缩放值(initial-scale). 例如以屏幕320像素为基准,设置1,那屏幕375像素就是375/320=1.18以此类推. 但直接这样强制 ...
- 你知道dos和cmd之间的关系以及区别吗?
含义 dos 英文disk operation system,意思是磁盘操作系统是微软系列操作系统之一,dos是一个独立的操作系统,dos对操作人员的要求是比较高的,操作者需要记住很多的命令,并利用命 ...
- PhpStorm 2017.3-2018.2 汉化包
JetBrains 系列软件汉化包 关键字: Android Studio 3.0-3.1.3 汉化包 CLion 2018.1-2018.2 汉化包 GoLand 2017.3.2-2018.2 汉 ...
- thinkphp 多条件联合查询 where例句
$where['username'] = array("eq",$username); $where['phone'] = array("eq",$userna ...