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提供了默认配置.对于每种日志都预先配置使用控制台输出和可选的文 ...
随机推荐
- html5-css动画-2d
div{ width: 300px; height: 100px; margin: 50px; padding: 50px; background: green; ...
- 【转】 如何导入excel数据到数据库,并解决导入时间格式问题
在办公环境下,经常会用到处理excel数据,如果用写程序导入excel数据到数据库那就太麻烦了,涉及解析excel,还要各种格式问题,下面简单利用数据库本身支持的功能解决这类导入问题. 准备 创建表 ...
- 【2017-2-20】C#运算符
运算符分类: 1.算术运算符 ⑴+ - * / %(取余,模) /3; Console.Write(d); Console.ReadLine(); 则输出结果为“3”,因为10和3都是int型,dec ...
- ClassOne__HomeWork
1,static类型 static类型定义有两类,一类是静态数据,另一类是静态函数. 静态数据跟成员变量不同,它可以通过类名直接访问,而不需要通过定义对象来访问.它的的生成也和成员变量不一样,它只生成 ...
- 新建git并将本地代码上传到分支
1 查看远程分支 $ git branch -a * br-2.1.2.2 master remotes/origin/HEAD -> origin/master remotes/origin/ ...
- VS2017调试闪退之Chrome
巨硬build后发了15.7.1满载期待的升级了..结果NM泪奔................... 为啥 泪奔? 使用Chrome 调试闪退,MMP ,一想肯定是VS的锅咯,各种抓头发.. 试试看 ...
- web前端学习路线(含20个真实web开发项目集合)
目前web前端工程师日均岗位缺口已经超过50000,随着互联网+的深入发展,html5作为前端展示技术,市场人才需求量将呈直线上涨. Web前端工程师的岗位职责是利用HTML.CSS.Java.DOM ...
- docker 常用操作
1,安装 .检查内核版本,必须是3.10及以上 uname ‐r .安装docker yum install docker .输入y确认安装 .启动docker [root@localhost ~]# ...
- 手头没证书,如何给https做代理?Nginx TCP转发
线上的一个海外充值接口(https)经常因我朝网络问题中断,想借助hk的机器做个https反向代理又没证书. 一开始 一开始想到的办法是借助Nginx的tcp转发进行代理: 编译NGINX时加入 -- ...
- PHP多进程非阻塞模式下结合原生Mysql与单进程效率测试对比
公司在做游戏服务器合并的时候,对大批量数据表做了合并操作,难免会出现数据格式不一致问题.根据玩家反映BUG排查,是因为某个模块下日志表出现了数据格式问题导致. 目前想到的是有两种方案解决,第一种就是把 ...