SpringBoot
文章平均质量分 93
Spring Boot 系列博文
山禾说
胸中有沟壑,眼里存山河
展开
-
Spring Boot 2.x (二):How Hello World & 热加载
本篇摘要上一篇文章,我们构建了一个HelloWorld的程序,现在,我们来看一下这个程序,下面是我们这一节要分析的点。spring-boot-starter-boot@SpringBootApplication热加载spring-boot-starter-boot我们这个程序是使用maven进行构建的,我们去看pom.xml文件可以发现它继承自这个pom,这是Maven的一个独有的...原创 2018-11-30 14:20:24 · 291 阅读 · 0 评论 -
SpringBoot 2.x(三):搭建开发环境(整合Spring Data JPA)
为什么是JPAJPA虽然小众,但是足够优雅╮(╯_╰)╭,由于微服务的兴起,服务粒度的细化,多表联合的场景逐渐减少,更多的是一些简单的单表查询,而这正是JPA的强项所在。所以,以后的实战项目中我也会用JPA来操作数据库,当然Mybatis也会在后面的教程中来集成,毕竟主流┑( ̄Д  ̄)┍。不多扯淡,下面进入主题。第一步:添加依赖首先,我们要做的是新建一个项目,如果有不会的同学可以去看第一篇...原创 2018-12-07 11:52:09 · 2210 阅读 · 0 评论 -
Spring Boot 2.x(四):整合Mybatis的四种方式
前言目前的大环境下,使用Mybatis作为持久层框架还是占了绝大多数的,下面我们来说一下使用Mybatis的几种姿势。姿势一:零配置注解开发第一步:引入依赖首先,我们需要在pom文件中添加依赖:第二步:配置文件这里我们采用yml来进行编写,与properties文件相比,yml看起来更加简洁优雅,这里需要注意的是driver-class-name这个属性我们采用的是com.mys...原创 2018-12-14 09:52:46 · 613 阅读 · 0 评论 -
Spring Boot 2.x(五):Mybatis-Plus + Spring Boot
简介Mybatis-Plus是在Mybatis的基础上,国人开发的一款持久层框架。并且荣获了2018年度开源中国最受欢迎的中国软件TOP5同样以简化开发为宗旨的Spring Boot与Mybatis-Plus放在一起会产生什么样的化学反应呢?下面我们来领略一下两者配合带来的效率上的提升。Mybatis-Plus的作用可以看到,它给我们提供了一些核心的功能:代码生成器和现成的CRUD接...原创 2018-12-21 09:15:33 · 2233 阅读 · 1 评论 -
Spring Boot 2.x(六):优雅的统一返回结果
为什么要统一返回值在我们做后端应用的时候,前后端分离的情况下,我们经常会定义一个数据格式,通常会包含code,message,data这三个必不可少的信息来方便我们的交流,下面我们直接来看代码ReturnVOpackage indi.viyoung.viboot.util;import java.util.Properties;/** * 统一定义返回类 * * @author...原创 2018-12-28 07:49:18 · 3411 阅读 · 0 评论 -
Spring Boot 2.x(七):优雅的进行异常处理
前言异常的处理在我们的日常开发中是一个绕不过去的坎,在Spring Boot 项目中如何优雅的去处理异常,正是我们这一节课需要研究的方向。异常的分类在一个Spring Boot项目中,我们可以把异常分为两种,第一种是请求到达Controller层之前,第二种是到达Controller层之后项目代码中发生的错误。而第一种又可以分为两种错误类型:1. 路径错误 2. 类似于请求方式错误,参数类型...原创 2019-01-11 18:05:36 · 1303 阅读 · 0 评论 -
Spring Boot 2.x(八):日志框架的使用
我们为啥要用日志?最初我们开始接触Java的时候,我们通常会使用System.out.println()将我们想要知道的信息打印到控制台。但是,如果在服务器上我们去运行我们的Java程序,这个时候就凸显了日志对于一个系统来说的重要性,查找异常信息、分析系统运行情况等都需要用到日志。为什么是SLF4J?默认情况下,Spring Boot会用SLF4J + Logback来记录日志,并用INF...原创 2019-01-11 18:07:21 · 548 阅读 · 0 评论 -
Spring Boot 2.x(九):遇到跨域不在慌
什么是跨域首先,我们需要了解一下一个URL是怎么组成的:// 协议 + 域名(子域名 + 主域名) + 端口号 + 资源地址http://www.baidu.com:8080/只要协议,子域名,主域名,端口号这四项组成部分中有一项不同,就可以认为是不同的域,不同的域之间互相访问资源,就被称之为跨域。随着前后端分离开发的越来越普及,会经常遇到跨域的问题,当我们在浏览器中看到这样的错误时...原创 2019-01-18 09:27:42 · 1377 阅读 · 0 评论 -
Spring Boot 2.x(十):构建优雅的RESTful接口
RESTful相信在座的各位对于RESTful都是略有耳闻,那么RESTful到底是什么呢?REST(Representational State Transfer)表述性状态转移是一组架构约束条件和原则。满足这些约束条件和原则的应用程序或设计就是RESTful。需要注意的是,REST是设计风格而不是标准。REST通常基于使用HTTP,URI,和XML(标准通用标记语言下的一个子集)以及HT...原创 2019-01-25 15:50:14 · 465 阅读 · 0 评论 -
Spring Boot 2.x(十一):打印接口日志
接口日志有啥用在我们日常的开发过程中,我们可以通过接口日志去查看这个接口的一些详细信息。比如客户端的IP,客户端的类型,响应的时间,请求的类型,请求的接口方法等等,我们可以对这些数据进行统计分析,提取出我们想要的信息。怎么拿到接口日志这里,我们使用的是Spring的两大杀器之AOP,通过在Controller层定义切点,然后对请求对象进行分析获取接口信息,同时开启一个ThreadLocal来...原创 2019-02-22 07:15:27 · 2198 阅读 · 2 评论 -
Spring Boot 2.x(十二):Swagger2的正确玩法
Swagger2简介简单的来说,Swagger2的诞生就是为了解决前后端开发人员进行交流的时候API文档难以维护的痛点,它可以和我们的Java程序完美的结合在一起,并且可以与我们的另一开发利器Spring Boot来配合使用。开始使用第一步:导入POM文件 <dependency> <groupId>io.springfox</gr...原创 2019-03-08 08:59:11 · 736 阅读 · 0 评论 -
Spring Boot 2.x(十三):你不知道的PageHelper
PageHelper说起PageHelper,使用过Mybatis的朋友可能不是很陌生,作为一款国人开发的分页插件,它基本上满足了我们的日常需求。但是,我想去官方文档看看这个东西配合Spring Boot进行使用的时候,发现了这个:所以花了一个晚上的时间,研究了一下合理的怎么玩这个。快速入门如果你想在一个Spring Boot项目中快速进行一次分页操作,只需要两步即可:导入Maven...原创 2019-03-15 09:11:56 · 390 阅读 · 0 评论 -
Spring Boot 2.x(十四):整合redis看这一篇就够了
Redis简介Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存亦可持久化的日志型、Key-Value 数据库,并提供多种语言的 API的非关系型数据库。Redis的应用会话缓存(高效的读取)消息队列 (发布,订阅)统计系统(原子性)Redis的数据类型String: 字符串Hash: 散列List: 列表Set: 集合Sor...原创 2019-03-22 14:40:13 · 349 阅读 · 0 评论 -
Spring Boot 2.x(十五):Dubbo + Zookeeper + 新版Dubbo Admin
Dubbo 简介Dubbo是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的RPC实现服务的输出和输入功能,可以和Spring框架无缝集成。它提供了三大核心能力:面向接口的远程方法调用智能容错和负载均衡服务自动注册和发现。可以看出图中存在着五种角色:Provider:服务提供者Consumer:服务消费者Registry:服务注册中心Monitor:服...原创 2019-03-29 09:27:58 · 341 阅读 · 0 评论 -
Spring Boot 2.x(十六):玩转Vue文件上传
为什么使用Vue-Simple-Uploader最近用到了Vue + Spring Boot来完成文件上传的操作,踩了一些坑,对比了一些Vue的组件,发现了一个很好用的组件——Vue-Simple-Uploader,先附上gayhub的,再说说为什么选用这个组件,对比vue-ant-design和element-ui的上传组件,它能做到更多的事情,比如:可暂停、继续上传上传队列管理,支持...原创 2019-05-10 20:56:54 · 631 阅读 · 1 评论 -
Spring Boot 2.x(十七):Elastic search快速入门
Elasticsearch是什么? Elasticsearch是一个基于Lucene的搜索服务器,Elasticsearch也是使用Java编写的,它的内部使用Lucen...原创 2019-05-20 07:30:00 · 281 阅读 · 0 评论 -
Spring Boot 2.x(十八):一文打尽邮件服务
前景介绍在日常的工作中,我们经常会用到邮件服务,比如发送验证码,找回密码确认,注册时邮件验证等,所以今天在这里进行邮件服务的一些操作。大致思路我们要做的其实就是把Java程序作为一个客户端,然后通过配置SMTP协议去连接我们所使用的发送邮箱(from)对应的SMTP服务器,然后通过SMTP协议,将邮件转投到目标邮箱(to)对应的SMTP服务器,最后将该邮件分发到目标邮箱Spring Bo...原创 2019-07-22 22:47:50 · 689 阅读 · 1 评论