SpringBoot笔记(-):入门
简介
Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的为了简化Spring的配置,核心思想是约定大于配置。在开发一个Web项目中只需要引入相关的依赖,而不需要繁琐的配置过程,当然在需要特定配置的地方,只需在配置文件中按照约定格式进行配置就能替代默认的配置,达到简化配置,快速开发的核心诉求。
Web开发
让我们来回顾下在SSH、SSM框架时代我们开发一个Web项目需要哪些开发步骤
- 配置Web.xml,配置Spring、SpringMvc
- 配置数据库连接文件
- 整合Herbnate或Mybatis的数据层操作
- 配置日志文件
- 配置完成Tomcat调试
可以看出,开发一个Web项目的配置还是比较繁琐的,而且当我们开发一个新的项目时相同的步骤还要继续重复。下面,让我们看看用SpringBoot来构建一个Web项目,相信你一定能体会到其中的便捷。
SpringBoot构建
构建一个SpringBoot的项目有多种方式,介绍以下三种并使用其中一种进行构建:
- 访问 http://start.spring.io/
- IDEA 构建SpringBoot项目
- 构建普通的maven项目,引入SpringBoot的相关依赖
IDEA构建(JDK1.8以上,IDEA,Maven3.0)
打开Idea-> new Project ->Spring Initializr ->填写group、artifact ->钩上web(开启web功能)->点下一步就行了。
SpringBoot目录结构
src-- main-- java--代码 com.root controller--控制层 service--业务层 model--数据层 domain--实体层 ApplicationRun.java --主启动类 resources--资源 static--静态资源 template--动态模板 application.yml--配置文件,亦可放在config目录下
查看依赖(通过maven项目构建,只需引入相关)
<!--引入SpringBoot父依赖--> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.2.10.RELEASE</version> </parent> <!--引入Web和Test模块--> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies>
控制层代码
@RestController public class HelloWorldController { @RequestMapping("/hello") public String index() { return "Hello World"; } }
- RestController --直接返回json数据格式,默认使用jackson,相当于Controller+RequestMapping组合
- 直接浏览器访问localhost:8080/hello,就能看到结果
单元测试:
@RunWith(SpringRunner.class)和@SpringBootTest注解。
@RunWith(SpringRunner.class) @SpringBootTest public class HelloTests { private MockMvc mvc; @Before public void setUp() throws Exception { mvc = MockMvcBuilders.standaloneSetup(new HelloWorldController()).build(); } @Test public void getHello() throws Exception { mvc.perform(MockMvcRequestBuilders.get("/hello").accept(MediaType.APPLICATION_JSON)) .andExpect(status().isOk()) .andExpect(content().string(equalTo("Hello World"))); } }
此处应该看到SpringBoot的简便之处了吧:
- Spring的相关配置完全省略.....
- Web相关配置完全省略....
- Tomcat配置完全省略,因为SpringBoot内置了tomcat....
结语
SpringBoot大幅简化Web项目开发,使开发人员能够专注于项目业务,非常适合快速迭代,契合当前流行的微服务趋势。
后续我们还将继续介绍SpringBoot的其他功能,喜欢的可以点个心心。
参考资料:
纯洁的微笑: Springboot系列文章
方志朋: SpringBoot教程
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了