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.第一种创建方式 ...
随机推荐
- E - 卿学姐与城堡的墙(树状数组求逆序数)
卿学姐与城堡的墙 Time Limit: 2000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Submit ...
- 090、ELK完成部署和使用 (2019-05-13 周二)
参考https://www.cnblogs.com/CloudMan6/p/7787870.html 上节我们已经部署了容器化的ELK,本节我们学习如何将日志导入ELK并进行图形化展示. 几乎 ...
- redis删除主从节点
1.删除一个Slave节点 ./redis-cli --cluster del-node 127.0.0.1:7001 74957282ffa94c828925c4f7026baac04a67e291 ...
- Delphi 条件语句和程序的选择结构
- nodejs 常用插件
.circular-json npm install circular-json JSON.parse高级版 .cookie-parser .md5-node .multer 上传插件 .npm i ...
- ConditionalOnProperty的使用
时间 2018-02-23 标签 ConditionalOnPropert SpringBoot 栏目 Spring 原文 http://blog.csdn.net/u010002184/art ...
- opencv-python用原图和mask实现抠图
1.先上图 原图:test1.png mask图:test-mask.png 结果图:mask.png 2.代码部分 import cv2 from PIL import Image import n ...
- idea 添加静态注释和live Templates
静态注释 /** * @Description * @Author wzz * @Date ${DATE} ${TIME} */ Live Templates 1.新建一个自己的添加组如图:Mygro ...
- create-react-app踩坑记
前言 哇,不的不说这个react 这个脚手架create-react-app脚确实有很多问题,哈哈,下面来看看吧有哪些坑: 引用sass或者less 记得16年还是几年是不支持sass,和less的, ...
- HDU-4289-Control(最大流最小割,拆点)
链接: https://vjudge.net/problem/HDU-4289 题意: You, the head of Department of Security, recently receiv ...