Spring Boot学习笔记---Spring Boot 基础及使用idea搭建项目
2024-10-19 12:40:39
最近一段时间一直在学习Spring Boot,刚进的一家公司也正好有用到这个技术。虽然一直在学习,但是还没有好好的总结,今天周末先简单总结一下基础知识,等有时间再慢慢学习总结吧。
Spring Boot 概述
首先,Spring Boot是一个框架,主要理念就是消除项目中大量的配置文件,使项目更加短小精悍。我们知道 java 的开发显得很笨重:繁多的配置、开发效率低下、复杂的布署流程以及第三方技术集成难度大。所以说,spring boot就是在此环境下产生的。
Spring Boot 的核心功能
- 独立运行的Spring 项目
Spring Boot 可以以jar包的形式独立运行,运行一个Spring Boot 项目只需要通过 java -jar xx.jar 来运行。 - 内嵌Servlet 容器
Spring Boot 可以选择内嵌Tomcat、Jetty或Undertow,这样我们无须以war包形式部署项目。 - 提供starter简化Maven 配置
Spring 提供了一系列的starter pom 来简化Maven 的依赖加载。 - 自动配置Spring
Spring Boot 会根据在类路径中的jar包、类,为jar包里的类自动配置Bean,这样会极大地减少我们要使用的配置。Spring Boot只考虑了大多数的场景,并不是所有的场景。 - 准生产的应用监控
Spring Boot 提供基于http、ssh、telnet对运行时的项目进行监控。 - 无代码生成和xml配置
Spring Boot不是借助代码生成来实现的,而是通过条件注解来实现的,这是spring 4.x的新特性。Spring 4.x提倡使用Java配置和注解配置组合,而Spring Boot不需要任何xml配置即可实现Spring 的所有配置。
Spring Boot 的优缺点
优点:
1. 快速构建项目;
2. 对主流开发框架的无配置集成;
3. 项目可以独立运行,无须外部依赖Servlet容器;
4. 提供运行时的应用监控;
5. 极大地提高了开发、部署效率;
6. 与云计算的天然集成。
缺点:
1. 书籍文档较少且不够深入;
2. 如果你不认同Spring 框架。
快速搭建Spring Boot项目
书中介绍了几种搭建Spring Boot项目的方式,我用的是idea,所以就只总结在idea下的搭建方式。
1. 新建Spring Initializr 项目,如图:
2. 填写项目信息,如图:
3. 选择项目使用的技术,如图:
4. 填写项目名称:如图:
5. 项目架构及依赖,如图:
6. 添加测试控制器。直接在入口类中编写。
package com.springboot.first;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@SpringBootApplication
public class FirstApplication {
@RequestMapping("/")
String index() {
return "Hello Spring Boot";
}
public static void main(String[] args) {
SpringApplication.run(FirstApplication.class, args);
}
}
@SpringBootApplication是Spring Boot 项目的核心注解,主要目的是开启自动配置。main方法是一个标准的Java应用的main方法,主要作用是作为项目启动的入口。
7. 运行项目,把它当成一个java类运行就可以了,右键菜单中选择,如图:
运行信息:
8. 运行结果,如图:
小结
以上是对Spring Boot 做一个基本的了解。从最后的一个例子来看,明显的可以感觉到开发一个Controller是多么容易,比SSM框架要快的多,因为你要搭建SSM框架都需要好长的时间,而Spring Boot只需要创建一个项目就可以了。很简单!
最新文章
- EncodingHelper
- Web String path问题
- 基于android平台的出题软件---- 每日30题
- 三分 --- POJ 3301 Texas Trip
- SQL SERVER安装提示“安装了 Microsoft Visual Studio 2008 的早期版本
- 关于egg的压缩测试报告
- 线形,柱形,条形数据表(百度Echart插件)
- PHP程序员的技术成长规划(送给迷茫的你)
- python中read、readline和readlines的区别
- JavaScript高级程序设计:第八章
- python 模块加载错误总结
- JAVANIO通道
- [正则表达式]PCRE反向分组引用(语法)
- Java堆、栈和常量池以及相关String详解
- for 没有作用域的说话
- ArcGIS Server Rest 认证过程分析
- Alpha冲刺! Day6 - 砍柴
- passwd 修改密码
- win7 下安装使用 nginx 出现500错误
- ThinkPHP 3.2 调用自定义函数库
热门文章
- python---正则中的(?P<;name>;group)
- WebLogic Server添加删除补丁操作【转】【补】
- Linux命令(九)查找文件find
- (五)bootloader 启动 ucore os
- 动态生成js数据Response.Expires=1440竟然无效?
- 12. SpringBoot国际化
- sock_ntop.c
- u-boot移植(三)---修改前工作:代码流程分析2
- 实现一个string类
- FPN-Feature Pyramid Networks for Object Detection