Spring学习之路-SpringBoot简单入门
简单讲SpringBoot是对spring和springMVC的二次封装和整合,新添加了一些注解和功能,不算是一个新框架。
学习来源是官方文档,虽然很详细,但是太墨迹了…
地址:https://docs.spring.io/spring-boot/docs/1.5.8.RELEASE/reference/htmlsingle/#boot-documentation
我是配合maven来学习的,所以首先是pom.xml的配置,根据官方文档如下:
pom.xml
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.8.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
稍微解释下:
spring-boot-starter-web会自动引入一些web相关的spring框架,包含tomcat、springframework等等
spring-boot-devtools相当于webpack中的热重载,可以快速更新资源并在应用中得到响应。
parent、plugins这两个忘了,反正对我这种菜鸟来说,引入就没错
接下来是启动一个简单的HelloWorld程序,不按照官网的example来了,直接上最终版:
@SpringBootApplication
public class Application{
public static void main(String[] args) {
SpringApplication app = new SpringApplication(Application.class);
app.run(args);
}
}
执行该文件后,会启动一个服务器,默认端口8080,打开后会显示一个默认的error页面,如图所示:

这里的@SpringBootApllication注解用在主入口函数上,是三个注解的合体:@Configuration, @EnableAutoConfiguration and @ComponentScan
因为这三个注解一般都是成套出现,所以SpringBoot把他们合成了一个。
这个只需要关注@ComponentScan注解,这个注解的意思是会对目录下所有的文件进行扫描,功能类似于beans.xml中的:
<context:component-scan base-package="project"/>
是的,在主入口函数用了这个注解,连xml文件都省了。
刚才打开的是一个默认的error页面,可以通过配置Controller来处理request请求:
@RestController
public class web {
@RequestMapping("/")
String Home(){
return "<h1>Home Page!!!</h1>";
}
@RequestMapping("/Jimmy")
String Jimmy(){
return "<h1>Jimmy Page!!!</h1>";
}
}
新建一个java文件,然后代码如上所示,此时打开localhost:8080,会看到:
如果将连接改成localhost:8080/Jimmy,会看到:
也就是说,该类被注解为一个Servlet类,用来处理各种请求。而@RequestMapping注解表明请求路径,里面还可以指明method,这里就不做演示了。
有时候并不希望主页通过这样的方法输出,也可以自定义一个html页面作为首页展示。
SpringBoot默认会自动扫描/static (or /public or /resources or /META-INF/resources路径下的静态资源,然后将其中的index.html作为首页。
当然也可以通过自定义路径来指定静态资源路径,这里就演示下 默认扫描:

目录结构如图,最重要的是建一个文件夹,名称为上面列出来的默认项之一,然后往里面丢一个index.html,重启后打开主页可见:
上面的自定义错误页面比较丑,SpringBoot可以自定义404页面,方式也很简单,在public中新建一个error文件夹,里面放404.html,当出现404错误时,会自动扫描该文件夹下的该页面,如图:


至此,基本的功能都差不多了,官方文档还有很多杂七杂八的,目前也用不上。
后面还有两章讲SpringBoot与Mysql、Nosql的连接使用,因为暂时没有学数据库,所以跳过。
完事。
Spring学习之路-SpringBoot简单入门的更多相关文章
- ECharts.js学习(一) 简单入门
EChart.js 简单入门 最近有一个统计的项目要做,在前端的数据需要用图表的形式展示.网上搜索了一下,发现有几种统计图库. MSChart 这个是Visual Studio里的自带控件,使用比 ...
- Spring学习之路——简单入门HelloWorld
Spring简单介绍 Spring是一个提供了解决J2EE问题的一站式框架. Spring的核心是反转控制,通过配置文件完成业务对象之间的依赖注入,他鼓励一个良好的习惯,就是注入对接口编程而不是对类编 ...
- Spring学习之路-从入门到放弃
后台框架是真难入门啊!!!IDE的使用,环境的搭建,框架下载,上手,每一步都恶心人. 花了整整两天,才学会用idea,并且初步了解了maven(TM就是一个npm),然后跟着下载了对应的jar包,搭建 ...
- springboot 学习之路 17(webflux 入门 (1))
Webflux: webflux是在springboot2系列引入的技术:补充一些概念: 1> Reactive Streams 是 JVM 中面向流的库标准和规范: 处理可能无限数量的元素 按 ...
- Spring学习之路-从放弃到入门
AOP:方法拦截器 IOC:类管理容器 主要讲讲这一天看Spring视频学到的东西,以下的叫法全是自创的. 1.类实例管理容器 关于Spring,首先是对类的管理,在常规情况,生成一个类需要调用new ...
- springboot简单入门笔记
一.Spring Boot 入门 1.Spring Boot 简介 简化Spring应用开发的一个框架: 整个Spring技术栈的一个大整合: J2EE开发的一站式解决方案: 2.微服务 2014,m ...
- Spring全家桶系列–SpringBoot之入门JPA
//本文作者:cuifuan 什么是JPA? 一种规范,并非ORM框架,也就是ORM上统一的规范 用了之后可以做什么,为什么要用? 代码解释: 实体类 package com.example.spri ...
- MyBatis学习(一)简单入门程序
MyBatis入门学习 MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名 ...
- redis——学习之路五(简单的C#使用redis)
redis官方推荐使用的客户端程序 打星星表示推荐使用的客户端程序,一个笑脸表示最近6个月内有过正式活动的.http://redis.io/clients/#c 从这里我们可以判断官方推荐我们使用Se ...
随机推荐
- 实验6 LCD接口
1.利用单片机控制LCD1602,在LCD1602上显示字符串,并使其整屏左移. #include<reg51.h> #define uchar unsigned char #define ...
- C#把汉字转换成16进制(HEX)并向串口发送数据
报警器实例:(有发送,无返回获取) using System; using System.Collections.Generic; using System.Linq; using System.Te ...
- 《PHP, MySQL, Javascript和CSS》读书随手记----php篇
1. 基础 注释: // 或 /* */ $标示变量 语句末尾加分号 数组: $oxo = array(array('x','','o'), array('p','x',''),array('','x ...
- WCF接口实例介绍
Windows Communication Foundation(WCF)是由微软开发的一系列支持数据通信的应用程序框架,可以翻译为Windows 通讯开发平台. WCF整合了原有的windows通讯 ...
- Shell - 简明Shell入门09 - 重定向(Redirection)
示例脚本及注释 #!/bin/bash pwd > 1.log # 输出重定向到指定文件 date 1> 1.log # ">"与"1>" ...
- centos7搭建mysql5.7主从同步
主从基本概念 mysql主从同步定义 主从同步使得数据可以从一个数据库服务器复制到其他服务器上,在复制数据时,一个服务器充当主服务器(master),其余的服务器充当从服务器(slave).因为复制是 ...
- python粘包分析与解决
TCP与UDP协议 TCP(transport control protocol,传输控制协议)是面向连接的,面向流的,提供高可靠性服务.收发两端(客户端和服务器端)都要有一一成对的socket,因此 ...
- python垃圾回收
python垃圾回收 python垃圾回收主要使用引用计数来跟踪和回收垃圾.在引用计数的基础上,通过“标记—清除”解决容器对象可能产生的循环引用问题,通过“分代回收”以空间换时间的方法提高垃圾回收效率 ...
- Python爬虫实战四之抓取淘宝MM照片
原文:Python爬虫实战四之抓取淘宝MM照片其实还有好多,大家可以看 Python爬虫学习系列教程 福利啊福利,本次为大家带来的项目是抓取淘宝MM照片并保存起来,大家有没有很激动呢? 本篇目标 1. ...
- JVM Scan
1.jmap -histo pid|head -100 2.jstat -gcutil pid cycle 3.jmap -heap pid