基于Springboot构建企业应用系统以及开发高性能的互联网应用

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
Serverless 应用引擎免费试用套餐包,4320000 CU,有效期3个月
性能测试 PTS,5000VUM额度
简介: Spring Boot 是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。

什么是Springboot?

官方是这么定义的:

Spring Boot 是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。

用我的话来理解,就是 Spring Boot 其实不是什么新的框架,它默认配置了很多框架的使用方式,就像 Maven 整合了所有的 Jar 包,Spring Boot 整合了所有的框架。

为什么要用Spring boot?

总的来说其实就是简单、快速、方便!平时如果我们需要搭建一个 Spring Web 项目的时候需要怎么做呢?

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

可以看出来真的很麻烦

现在非常流行微服务,如果这个项目仅仅只是需要发送一个邮件,即使项目仅仅是生产一个积分;都需要这样折腾一遍!

但是如果使用 Spring Boot 呢?

很简单,仅仅只需要非常少的几个配置就可以迅速方便的搭建起来一套 Web 项目或者是构建一个微服务!

具体实现且看下面这一份文档:

Spring Boot2 精髓

第1章 Java EE简介

  • Java EE
  • Spring
  • Spring Boot
  • Hello, Spring Boot

介绍Java EE,然后指出其缺点,引入了流行的Spring,同时也说明Spring经过这么多年发展后暴露的一些缺点, 从而引出Spring Boot,并以两个简要例子作为说明。

第2章 Spring Boot基础

  • 检查Java环境与安装Java
  • 安装和配置Maven
  • Spring核心技术

对Spring Boot应用的开发环境做了说明,包括Java开发环境的安装和配置, Maven的安装和配置,设置国内仓库镜像,还有常用的Maven命令。本章最后介绍Spring历史以及现有开发团队,并介绍Spring框架的AOP和loC两个核心技术

第3章 MVC框架

  • 集成MVC框架
  • 使用Controller
  • URL映射到方法
  • 方法参数
  • 验证框架
  • WebMvcConflgurer
  • 视图技术
  • 通用错误处理
  • Service和Transactional
  • curl齡

介绍MVC技术,前半部分重点介绍URL映射到Contoller,以及映射到Controller方法的参数、参数类型转化、参数验证。后半部分简单介绍MVC中的视图技术Freemaker. Beet.,以及Jackson序列化技术。Bet和Jackson将在第4章详细介绍。

第4章 视图技术

  • Beet|模板引擎
  • 使用变量
  • 表达式
  • 控制语句
  • 函数调用
  • 格式化函数
  • 直接调用Java
  • 标签函数
  • HTML标签
  • 安全输出
  • 高级功能
  • 脚本引擎
  • JSON技术
  • MVC分离开发

介绍笔者的开源技术Beetl后端模板引擎,作为国内流行的模板引擎之一,具有简单易学、功能/性能强大、支持MVC分离开发等特点。另外一部分详细介绍Jackson的JISON序列化技术。Jackson 不仅作为Spring MVC中的JISON默认工具,也是Spring Boot分布式技术中常采用的JSON序列化技术。

第5章 数据库访问

  • 配置数据源
  • Spring JDBC Template
  • BeetISQL介绍
  • SQLManager内置CRUD
  • 使用salld
  • BeetISQL的其他功能

介绍以SQL为中心的数据库访问工具BeetlSQL, 这是笔者的另外一款流行Dao工具,SQL 在markdown文件中管理,内置增删改查、轻量级ORM功能、代码生成、主从支持、跨多种数据库等特点,适合那些更喜欢以SQL方式访问数据库的开发者。

第6章 Spring Data JPA

  • 集成Spring Data JPA
  • Repository

介绍以面向对象为中心的数据库访问工具Spring Data JPA.本章由易到难,先从Spring Data提供的功能入手,介绍如何完成数据库简单的增删改查功能,然后引入JPA来解决应用中不可避免的复杂SQL查询。

第7章Spring Boot配置

  • 配置Spring Boot
  • 日志配置
  • 读取应用配置
  • Spring Boot自动装配

介绍Spring Boot 高级特性,如常用的Spring Boot的配置、日志配置、应用配置的读取、Spring Boot自动装配技术和Spring Boot Starter实现。

第8章 部署Spring Boot应用

  • 以jar文件运行
  • 以war方式部署
  • 多环境部署
  • Profile注解

介绍如何部署Spring Boot 应用,包括可执行jar,以及通过war部署到应用服务器上。应用经常面对多个环境,如开发、测试,还有准线上、线上,以及多个Demo环境,SpringBoot提供Profile来实现多环境部署。

第9章 Testing单元测试

  • JUnit介绍
  • Spring Boot单元测试
  • Mockito
  • 面向数据库应用的单元测试

介绍单元测试概念,以及Spring Boot下的单元测试支持,包括MVC单元测试、Mock测试,以及面向数据库应用的测试方案。

需要这份文档的老哥可以点击此处来获取就可以了!

第10章 REST

  • REST简介
  • Spring Boot集成REST
  • Swagger UI
  • 模拟REST服务

介绍RESTful风格的架构,然后介绍Spring Boot如何集成以提供REST服务,使用RestTemplate调用REST服务。本章最后也重点介绍了Swagger 3.0技术,以方便REST的接口的交流、开发和测试。

第11章 MongoDB

  • 安装MongoDB
  • 使用shell
  • Spring Boot集成MongoDB
  • 增删改查

介绍MongoDB的安装和使用,然后介绍Spring Boot如何集成MongoDB,同时还介绍了如何用MongoTemplate访问MongoDB。

第12章 Redis

  • 安装Redis
  • 使用redis-cli
  • Spring Boot集成Redis
  • 使用StringRedisTemplate
  • 序列化策略

介绍Redis服务器的安装和使用,Redis常用的数据结构和操作命令。然后介绍SpringBoot如何集成Redis,如何使用Redis' Template来操作Redis.本章后半部分深入介绍了RedisTemplate提供的序列化机制。

第13章 Elasticsearch

  • Elasticsearch介绍
  • 使用REST访问Elasticsearch
  • 使用RestTemplate访问ES
  • Spring Data Elastic

介绍Elasticsearch 的安装和使用,Elasticsearch 既具有全文搜索功能,也能像MongoDB那样,具备NoSQL的功能。本章介绍通过REST和Spring Data两种方式访问Elasticsearch.

第14章 Cache

  • 关于Cache
  • Spring Boot Cache
  • 注释驱动缓存
  • 使用Redis Cache
  • Redis缓存原理
  • 实现Redis两级缓存

介绍SpringBootCache,并重点介绍Redis作为分布式缓存的实现。在此基础上,改进了Redis 分布式缓存,通过较少的代码实现了一个具备一二级缓存的技术方案。

第15章 Spring Session

  • 水平扩展实现
  • Nginx的安装和配置
  • Spring Session

Spring Boot应用水平扩展,需实现无会话状态技术,Spring Session 提供了分布式会话管理,本章介绍了Nginx作为反向代理的内容,以及Spring Session的Redis实现及其源码分析。

第16章 Spring Boot和ZooKeeper

  • ZooKeeper
  • Spring Boot集成ZooKeeper
  • 实现分布式锁
  • 服务注册
  • 领导选取

基于第15章SpringBoot应用水平扩展技术必然带来分布式协调要求,ZooKeeper是一个广泛使用的分布式协调器。本章介绍ZooKeeper的安装和使用,对领导选取、分布式锁和服务注册三个常用功能做了重点描述,并在Spring Boot应用中采用Curator来完成这三个功能。

第17章 监控Spring Boot应用

  • 安装Acutator
  • HTTP踉踪
  • 日志查看
  • 线程找信息
  • 内存信息
  • 查看URL映射
  • 查看Spring容器管理的Bean
  • 其他监控
  • 编写自己的监控信息

Spring Boot提供了内置监控功能,使得用户通过HTTP请求就能知晓服务器的健康状态,如数据源是否可用、NoSQL服务是否可用、最近的HTTP访问的内容等监控信息。本章讲述了线程栈、内存、在线日志、HTTP访问、RequestMapping等常用监控功能。其中还讲述通过dump线程栈和内存来解决SpringBoot应用中的一些性能故障。

这份文档系统介绍了Spring Boot 2.0的主要技术,侧重于两个方面,一方面是极速开发一个 Web应用系统,随后介绍了Spring Boot的高级特性,包括多环境部署、自动装配、单元测试等技术。另外一方面,当系统模块增加,性能和吞吐量要求增加时,如何平滑地用Spring Boot来实现分布式架构。

需要这份文档的老哥可以点击此处来获取就可以了!

相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
相关文章
|
1月前
|
XML Java 数据格式
SpringBoot入门(8) - 开发中还有哪些常用注解
SpringBoot入门(8) - 开发中还有哪些常用注解
52 0
|
1月前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个具有动态路由和菜单功能的前后端分离应用。
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个具有动态路由和菜单功能的前后端分离应用。首先,创建并配置 Spring Boot 项目,实现后端 API;然后,使用 Ant Design Pro Vue 创建前端项目,配置动态路由和菜单。通过具体案例,展示了如何快速搭建高效、易维护的项目框架。
117 62
|
11天前
|
存储 JavaScript 前端开发
基于 SpringBoot 和 Vue 开发校园点餐订餐外卖跑腿Java源码
一个非常实用的校园外卖系统,基于 SpringBoot 和 Vue 的开发。这一系统源于黑马的外卖案例项目 经过站长的进一步改进和优化,提供了更丰富的功能和更高的可用性。 这个项目的架构设计非常有趣。虽然它采用了SpringBoot和Vue的组合,但并不是一个完全分离的项目。 前端视图通过JS的方式引入了Vue和Element UI,既能利用Vue的快速开发优势,
69 13
|
19天前
|
JavaScript 安全 Java
java版药品不良反应智能监测系统源码,采用SpringBoot、Vue、MySQL技术开发
基于B/S架构,采用Java、SpringBoot、Vue、MySQL等技术自主研发的ADR智能监测系统,适用于三甲医院,支持二次开发。该系统能自动监测全院患者药物不良反应,通过移动端和PC端实时反馈,提升用药安全。系统涵盖规则管理、监测报告、系统管理三大模块,确保精准、高效地处理ADR事件。
|
24天前
|
负载均衡 Java 开发者
深入探索Spring Cloud与Spring Boot:构建微服务架构的实践经验
深入探索Spring Cloud与Spring Boot:构建微服务架构的实践经验
78 5
|
27天前
|
消息中间件 Java Kafka
Spring Boot 与 Apache Kafka 集成详解:构建高效消息驱动应用
Spring Boot 与 Apache Kafka 集成详解:构建高效消息驱动应用
42 1
|
1月前
|
XML Java 数据格式
SpringBoot入门(8) - 开发中还有哪些常用注解
SpringBoot入门(8) - 开发中还有哪些常用注解
42 2
|
1月前
|
XML Java 数据库连接
SpringBoot集成Flowable:打造强大的工作流管理系统
在企业级应用开发中,工作流管理是一个核心组件,它能够帮助我们定义、执行和管理业务流程。Flowable是一个开源的工作流和业务流程管理(BPM)平台,它提供了强大的工作流引擎和建模工具。结合SpringBoot,我们可以快速构建一个高效、灵活的工作流管理系统。本文将探讨如何将Flowable集成到SpringBoot应用中,并展示其强大的功能。
224 1
|
1月前
|
Java
SpringBoot构建Bean(RedisConfig + RestTemplateConfig)
SpringBoot构建Bean(RedisConfig + RestTemplateConfig)
44 2
|
1月前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个前后端分离的应用框架,实现动态路由和菜单功能
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个前后端分离的应用框架,实现动态路由和菜单功能。首先,确保开发环境已安装必要的工具,然后创建并配置 Spring Boot 项目,包括添加依赖和配置 Spring Security。接着,创建后端 API 和前端项目,配置动态路由和菜单。最后,运行项目并分享实践心得,帮助开发者提高开发效率和应用的可维护性。
84 2