背景

想想之前搭建一个WEB项目,不管项目的功能简单或复杂,都需要哪些步骤:

  • 配置 web.xml,加载 Spring 和 Spring mvc
  • 配置数据库连接、配置 Spring 事务
  • 配置加载配置文件的读取,开启注解
  • 配置日志文件
  • 配置完成之后部署 Tomcat 调试

对于很多新手来说,很多配置还有很多问题,并不能一次成功

公众号:猿外郎

那 springboot 有什么优点呢?

核心理念:开箱即用,快速启动

它使用“约定优于配置”(项目中存在大量的配置,此外还内置了一个习惯性的配置,让你无需手动进行配置)的理念让你的项目快速运行起来。使用Spring Boot很容易创建一个独立运行(运行jar,内嵌Servlet容器)、准生产级别的基于Spring框架的项目,使用Spring Boot你可以不用或者只需要很少的Spring配置。

约定优于配置

也称作按约定编程,是一种软件设计范式,旨在减少软件开发人员需做决定的数量,获得简单的好处,而又不失灵活性。本质是说,开发人员仅需规定应用中不符约定的部分。

从本质上来说,Spring Boot就是Spring,它只是做了一些对Spring Bean的默认配置。有了SpringBoot只需要几个配置就可以搭建一个web项目!使用 Spring Boot 到底有多爽,用下面这幅图来表达

公众号:猿外郎

快速入门

创建 Maven 工程

这里介绍使用 IDEA 来创建项目

  • Create New Project
  • 左边选项框选择 Maven
  • 填写相关内容后,一路 Next
  • 最后确定信息无误点击Finish,OK done!

官方建议项目结构

myproject
+-src+- main+- java+- com.example.myproject+- comm+- model+- repository+- service+- web+- Application.java+- resources+- static+- templates+- application.properties+- test
+-pom.xml

  • Application.java 建议放到根目录下面,是项目的启动类,Spring Boot 项目只能有一个 main() 方法;
  • comm 目录建议放置公共的类,如全局的配置文件、工具类等;
  • model 目录主要用于实体(Entity)与数据访问层(Repository);
  • repository 层主要是数据库访问层代码;
  • service 层主要是业务类代码;
  • web 层负责页面访问控制,即controllerhandler
  • static 目录存放 web 访问的静态资源,如 js、css、图片;
  • templates 目录存放页面模板;
  • application.properties 存放项目的配置信息。

pom.xml 引入依赖

首先,以 parent 引入 SpringBoot

<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.1.7.RELEASE</version><relativePath/> <!-- lookup parent from repository -->
</parent>

然后,引入 web 依赖

<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency>
</dependencies>

配置文件

默认读取 classpath 下的 application.propertiesapplication.yml ,推荐使用 yml 文件格式。

建议配置多个不同环境的文件,只需两步:

  • application.yml 文件中配置 ,dev 表示开发环境,prod 表示生产环境,命名规则根据个人或公司而定;
spring:profiles:active: dev

  • 创建 application-dev.yml ,该文件内配置一些不同环境的配置。

创建启动类 HelloApplication.java

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
public class HelloApplication {public static void main(String[] args) {SpringApplication.run(CsttApplication.class, args);}
} 

右键 Run HelloApplication.java 即可启动。

访问处理

创建 controller

@RestController
public class HelloWorldController {@RequestMapping("/hello")public String index() {return "Hello World";}
}

@RestController 的意思就是 Controller 里面的方法都以 json 格式输出,不用再写什么 jackjson 配置的了!启动主程序,打开浏览器访问 http://localhost:8080/hello,就可以看到效果了。

springboot创建parent_Spring Boot 开篇:快速入门相关推荐

  1. Spring Boot的快速入门

    Spring Boot的快速入门 1.导入第一个maven项目 自动生成maven项目 2.了解maven项目结构 3.启动服务 和普通maven项目结构是一样的,值得注意的是,启动服务的入口是 ![ ...

  2. Spring Boot JWT 快速入门

    本章节讨论 jwt 在 spring boot 中的应用.意在快速入门 jwt. java jdk1.8 maven 3.2+ spring boot 2.0+ JSON Web Token(JWT) ...

  3. Spring Boot【快速入门】

    Spring Boot 概述 Build Anything with Spring Boot:Spring Boot is the starting point for building all Sp ...

  4. Spring Boot:快速入门教程

    什么是Spring Boot? Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人 ...

  5. pandas自动创建文件夹_pandas快速入门

    pandas有两类数据对象:dataframe和series.Series是一个带标签的一维数组,通常索引在左,值在右.dataframe是一个带标签的二维数组,可以理解成series的字典,共用索引 ...

  6. mysql快捷创建数据库_mysql数据库快速入门(1)

    1.数据库操作 1.1.连接mysql服务器 mysql -u root( 用户名 ) -p 1.2.退出mysql命令提示窗 exit 1.3.查看版本 SELECT VERSION(); 1.4. ...

  7. [HarmonyOS][鸿蒙专栏开篇]快速入门OpenHarmony的LiteOS微内核

    文章目录 1.获取源码 2.什么是LiteOS 3.LiteOS的目录介绍 4.LiteOS 中Make体系 5.LiteOS 中Kconfig的配置 5.1.顶层Kconfig 5.2.具体板级的d ...

  8. 芋道 Spring Boot 快速入门

    点击上方"芋道源码",选择"设为星标" 做积极的人,而不是积极废人! 源码精品专栏 原创 | Java 2019 超神之路,很肝~ 中文详细注释的开源项目 RP ...

  9. springboot aop使用_Springboot 完整搭建快速入门,必看!

    点击上方蓝字关注我们 作者:CansluckCSDN博客:https://blog.csdn.net/xgx120413 前言 手把手教你Springboot微服务项目搭建快速入门,通过本文学习Spr ...

最新文章

  1. freemarker基本语法及实例
  2. 搭建高可用web和数据库集群
  3. java类接口实验_实验3_Java类的继承和接口的定义和使用
  4. Oracle数据库的关闭详解
  5. spring集成mongodb通过aop记录业务日志
  6. Android 颜色渲染(五) LinearGradient线性渲染
  7. 很长很真实!但会对你有所帮助的(关于职业规划)
  8. PyTorch框架学习七——自定义transforms方法
  9. Eclipse创建SpringMVC,Spring, Hibernate项目
  10. 畅游互联的API接口如何对接到自己的网站上?
  11. useMemo与useCallback
  12. java编程计算_java编程之输入并进行计算
  13. CentOS 6.5下安装Docker
  14. UBT19:ubuntu安装qq与微信
  15. 计算机word excel试题,计算机基础WORD、EXCEL试题
  16. 吴恩达机器学习和深度学习视频和笔记
  17. 实习生到公司第一天应该怎么快速上手
  18. 视频只有声音没有图像?(收藏)
  19. 频率与时间换算方法-stm精确延时
  20. 看新闻的时候,你们手机都用什么软件?

热门文章

  1. HDU1878 欧拉回路
  2. HDU1426 Sudoku Killer DFS
  3. 全排列代码python_python全排列代码,求解释
  4. 用idea插件将一个spring boot项目部署到docker容器里运行
  5. ElasticSearch出现java.lang.IllegalStateException: duplicate plugin: - Plugin information:
  6. SpringMVC-自定义转换器
  7. DNA Sorting
  8. linux_mint语言卡住,使用linux mint 16的容易死机怎么处理?
  9. 记一个mysql分页查询优化试验
  10. JavaWeb-综合案例(用户信息)-学习笔记04【删除选中功能】