springBoot框架学习笔记(一)
一、Spring Boot 入门
1、Spring Boot 简介
简化Spring应用开发的一个框架;
整个Spring技术栈的一个大整合;
J2EE开发的一站式解决方案;
(2)微服务
2014,martin fowler
微服务:架构风格(服务微化)
一个应用应该是一组小型服务;可以通过HTTP的方式进行互通;
微服务:每一个功能元素最终都是一个可独立替换和独立升级的软件单元;
2.开发环境
开发工具:intellij IDEA
JDK:1.8
SpringBoot:2.2.4
Maven:3.3.9
3.入门案例-Helloworld
(1)创建一个maven工程;(jar)
(2)导入spring boot相关的依赖
注:由于初次启动需要导入大量的jar包较为缓慢!
pom.xml配置文件
<?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</modelVersion>
<groupId>com.selan</groupId>
<artifactId>springboot-01</artifactId>
<version>1.0-SNAPSHOT</version>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.4.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
a:文件中的<parent>
表示父项目,他所依赖的父父项目才是真正管理springboot应用里面的所有依赖版本(版本仲裁)
b:导入的依赖
spring-boot-starter-web:springbooot场景启动器,帮助我们导入了Web模块正常运行所依赖的组件
(3)编写一个主程序;启动Spring Boot应用
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@EnableAutoConfiguration
public class HelloWorld {
@RequestMapping("/")
String home() {
return "Hello World!";
}
public static void main(String[] args) {
SpringApplication.run(HelloWorld.class, args);
}
}
(4)运行主程序成功
也可以访问localhost:8080来访问!
4.配置文件讲解
1、父项目标签他的父项目他来真正管理Spring Boot应用里面的所有依赖版本;
Spring Boot的版本仲裁中心;
以后我们导入依赖默认是不需要写版本;(没有在dependencies里面管理的依赖自然需要声明版本号)
2、启动器
spring-boot-starter-web:
spring-boot-starter:spring-boot场景启动器;帮我们导入了web模块正常运行所依赖的组件;
Spring Boot将所有的功能场景都抽取出来,做成一个个的starters(启动器),只需要在项目里面引入这些starter
相关场景的所有依赖都会导入进来。要用什么功能就导入什么场景的启动器!
5.主程序类,主入口类
(1)@RestController和@RequestMapping注释
第一个注释是@RestController。这被称为构造型注释。它为阅读代码的人和Spring提供了提示,提示该类起特定的作用。在这种情况下,我们的类是web @Controller,因此Spring在处理传入的Web请求时会考虑使用它。
该@RequestMapping注释提供“路由”的信息。它告诉Spring任何具有/路径的HTTP请求都应映射到该home方法。该@RestController注解告诉Spring使得到的字符串直接返回给调用者.
@RestController与@RequestMapping注解是Spring MVC的注解.
(2)@EnableAutoConfiguration批注
第二个类级别的注释是@EnableAutoConfiguration。这个注释告诉Spring Boot根据所添加的jar依赖关系“猜测”您如何配置Spring。由于spring-boot-starter-web添加了Tomcat和Spring MVC,因此自动配置假定您正在开发Web应用程序并相应地设置Spring。
(3)“main”方法
我们应用程序的最后一部分是main方法。这只是遵循Java约定的应用程序入口点的标准方法。我们的main方法SpringApplication通过调用委托给Spring Boot的类run。 SpringApplication引导我们的应用程序,启动Spring,这反过来又启动了自动配置的Tomcat Web服务器。我们需要将HelloWorld.class一个参数传递给该run方法,以判断SpringApplication哪个是主要的Spring组件。该args数组也将通过以公开任何命令行参数。
6.创建一个可执行的Jar
通过创建一个可以在生产环境中运行的完全独立的可执行jar文件来结束示例
要创建可执行jar,我们需要将添加spring-boot-maven-plugin到pom.xml。为此,请在该dependencies部分下方插入以下行:
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
保存您的代码,pom.xml然后从命令行运行mvn package即可。
这个第一个springBoot入门项目就完成la!
上一篇: jquery页面焦点动态使用
下一篇: 很蛋疼的三个有关问题
推荐阅读
-
Symfony2框架学习笔记之表单用法详解,symfony2学习笔记_PHP教程
-
Gin-Go学习笔记二:Gin-Web框架
-
vue学习笔记(一): 建立 vue-cli 初始网站
-
Android学习笔记(Android Studio) 4-2-1~2 Fragment详解(一、二)(不可不会的Activity和Fragment)
-
php学习笔记 php中面向对象三大特性之一[封装性]的应用_PHP教程
-
Symfony2框架学习笔记之HTTP Cache用法详解_PHP
-
Laravel框架学习笔记(一)环境搭建_PHP
-
React学习笔记(一)
-
React学习笔记(一)
-
JSP学习笔记(一)-----概述