springBoot基础
1.什么是springBoot(概念及其特点)
1.概念 (1) 介绍 官网地址: https://spring.io/ Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过 程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。Spring Boot致力于 在蓬勃发展的快速应用开发领域成为领导者。 2013年,Pivotal团队开始研发SpringBoot。2014年4月,发布全新开源的轻量级框架的第一个SpringBoot版本。 原博文:https://www.sohu.com/a/286995880_684445 1.2 特点 为什么要学习SpringBoot? SpringBoot是为了简化Spring应用的创建、运行、调试、部署等一系列问题而诞生的产物,自动装配的特性 让我们可以更好的关注业务本身而不是外部的XML配置,我们只需遵循规范,引入相关的依赖就可以轻易的 搭建出一个 WEB 工程 未接触SpringBoot之前,搭建一个普通的WEB工程往往需要花费30分钟左右,如果遇到点奇葩的问题耽搁的 时间会更长一点,但自从用了SpringBoot后,真正体会到什么叫分分钟搭建一个WEB,让我拥有更多的时间 跟我的小伙伴们唠嗑了。使用SpringBoot后发现一切是如此的简单(还记得被JAR包,xml支配的恐惧吗,如 今都可以说 good bye) 在传统的一些框架中(SSH、SSM、Servlet/JSP) 虽然功能很强大但是配置起来太麻烦了,相比python或者 php ,Java就略显臃肿,主要问题集中在两点: 1. 复杂的配置文件: 项目之间各种配置文件铺天盖地,在开发的过程中占用了大量的时间,并且需要做这些配置文件进行维护, 整个项目感觉特别复杂,并且Java代码和配置文件之间的切换开发,给程序人员带来很大的负担。 1. 各种依赖比较混乱: 主要问题就是版本冲突,不同技术的版本需要我们知道哪些版本存在冲突问题,一旦使用错误就需要重新再 去下载库进行依赖。 而Spring Boot简化了基于Spring的应用开发,只需要一个”run”就创建了一个独立的、生产级别的Spring应 用,Spring boot为Spring平台及第三方提供了开箱即用的设置(默认设置的包就是启动器starter),这样我们 就可以简单的开始。Spring Boot主张,用最少的配置做更多的事。如果我们创建一个Java应用,并使用java -jar启动,就能得到一个生产级别的web工程。 特点: 创建独立的 Spring 应用程序 直接嵌入Tomcat、Jetty或Undertow(无需部署WAR文件) 提供自以为是的“入门”依赖项以简化您的构建配置 尽可能自动配置 Spring 和 3rd 方库 提供生产就绪功能,例如指标、运行状况检查和外部化配置 完全不需要代码生成,也不需要 XML 配置 SpringBoot = Spring+SpringMVC 2. 构建SpringBoot项目 2.1 start.spring.io
2.2 Spring Initializr 创建项目
选择依赖
创建完成结构
2.3 运行项目 点击选择启动项目工程
观察启动日志
2.4 前后台交互 创建控制层
package com.its.controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController @RequestMapping("/example") public class ExampleController { @GetMapping("/show") public String show(){ return "hello SpringBoot!!"; } }
重启项目并访问 http://localhost:8080/example/show 输出:
至此 前后台交互完成!!
3.目录结构 工程结构
- src -main -java -package #主函数,启动类,运行它如果运行了 Tomcat、Jetty、Undertow 等容器 -SpringbootApplication -resouces #存放静态资源 js/css/images 等 - statics #存放 html 模板文件 - templates #主要的配置文件,SpringBoot启动时候会自动加载 application.yml/application.properties - application.yml #测试文件存放目录 -test # pom.xml 文件是Maven构建的基础,里面包含了我们所依赖JAR和Plugin的信息 - 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 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <!-- 父类依赖 --> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.7.5</version> <relativePath/> <!-- lookup parent from repository --> </parent> <!-- 项目信息 --> <groupId>com.its</groupId> <artifactId>HelloSpringBoot</artifactId> <version>0.0.1-SNAPSHOT</version> <name>HelloSpringBoot</name> <description>HelloSpringBoot</description> <!-- 属性配置 --> <properties> <java.version>1.8</java.version> </properties>
4.查看SpringBoot默认提供的Bean
package com.its; import org.springframework.boot.CommandLineRunner; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.ApplicationContext; import org.springframework.context.annotation.Bean; import java.util.Arrays; @SpringBootApplication public class HelloSpringBootApplication { public static void main(String[] args) { SpringApplication.run(HelloSpringBootApplication.class, args); } @Bean public CommandLineRunner commandLineRunner(ApplicationContext ctx) { return args -> { System.out.println("来看看 SpringBoot 默认为我们提供的 Bean:"); String[] beanNames = ctx.getBeanDefinitionNames(); Arrays.sort(beanNames); Arrays.stream(beanNames).forEach(System.out::println); }; } }
5.手动注入bean
//注入一个bean @Bean public Student student(){ return new Student("张三"); }
运行查看是否注入 控制层可以注解读取
· ·
、
标签:SpringBoot,第一篇,Spring,springframework,第四天,org,import,public,springBoot From: https://www.cnblogs.com/XieLingYu/p/17232959.html