最近Spring boot真是越来越火了,所以就想学习并写一个Spring boot的系列文章。以前大家一说spring的时候,都会想到Spring mvc框架,但是Spring mvc配置文件真是太多啦,而且每一个项目配置文件的内容都是差不多的,配置起来真是太费劲了。

还好现在Spring boot框架火了起来,原因就是约定大于配置,多数 Spring Boot 应用只需要很少的 Spring 配置,搭建一个spring boot项目真的是几秒就可以,大大简化了配置文件的编写。缺点就是封装太多,自动化太强,不如Spring mvc那样易懂,文档略少,版本迭代速度很快,也证明了该框架目前很火的趋势。

说了这么多,那么spring boot都有哪些优点呢?让这么多人都爱不释手

一、Spring boot优点

  • 使用 Spring 项目引导页面可以在几秒构建一个项目
  • 方便对外输出各种形式的服务,如 REST API、WebSocket、Web、Streaming、Tasks
  • 非常简洁的安全策略集成
  • 支持关系数据库和非关系数据库
  • 支持运行期内嵌容器,如 Tomcat、Jetty
  • 强大的开发包,支持热启动
  • 自动管理依赖
  • 自带应用监控
  • 支持各种 IED,如 IntelliJ IDEA 、NetBeans
  • 使测试变的简单,如JUnit、Spring Test & Spring Boot Test
  • 强大的日志框架,如logback

有点说了这么多,还是得靠自己以后慢慢摸索,这里就当是先提个醒,接下来,我们来创建Spring boot项目

二、新建spring boot项目

1. 打开idea,选择新建项目,java要1.8版本以上




springboot mybaits缺点_mysql


2. 配置项目名称,包名


springboot mybaits缺点_spring_02


3. 确定spring boot版本,选择依赖


springboot mybaits缺点_springboot的优点_03


4. 确定项目存放地址


springboot mybaits缺点_mysql_04


5. 删除一些文件


springboot mybaits缺点_springboot优点_05


6. 项目主目录


springboot mybaits缺点_springboot优点_06


7. 设置application.properties

这个文件就是用来书写spring boot项目的配置信息的。

spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driverspring.datasource.url=jdbc:mysql://localhost:3306/study?allowMultiQueries=true&serverTimezone=GMT%2B8spring.datasource.username=rootspring.datasource.password=root123

上述配置是配置了mysql相关的配置信息,说明:

  • driver:使用高版本的mysql-connector-java.jar,之前的配置com.mysql.cj.jdbc.Driver会被spring boot 2.1.0提示已被废弃,建议使用com.mysql.cj.jdbc.Driver。像本项目,使用的mysql-connector-java.jar版本就是8.0.13。(注:可在pom.xml文件内右键点击Maven的show Effective POM中查看对应pom依赖的版本信息)
  • url:主要由主机+端口号+数据库拼凑而成,allowMultiQueries=true代表允许sql语句执行批量操作;serverTimezone=GMT%2B8代表时区—东八区,在mysql驱动高版本中必须得设置时区。
  • username:数据库账号
  • password:数据库密码

至此,spring boot项目的基本框架就搭建成功了。项目启动成功,如图所示:


springboot mybaits缺点_mysql_07


三、运行一个demo

新建helloDemo.java文件:

import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;import org.springframework.web.bind.annotation.RestController;import java.util.HashMap;import java.util.Map;@RestController@RequestMapping("hello")public class helloDemo { @RequestMapping("/info") public Map info() { Map map = new HashMap<>(); map.put("name