Spring MVC是基于Servlet 的一个 MVC 框架。配置非常复杂,各种XML。就算它支持的注解我也觉得麻烦。
而Spring Boot 遵循“约定大于配置”原则,可以实现零配置。
- 1.看下官网咋说?
(1).创建独立的Spring应用程序
(2).直接嵌入Tomcat,Jetty或Undertow(无需部署WAR文件)
(3).简化构建配置
(4).尽可能自动配置Spring和第三方库
(5).提供生产就绪功能,例如指标,运行状况检查和外部化配置
(6).绝对没有代码生成,也不需要XML配置
- 3.springboot支持哪些东西?
名称 | 描述 |
spring-boot-starter | 核心Spring Boot starter,包括自动配置支持,日志和YAML |
spring-boot-starter-actuator | 生产准备的特性,用于帮我们监控和管理应用 |
spring-boot-starter-amqp | 对”高级消息队列协议”的支持,通过spring-rabbit实现 |
spring-boot-starter-aop | 对面向切面编程的支持,包括spring-aop和AspectJ |
spring-boot-starter-batch | 对Spring Batch的支持,包括HSQLDB数据库 |
spring-boot-starter-cloud-connectors | 对Spring Cloud Connectors的支持,简化在云平台下(例如,Cloud Foundry 和Heroku)服务的连接 |
spring-boot-starter-data-elasticsearch | 对Elasticsearch搜索和分析引擎的支持,包括spring-data-elasticsearch |
spring-boot-starter-data-gemfire | 对GemFire分布式数据存储的支持,包括spring-data-gemfire |
spring-boot-starter-data-jpa | 对”Java持久化API”的支持,包括spring-data-jpa,spring-orm和Hibernate |
spring-boot-starter-data-mongodb | 对MongoDB NOSQL数据库的支持,包括spring-data-mongodb |
spring-boot-starter-data-rest | 对通过REST暴露Spring Data仓库的支持,通过spring-data-rest-webmvc实现 |
spring-boot-starter-data-solr | 对Apache Solr搜索平台的支持,包括spring-data-solr |
spring-boot-starter-freemarker | 对FreeMarker模板引擎的支持 |
spring-boot-starter-groovy-templates | 对Groovy模板引擎的支持 |
spring-boot-starter-hateoas | 对基于HATEOAS的RESTful服务的支持,通过spring-hateoas实现 |
spring-boot-starter-hornetq | 对”Java消息服务API”的支持,通过HornetQ实现 |
spring-boot-starter-integration | 对普通spring-integration模块的支持 |
spring-boot-starter-jdbc | 对JDBC数据库的支持 |
spring-boot-starter-jersey | 对Jersey RESTful Web服务框架的支持 |
spring-boot-starter-jta-atomikos | 对JTA分布式事务的支持,通过Atomikos实现 |
spring-boot-starter-jta-bitronix | 对JTA分布式事务的支持,通过Bitronix实现 |
spring-boot-starter-mail | 对javax.mail的支持 |
spring-boot-starter-mobile | 对spring-mobile的支持 |
spring-boot-starter-mustache | 对Mustache模板引擎的支持 |
spring-boot-starter-redis | 对REDIS键值数据存储的支持,包括spring-redis |
spring-boot-starter-security | 对spring-security的支持 |
spring-boot-starter-social-facebook | 对spring-social-facebook的支持 |
spring-boot-starter-social-linkedin | 对spring-social-linkedin的支持 |
spring-boot-starter-social-twitter | 对spring-social-twitter的支持 |
spring-boot-starter-test | 对常用测试依赖的支持,包括JUnit, Hamcrest和Mockito,还有spring-test模块 |
spring-boot-starter-thymeleaf | 对Thymeleaf模板引擎的支持,包括和Spring的集成 |
spring-boot-starter-velocity | 对Velocity模板引擎的支持 |
spring-boot-starter-web | 对全栈web开发的支持, 包括Tomcat和spring-webmvc |
spring-boot-starter-websocket | 对WebSocket开发的支持 |
spring-boot-starter-ws | 对Spring Web服务的支持 |
- 4.去官网创建一个maven项目
https://start.spring.io/
这就是应用程序启动入口,直接按普通java程序启动
- 5.支持web开发
(1)在springboot所支持的类库中找到
spring-boot-starter-web | 对全栈web开发的支持, 包括Tomcat和spring-webmvc |
(2)在pom文件中加入
(3)编写http请求控制层
@RestController
public class FirstController{
@RequestMapping("/first")
String first() {
return " 第一个springboot项目接口!";
}
}
(4)再启动发现有默认端口为8080的tomcat!
访问结果:
- 6.内置的tomcat默认端口为8080,怎么修改?
在resources下的application.properties文件中添加
#端口
server.port=8081
#项目名
server.servlet.context-path=/api
访问地址就变成了:http://localhost:8081/api/first
=================
springboot快速搭建微服务,为其前端开发者提供接口。至于springboot所支持的页面开发(官方提供了几种模板引擎:FreeMarker、Velocity、Thymeleaf、Groovy、mustache、JSP)了解下就可以了,前后端分离的时代前端开发的选择太多了。不可能像以前一样,spring与jsp绑在一起写,java程序员又当爹又当妈!
=================
推荐文章:
为什么要使用服务发现?
https://blog.csdn.net/u013035373/article/details/79414529
分布式(一) 搞定服务注册与发现