springboot实战
spring boot 2.x实战:https://github.com/lazycece/springboot-actual-combat
lazycece
http://lazycece.com
展开
-
springboot中rocketmq的集成与使用
消息队列rocketmq是Apache旗下的开源项目(原是Alibaba开源的项目),当springboot盛行后,Apache团队开源了rocketmq-spring来帮助我们在springboot中快速集成rocketmq,只需引入rocketmq-spring-boot-starter即可。rocketmq-spring不仅实现了自动配置功能,个人认为最主要还是封装了spring-mes...原创 2019-06-16 22:57:16 · 6758 阅读 · 1 评论 -
springboot中执行定时任务
定时任务的是很常见的开发工作,在springboot中我们可以用注解很easy的实现。首先,需要加入@EnableScheduling注解开启定时任务功能,如下所示:@SpringBootApplication@EnableSchedulingpublic class SpringbootAcTaskApplication { public static void main(String...原创 2019-06-16 22:55:49 · 159 阅读 · 0 评论 -
springboot中任务异步执行
并行与并发场景下,异步执行是不可少的。这里来看一下在springboot中如何使用注解的方式执行异步任务?首先创建一个springboot项目,在主函数类上加入@EnableAsync注解开启异步功能,如下所示:@SpringBootApplication@EnableAsyncpublic class SpringbootAcTaskApplication { public sta...原创 2019-06-16 22:53:06 · 545 阅读 · 0 评论 -
springboot中redis的集成与使用
springboot中提供了对redis的lettuce和jedis两个客户端的自动配置功能的支持,而在使用spring-boot-starter-data-redis帮助我们快速集成redis时,其是默认支持lettuce的。下面来看一下使用spring-boot-starter-data-redis如何快速集成与使用redis。依赖引入在pom文件中加入starter和common-po...原创 2019-06-16 22:47:45 · 231 阅读 · 0 评论 -
springboot中使用RestTemplate调用rest服务
日常开发中,调用远程的rest服务是很常见的,比如微服务情况下的rest服务调用,又或者是调用第三方服务。微服务下的调用有服务注册与发现机制来调用,也可以使用RestTemplate方式来调用;而要是第三方服务,那么一般情况下是通过HTTP请求来调用。接下来就看说一下在springboot项目中,用RestTemplate来调用远程rest服务,包括第三方服务。首先我们的web项目中一般会有...原创 2019-05-22 23:17:28 · 2036 阅读 · 0 评论 -
springboot中实现发送邮件功能
发送邮件的功能有时在业务中还是需要使用到的,比如订单方面的业务,用户下单后需要给用户发送一个订单相关的邮件;又或者是某些系统在业务层来集成预警功能,出现问题时及时给开发和运维发送预警邮件。那么,接下来将讲一下在springboot项目中邮件发送功能的集成与其简单的使用。依赖引入首先,在POM文件中加入如下依赖: <dependency> <groupId>o...原创 2019-05-22 00:05:29 · 865 阅读 · 0 评论 -
springboot中mongodb多数据源集成
说完springboot中如何使用mongodb,接下来就来看一下mongod的多数据源集成。因为多数据源在开发中还是很常见的,比如在中小型项目中,我们可以将日志存储在mongo中(单独一个日志库)。这里只说明一下多数据源的集成方式,springboot中mongo的使用可详见springboot中mongodb集成与使用mogno多数据源配置首先我们定义两个数据源配置,如下所示:m...原创 2019-05-19 11:31:05 · 1504 阅读 · 0 评论 -
springboot中mongodb集成与使用
mognodb是由C++语言编写的,是一个基于分布式文件存储的开源nosql数据库系统,旨在为WEB应用提供可扩展的高性能数据存储解决方案。在高负载的情况下,添加更多的节点,可以保证服务器性能。由于其的高性能,以及文档型的存储结构,在开发的使用已经非常普及了。那么接下来就来看一下如何在springboot中集成使用mongodb。依赖引入springboot一个强大的特性就是自动配置功能,...原创 2019-05-19 10:46:41 · 899 阅读 · 0 评论 -
springboot中mybatis多数据源动态切换实现
在开发中,动态数据源配置还是用的比较多的,比如在多数据源使用方面,又或者是在多个DB之间切换方面。这里给出一个动态数据源的配置方案,两个DB均以mysql为例。多数据源配置引入mybatis和mysql在springboot中的引入这里就不在说了,不了解的可以参见springboot中mysql与mybatis的引入。数据源配置如下:datasource: master: t...原创 2019-05-04 15:16:52 · 4678 阅读 · 27 评论 -
springboot中mybatis多数据源实现
多种数据源的共同使用在日常开发中是很常见的,当然微服务中可能没那么常见,毕竟服务划分细致,数据源也就单独出去了。这里来看一下,在springboot中mybatis的多数据源实现(这里选择mysql为数据库)。多数据源配置mybatis和mysql在springboot中的引入这里就不在说了,不了解的可以参见springboot中mysql与mybatis的引入。多数据源,即为配置多个数据...原创 2019-05-04 14:16:25 · 255 阅读 · 0 评论 -
springboot中mysql与mybatis的引入
在软件开发中,数据库的引入是必不可少的,其中又属mysql使用最为广泛,而在springboot中,集成使用mysql的方式有很多(例如jpa),这里来展现一下通过mybatis框架在springboot中使用mysql。依赖引入首先在使用初始化工程的时候加入mybatis、mysql相关的依赖,如下所示: <dependencies> <depen...原创 2019-05-04 12:53:40 · 2625 阅读 · 1 评论 -
springboot中rabbitmq的集成与使用
RabbitMQ是一个基于AMQP协议的轻量级,可靠,可扩展且可移植的消息代理。Spring的一个springAMQP项目将核心Spring概念应用于基于AMQP的消息传递解决方案的开发。SpringBoot则是将springAMQP包装了一层,提供了pring-boot-starter-amqp“Starter”来为通过RabbitMQ使用AMQP提供了便利。rabbitmq的安装可参考《u...原创 2019-04-06 17:15:23 · 685 阅读 · 0 评论 -
springboot快速集成dubbo
当springboot和dubbo走到了一起,那么如何让它两更快更容易的集成在一起呢?dubbo-spring-boot-starter帮助我们做到了这点,它实现了dubbo在springboot项目中自动配置(@EnableAutoConfiguration)。dubbo-spring-boot-starter模块dubbo-spring-boot-starter主要由以下部分内容组成:...原创 2019-03-30 23:24:01 · 410 阅读 · 0 评论 -
springboot中elasticsearch的集成与使用
个人博客Elasticsearch是一个开源、分布式、RESTful搜索和分析引擎。 Spring Boot为Elasticsearch提供基本的自动配置。springboot支持多个http客户端:Java的“Low Level”(RestClient)and “High Level”(RestHighLevelClient)的rest客户端,以及Jest。同时,传输客户端也仍在Spri...原创 2019-02-21 21:57:55 · 263 阅读 · 0 评论 -
springboot中使用devtools实现热部署
个人博客在日常开发中,常常需要自己调试代码或者与终端同事进行联调,而在此过程中通常是需要修改代码的,那么为了改后的代码生效就需要重启服务,耗时且麻烦。在springboot的项目中,springboot-devtools帮助我们解决了这点,下面来说明一下在springboot项目中使用devtools实现热部署功能。这里不讲远程热部署情况,可自行参考官方文档。依赖引入要使用devto...原创 2019-02-24 22:49:52 · 452 阅读 · 0 评论 -
springboot使用swagger2生产api文档
日常开发中,如果对接的是终端(前端、iOS、Android、PC等),那就不仅仅是需要完成接口的编码,编写接口文档也同样很重要,因为一份完善的接口文档可以节省后端开发大量和写终端人的撕逼时间,减少很多不必要的麻烦。当然,如果自己一个人把前后端事情的干了,那就另当别论了。能够写一份好的接口文档很重要,能够高效率的写出且后续易于维护更重要,因为谁也不想把时间浪费在这种繁琐无味的事情上。swagger...原创 2019-01-31 18:42:43 · 458 阅读 · 0 评论 -
springboot中接口统一返回协议体定义
个人博客在日常接口开发中,通常涉及到与不同的终端进行交互,此时需要设计一个合适的接口协议体,以方便统一交互。接下来以在springboot中应用为例,来给出协议体定义案例。返回协议体定义这里给出的接口统一返回协议体涉及实体和MAP两种形式,下面直接贴上协议体的代码。实体responsepackage com.lazycece.sbac.response.response;impor...原创 2019-02-22 21:38:50 · 2786 阅读 · 2 评论 -
springboot中异常全局统一处理
个人博客日常后端业务开发中,在提供接口服务时会遇到各种异常处理,通常涉及到参数校验异常、自定义异常以及一些不可预知的异常等等。下面就来说一下在springboot中如何在接口层进行全局性的异常处理。全局异常处理全局异常处理借用springmvc中的@ControllerAdvice注解来实现,当然在springboot中我们就用@RestControllerAdvice(内部包含@Cont...原创 2019-02-23 15:13:06 · 727 阅读 · 0 评论 -
springboot中异常自定义实现
个人博客在项目中,通常需要自己定义一些异常,以便更好的来管理我们的业务。通常来说,需要有一个我们自己的异常抽象,一个通用的异常类,以及一些特定条件下的异常类。如下所示:自定义异常抽象package com.lazycece.sbac.exception.exception;/** * @author lazycece * @date 2019/02/23 */public a...原创 2019-02-23 15:16:02 · 242 阅读 · 0 评论 -
springboot中参数校验(validation)注解自定义
在进行参数验证的时候,往往存在现有的约束注解不能满足的情况,此时就需要我们自己定义validation注解了,下面来介绍一下如何自己定义一个验证注解。有关参数校验的使用可详见《springboot中参数校验(validation)使用》如何自定义一个validation注解?自己定义validation注解需要使用@Constraint。@Constraint注解中是这样进行描述的: ...原创 2019-02-16 19:14:32 · 8316 阅读 · 0 评论 -
springboot中参数校验(validation)使用
在开发中,会经常需要进行参数的校验,比如接口层、业务层、持久层等,其中接口的参数校验就是最为常见的。这里就来看一下springboot中参数校验(validation)的使用。关于如何自定义validation注解详见《springboot中参数校验(validation)注解自定义》validation引入在springboot官方文档上对validation的使用介绍中,说明了只要J...原创 2019-02-16 19:13:16 · 2941 阅读 · 2 评论 -
idea开启run dashboard
在idea上开发springboot项目的时候,有时找不到 run dashboard,按照下面的方式即可解决:在.idea->workspace.xml文件中找run dashboard到组件配置:<component name="RunDashboard"> <option name="ruleStates"> <list&g...原创 2018-09-09 16:12:31 · 659 阅读 · 0 评论