洛夕网站建设,想学软件开发报什么专业,wordpress wampserve,建筑网站首页设计文章目录 前言SpringBoot发展历程SpringBoot前置准备SpringBoot特点 SpringBoot项目初始化项目启动Springboot的核心概念IOC概念介绍Bean对象通过注解扫描包 例子配置文件 前言
SpringBoot发展历程
最初#xff0c;Spring框架的使用需要大量的XML配置#xff0c;这使得开发… 文章目录 前言SpringBoot发展历程SpringBoot前置准备SpringBoot特点 SpringBoot项目初始化项目启动Springboot的核心概念IOC概念介绍Bean对象通过注解扫描包 例子配置文件 前言
SpringBoot发展历程
最初Spring框架的使用需要大量的XML配置这使得开发过程复杂且难以维护。开发者需要通过XML文件来定义应用的各个组件和它们之间的关系。 随着Spring 4.x的发布框架逐渐引入了基于注解的配置方式。开发者可以通过Java类中的注解来代替XML配置从而简化了配置过程。这一变化使得开发者能够更直观地理解应用的结构并减少了配置文件的数量 为了解决传统Spring开发中的复杂性Pivotal团队在2014年推出了Spring Boot。Spring Boot旨在简化基于Spring的应用开发使得开发者可以更快速地构建和部署应用。它提供了约定优于配置的原则减少了繁琐的配置步骤同时集成了微服务架构的理念。
SpringBoot前置准备
Java语言基础IDEA编辑器、 Spring Boot 2.x版本支持JDK 8及以上版本 Spring Boot 3.x版本要求使用JDK 17或更高版本
SpringBoot特点
SpringBoot官网有具体介绍
创建独立的 Spring 应用程序直接嵌入 Tomcat、Jetty 或 Undertow(无需部署 WAR 文)提供丰富的 “starter” 依赖项以简化您的构建配置尽可能自动配置 Spring 和第三方库提供生产就绪型功能例如指标、运行状况检查和外部化配置不会生成额外检查也不需要 XML 配置
SpringBoot项目初始化
IDEA编辑器创建项目默认从 https://start.spring.io/上拉取代码可能会失败所以更换成阿里代理
项目启动
找到主类点击绿色按钮启动 启动日志内容解析这些日志信息记录了Spring Boot应用从启动到Tomcat和Spring上下文初始化的整个过程。
2024-10-27 20:56:54.037 INFO 54700 --- [ main] com.example.demo.Demo1Application : Starting Demo1Application using Java 11.0.13 on bogon with PID 54700 (/Users/one/Downloads/java后端学习/demo1/target/classes started by one in /Users/one/Downloads/java后端学习/demo1)
//- 应用程序 Demo1Application 正在启动使用 Java 11.0.13进程ID为54700。
2024-10-27 20:56:54.045 INFO 54700 --- [ main] com.example.demo.Demo1Application : No active profile set, falling back to 1 default profile: default
//- 没有设置活动的配置文件使用默认配置文件。
2024-10-27 20:56:56.032 INFO 54700 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8080 (http)// 内嵌的Tomcat服务器在8080端口初始化。
-2024-10-27 20:56:56.056 INFO 54700 --- [ main] o.apache.catalina.core.StandardService : Starting service [Tomcat]//- 开始启动Tomcat服务。
2024-10-27 20:56:56.056 INFO 54700 --- [ main] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.68]
//- 启动Servlet引擎使用的是Apache Tomcat 9.0.68。
2024-10-27 20:56:56.272 INFO 54700 --- [ main] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
//始化Spring的Web应用上下文。
2024-10-27 20:56:56.272 INFO 54700 --- [ main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 2092 ms
// 根Web应用上下文的初始化完成耗时2092毫秒。
2024-10-27 20:56:56.936 INFO 54700 --- [ main] o.s.b.a.w.s.WelcomePageHandlerMapping : Adding welcome page: class path resource [static/index.html]
//- 添加欢迎页面通常是static/index.html。
2024-10-27 20:56:57.159 INFO 54700 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8080 (http) with context path
//- Tomcat在8080端口成功启动应用的上下文路径为空。
2024-10-27 20:56:57.178 INFO 54700 --- [ main]
com.example.demo.Demo1Application : Started Demo1Application in 4.643 seconds (JVM running for 6.993)
//- 应用Demo1Application启动完成总耗时4.643秒。
2024-10-27 20:57:19.742 INFO 54700 --- [nio-8080-exec-2] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring DispatcherServlet dispatcherServlet
// 开始初始化Spring的DispatcherServlet。
2024-10-27 20:57:19.744 INFO 54700 --- [nio-8080-exec-2] o.s.web.servlet.DispatcherServlet : Initializing Servlet dispatcherServlet
//DispatcherServlet的初始化开始
2024-10-27 20:57:19.758 INFO 54700 --- [nio-8080-exec-2] o.s.web.servlet.DispatcherServlet : Completed initialization in 14 ms
//- DispatcherServlet的初始化完成耗时14毫秒。Springboot的核心概念IOC
概念介绍
IoC(Inversion of Control控制反转)是一种对象管理技术通常被称为IoC容器。它是一项管理对象生成、获取和管理的技术Java作为一门面向对象的语言对象的管理就至关重要。在传统的Java编程中对象一般通过new构建不方便管理,而Springboot通过注解来构建对象。
Bean对象
Bean是由Spring IoC容器实例化、组装和管理的对象。容器负责其生命周期包括创建、初始化和销毁。 Bean的定义可以通过XML配置、Java注解或Java配置类来实现提供了多种灵活的配置方式。 Spring支持依赖注入(DI)可以在Bean中自动注入其依赖的其他Bean从而降低了对象之间的耦合度。
通过注解扫描包
在主类上添加ComponentScan包扫描注解注意该注解会扫描述的类所在包和其子包的注解springboot的主类SpringBootApplication集成了这个包
例子
首先使用Configuration注解定义一个配置类并通过Bean注解创建Bean。
Configuration
public class AppConfig { Bean public UserService userService() { return new UserService(); } Bean public UserRepository userRepository() { return new UserRepository(); }
}接下来在需要使用这些Bean的地方通过Autowired注解进行依赖注入
Service
public class UserService { private final UserRepository userRepository; Autowired public UserService(UserRepository userRepository) { this.userRepository userRepository; } public void performAction() { // 使用 userRepository }
}配置文件
配置文件是管理应用设置的重要部分。通常使用application.properties或application.yml来定义各种配置项配置项都是做了默认配置的比如端口号日志。 application.yml
# 设置端口号
server:port: 9999application.properties
# 设置端口号
server.port8081文章到这里就结束了,希望对你有所帮助