赞
踩
Spring Boot核心理念:
简化,简化,再简化项目的前期开发准备
笔者也是近两年一直深耕于Spring框架体系,故通过该篇文章从一个新手入门的角度一步步去拆解如何搭建一套企业级的Spring Boot基础框架。
IDE:idea(本教程以idea作为开发工具,如没有使用idea的暂且略过该篇教程)
JDK:10+(笔者没有选择流行的1.8版本原因在于JDK10+后提供了var语法等其他一系列快速开发支持)
Maven:3.4+
Spring Boot:2.1.2.RELEASE(应该差不多是我所了解的网上教程里面版本使用较新的)
友情提示:阅读该篇文章需要idea使用基础,如果从未使用过idea,请先游览相关使用教程后阅读本篇文章体验感会更加舒适,本篇文章指引从实际入手,不会对细节介绍非常详细,如项目目录结构之类的,也是为了防止变成新手劝退指引,如果文章中指引有误,欢迎大家提出指导意见。
项目准备流程:
1、新建项目为Spring Initializr的项目类型,默认选择模板为spring.io,点击Next进行下一步
2、输入Group,Artifact信息,Java Version为11(未安装11版本的,请先安装,如果系统已安装JDK10的,可以选择10),输入并选择完信息后点击Next进行下一步配置;3
Group:组织信息(公司信息,如com.xxxx)
Artifact:产品信息(项目代号)
3、该页面为项目依赖包选择,这步可以跳过,点击Next,后面如果需要使用依赖包,可以使用idea强大的包搜索快捷键实现
4、为你的项目取一个好听的名字,输入完毕后点击Finish开始自动构建项目;
5、 项目构建完毕后,我们可以看到如下项目结构:
DemoApplication为Spring Boot启动类,打开该文件可以看到如下代码:
- package com.example.demo;
-
- import org.springframework.boot.SpringApplication;
- import org.springframework.boot.autoconfigure.SpringBootApplication;
-
- @SpringBootApplication
- public class DemoApplication {
-
- public static void main(String[] args) {
- SpringApplication.run(DemoApplication.class, args);
- }
-
- }
该类默认注解了@SpringBootApplication启动配置,该注解指示Spring Boot自动加载配置文件及相关组件自动注入(如会话拦截器,全局异常拦截器,实体校验等),Spring Boot默认通过main方法启动,运行时点击idea右上角运行/调试按钮启动框架,如果按钮为灰色,则可以在该类中使用右键:Run 'xxxxApplication',则idea会自动记录该启动文件加载到右上角。
点击运行后,Console会输出如下日志信息,因为还没有添加web相关依赖包,故spring启动完成后就退出了:
- Connected to the target VM, address: '127.0.0.1:53231', transport: 'socket'
-
- . ____ _ __ _ _
- /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
- ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
- \\/ ___)| |_)| | | | | || (_| | ) ) ) )
- ' |____| .__|_| |_|_| |_\__, | / / / /
- =========|_|==============|___/=/_/_/_/
- :: Spring Boot :: (v2.1.3.RELEASE)
- 2019-03-08 11:01:16.402 INFO 5608 --- [ main] com.example.demo.DemoApplication : Starting DemoApplication on laymat-PC with PID 5608 (D:\project\Laymat\demo1\target\classes started by laymat in D:\project\Laymat\demo1)
- 2019-03-08 11:01:16.404 INFO 5608 --- [ main] com.example.demo.DemoApplication : No active profile set, falling back to default profiles: default
- 2019-03-08 11:01:16.873 INFO 5608 --- [ main] com.example.demo.DemoApplication : Started DemoApplication in 0.996 seconds (JVM running for 2.695)
- Disconnected from the target VM, address: '127.0.0.1:53231', transport: 'socket'
- Process finished with exit code 0
6、添加一个Controller,实现Web请求,新建一个IndexController类:
新建后给该类添加两个注解,@Controller,@RequestMapping
@Controller(指定该类为一个 Web Controller处理类)
@RequestMapping(指定访问请求url代理地址)
在上图中,我们可以看到@RequestMapping注解是红色的,表示未找到该类的提供包,这时候我们就可以使用idea提供的高效的智能提示方案,我们先选中该类,然后使用键盘快捷键(Alt+Enter),然后根据idea弹出的提示,选择第一行Add 'spring-boot-starter-web' to classpath,选中后idea则会自动将该依赖包加载到pom包管理器中,我们等待右下角包下载完毕后,再使用(Alt+Enter)添加@RequestMapping的引用。注:idea可以设置自动删除和添加引用,设置方法请参考其他网上教程
7、为Controller添加处理方法
如图所示,我们创建一个IndexController控制器后,则继续需要添加Action(方法),每个Action都可以使用@RequestMapping注解设置请求的url路径。在上图中,笔者新建了一个TestAction方法,@RequestMapping绑定为/test,则URL中对该Action的访问地址则为:http://xxxxx/index/test。
划重点:在上图中,笔者使用var map = new HashMap<>();这一段新语法,该语法也是JDK10后提供的新特性,面向开发者可以在不指定返回参数的情况下使用var符代替我们原来使用显示接收对象方式,笔者推荐大家使用该新语法特性运用到以后的项目中。
8、启动你的项目
在完成上述一系列配置后,我们就可以启动Spring Boot,以提供Web请求处理的能力:
看到控制台如下输出,则证明项目已经启动成功(Spring Boot已经默认集成了Tomcat容器,如图所示为9.0.16版本),故不需要额外配置Tomcat容器来支持运行。
输入http://127.0.0.1:8080/index/test ,出现如下结果,则表示服务运行正常。
以上教程源码均托管于github:
https://github.com/laymats/spring.boot
交流群:
668214636
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。