Spring Boot 2 入门
Spring Boot其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。
参考网上资料,一路踩了几个坑,终于搞出了第一个例子。
1、访问http://start.spring.io
我选择的是Spring Boot 2.0.5,点击Generate Project下载项目压缩包。
2、解压后,eclipse,Import -> Existing Maven Projects -> Next ->选择解压后的文件夹-> Finsh。
项目结构如下:
3、pom.xml中添加支持web的模块:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
一定要添加上面模块,否则使用@RestController注解的时候提示”RestController cannot be resolved to a type”。
说明:
Spring Boot 提供了很多starter模块,在项目中加入对应框架的starter依赖,可以免去到处寻找依赖包的烦恼。
官方starter模块命名规则为“spring-boot-starter-*”,其中*代表对应的类型。
常用的starter模块:
spring-boot-starter-web:构建Web应用,包含Spring MVC框架,默认内嵌Tomcat窗口。
spring-boot-starter-jpa:构建Spring Data JPA应用,使用Hibernate作为ORM框架。
spring-boot-starter-test:用于单元测试。
spring-boot-starter-redis:构建Spring Data Redis应用,使用Jedis框架操作Redis数据库。
spring-boot-starter-thymeleaf:构建一个使用Thymeleaf作为视图的Web应用。
4、编写第一个HelloWorld例子
@RestController
public class HelloWorldController { @RequestMapping("/")
public String index() {
return "Hello World!";
}
}
5、修改默认的端口号:
由于本机的8080已经被使用,所以修改一下端口号,打开resources目录的application.properties文件,里面加入自定义端口号(这里使用9001):
server.port = 9001
6、如何启动Spring Boot
方法一:
在SpringBoot项目中找到 有@SpringBootApplication注解的文件,即启动文件,本项目为DemoApplication.java文
件,右键 Run As -> Java Application
package com.example.demo; import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication
public class DemoApplication { public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
方法二:
项目 -> 右键 -> Run As -> Maven build -> Goals里面输入spring-boot:run -> 点击run按钮。
启动后,Console窗口的输出有一行
[ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 9001 (http) with context path ''
说明项目正常启动,端口号为9001。
访问:
http://localhost:9001/
页面显示:Hello World!
8、实现热部署模式
(1)pom.xml文件增加
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
(2)工程配置
Project -> Build Automatically 选中
9、其它 (20191104添加)
(1)pom.xml添加依赖时,可以不指定版本,“spring-boot-starter-parent”会提供常用jar的版本管理,也可以指定,会覆盖官方默认的版本。
依赖版本查询地址:https://mvnrepository.com/
搜索框输入名称:如ribbon,结果如下:
点击列表的Ribbon进去,出现了所有版本列表
Spring Boot 2 入门的更多相关文章
- Spring Boot 快速入门
Spring Boot 快速入门 http://blog.csdn.net/xiaoyu411502/article/details/47864969 今天给大家介绍一下Spring Boot MVC ...
- Spring Boot快速入门(二):http请求
原文地址:https://lierabbit.cn/articles/4 一.准备 postman:一个接口测试工具 创建一个新工程 选择web 不会的请看Spring Boot快速入门(一):Hel ...
- Spring Boot -01- 快速入门篇(图文教程)
Spring Boot -01- 快速入门篇(图文教程) 今天开始不断整理 Spring Boot 2.0 版本学习笔记,大家可以在博客看到我的笔记,然后大家想看视频课程也可以到[慕课网]手机 app ...
- spring boot入门教程——Spring Boot快速入门指南
Spring Boot已成为当今最流行的微服务开发框架,本文是如何使用Spring Boot快速开始Web微服务开发的指南,我们将使创建一个可运行的包含内嵌Web容器(默认使用的是Tomcat)的可运 ...
- Spring Boot 从入门到实战汇总
之前写过几篇spring boot入门到实战的博文,因为某些原因没能继续. 框架更新迭代很快,之前还是基于1.x,现在2.x都出来很久了.还是希望能从基于该框架项目开发的整体有一个比较系统的梳理,于是 ...
- Spring Boot从入门到精通(二)配置GitHub并上传Maven项目
简单介绍一下GitHub,它是一个面向开源及私有软件项目的托管平台,因为只支持git作为唯一的版本库格式进行托管,故名GitHub. GitHub于2008年4月10日正式上线,除了Git代码仓库托管 ...
- Spring Boot从入门到精通(五)多数据源配置实现及源码分析
多数据源配置在项目软件中是比较常见的开发需求,Spring和Spring Boot中对此都有相应的解决方案可供大家参考.在Spring Boot中,如MyBatis.JdbcTemplate以及Jpa ...
- Spring Boot从入门到精通(六)集成Redis实现缓存机制
Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言 ...
- Spring Boot从入门到精通(七)集成Redis实现Session共享
单点登录(SSO)是指在多个应用系统中,登录用户只需要登录验证一次就可以访问所有相互信任的应用系统,Redis Session共享是实现单点登录的一种方式.本文是通过Spring Boot框架集成Re ...
- Spring Boot从入门到精通(八)日志管理实现和配置信息分析
Spring Boot对日志的处理,与平时我们处理日志的方式完全一致,它为Java Util Logging.Log4J2和Logback提供了默认配置.对于每种日志都预先配置使用控制台输出和可选的文 ...
随机推荐
- Rpgmakermv(38)MOG_Theatrhythm
1.============================葡萄牙语=================================================+++ MOG - Theatrh ...
- Yii2 Restful api搜索实现
- 如何登录Sitecore CMS
这是关于学习如何使用和开发Sitecore CMS的系列文章中的第一篇. 在使用Sitecore CMS之前,必须先登录.新Sitecore开发人员常见的一个问题是“我该在哪里登录?” 安装任何版本的 ...
- Another Meaning (KMP + DP)
先用KMP重叠匹配求出各个匹配成功的尾串位置.然后利用DP去求,那转移方程应该是等于 上一个状态 (无法匹配新尾巴) 上一个状态 + 以本次匹配起点为结尾的状态(就是说有了新的位置) + 1 (单单一 ...
- Python学习记录之----网络通信(一)
网络通信 网络通信需要啥? OSI参考模型是啥? socket: 物理层 数据链路层.MAC地址 网络层. IP地址,好了两台机器能找到了,能连上 传输层.发数据,传数据,当然ICMP在网络层,它只是 ...
- 用python进行wifi密码生成
随着无线网络的不断发展,几乎所有场合都会覆盖WIFI信号,无论是公共地点还是家庭之中.众所周知,目前WIFI普遍的认证方式为wpa2,这种认证方式安全性相当不错,但由于人们设置密码时的随意性和固有思维 ...
- [转载] mysql 索引中的USING BTREE 的意义
索引是在存储引擎中实现的,因此每种存储引擎的索引都不一定完全相同,并且每种存储引擎也不一定支持所有索引类型. 根据存储引擎定义每个表的最大索引数和最大索引长度.所有存储引擎支持每个表至少16个索引,总 ...
- spark与kafka集成进行实时 nginx代理 这种sdk埋点 原生日志实时解析 处理
日志格式202.108.16.254^A1546795482.600^A/cntv.gif?appId=3&areaId=8213&srcContId=2535575&area ...
- The Little Prince-12/02
The Little Prince-12/02 What moves me so deeply, about this little prince who is sleeping here, is h ...
- springmvc请求路径和请求参数的获取注解- @PathVariable和@RequestParam
@PathVariable和@RequestParam @PathVariable是从路径里面去获取变量,也就是把路径当做变量. @RequestParam是从请求里面获取参数. 如:url:http ...