37-springboot(ssm及微服务入门,临时)

本文详细介绍了SpringBoot的概念、为何学习它以及其特点,包括简化配置、依赖管理和内置容器等。通过一个入门案例展示了如何创建一个HelloController,利用全注解配置和属性注入,最后探讨了SpringBoot的自动配置原理,揭示了如何通过@EnableAutoConfiguration注解生效默认配置。
摘要由CSDN通过智能技术生成

感谢你的路过,希望学生的笔记能给你一点微不足道的参考(2/100)
Java基础思维导图,完整Java体系的链接

1. springboot概念

在这一部分,我们主要了解以下3个问题:
   什么是SpringBoot
   为什么要学习SpringBoot
   SpringBoot的特点

1.1什么是SpringBoot?

springboot是spring快速开发脚手架,通过约定大于配置的方式,快速构建和启动spring项目

1.2为什么要学习SpringBoot

spring的缺点:
复杂的配置
   项目各种配置是开发时的损耗, 写配置挤占了写应用程序逻辑的时间。
混乱的依赖管理。
   项目的依赖管理非常的繁琐。决定项目里要用哪些库就已经够让人头痛的了,你还要知道这些库的哪个版本和其他库不会有冲突,这是一个棘手的问题。并且,一旦选错了依赖的版本,随之而来的就是各种的不兼容的bug。
spring boot 可以解决上面2个问题

1.3SpringBoot的特点

Spring Boot 特点:
   快速开发spring应用的框架
   内嵌tomcat和jetty容器,不需要单独安装容器,jar包直接发布一个web应用
   简化maven配置,parent这种方式,一站式引入需要的各种依赖
   基于注解的零配置思想
   和各种流行框架,spring web mvc,mybatis,spring cloud无缝整合
更多细节,大家可以到官网查看。
总结
   spring boot 是spring快速开发脚手架,通过约定大于配置,优化了混乱的依赖管理,和复杂的配置,让我们用java -jar方式,运行启动java web项目。

2. 入门案例

   需求:创建HelloController,在页面中打印hello spring boot…
创建工程
我们先新建一个空的工程
在这里插入图片描述
工程名为project:
在这里插入图片描述
设置jdk版本为1.8:
在这里插入图片描述
新建一个module:
在这里插入图片描述
使用maven来构建:
在这里插入图片描述
然后填写项目坐标:
在这里插入图片描述
目录结构:
在这里插入图片描述
项目结构:
在这里插入图片描述
添加依赖
   SpringBoot提供了一个名为spring-boot-starter-parent的构件,里面已经对各种常用依赖(并非全部)的版本进行了管理,我们的项目需要以这个项目为父工程,这样我们就不用操心依赖的版本问题了,需要什么依赖,直接引入坐标即可!
添加父工程坐标

<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.0.RELEASE</version>
</parent>

添加web启动器
   为了让SpringBoot帮我们完成各种自动配置,我们必须引入SpringBoot提供的自动配置依赖,我们称为 启动器 。因为我们是web项目,这里我们引入web启动器:

<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>

   需要注意的是,我们并没有在这里指定版本信息。因为SpringBoot的父工程已经对版本进行了管理了。这个时候,我们会发现项目中多出了大量的依赖:
在这里插入图片描述
   这些都是SpringBoot根据spring-boot-starter-web这个依赖自动引入的,而且所有的版本都已经管理好,不会出现冲突。
管理jdk版本
   默认情况下,maven工程的jdk版本是1.5,而我们开发使用的是1.8,因此这里我们需要修改jdk版本,只需要简单的添加以下属性即可:

<properties>
<java.version>1.8</java.version>
</properties>

完整pom

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值