04 2018 档案
摘要:这篇文章的开始先给大家看一个图片 用过或者看过springboot的人都知道,这就是springboot启动的banner,这一篇介绍如何自定义springboot的启动bannner。 先介绍一个可以制作自定义banner的网站,传送门: "http://patorjk.com/software/
阅读全文
摘要:前几天写了一个SpringBoot对拦截器的使用,在实际项目中,对一些情况需要做一些安全验证,比如在没有登录的情况下访问特定的页面应该解释的拦截处理。这一篇介绍使用SpringSecurity来做简单的安全控制,由于SpringSecurity比较复杂,如果有不对的地方可以大家一起学习。 新建项目,
阅读全文
摘要:在springboot项目,报错有着默认的提示,这篇文章介绍一下如何统一处理异常。 新建项目,pom文件如下: 创建一个IndexController,里面写两个方法,index方法正常跳转,test方法是故意写的一个nullpoint的错误的方法。 代码如下: 启动项目访问 "http://loc
阅读全文
摘要:在实际开发中,总存在着这样的场景,比如拦截请求的ip地址,或者在所有的请求都返回相同的数据,如果每一个方法都写出相同数据固然可以实现,但是随着项目的变大,重复的代码会越来越多,所以在这种情况我们可以用拦截器来实现。 最近一直在研究thymeleaf,越发的感觉这个很好用,所以这篇文章也选择结合这个来
阅读全文
摘要:Sleuth:日志收集工具包,封装了Dapper和log based追踪以及Zipkin和HTrace操作,为SpringCloud应用实现了一种分布式追踪解决方案。 当服务与服务之间调用复杂时,SpringCloud Sleuth配合Zipkin提供的界面,可以直观的分析追踪数据,这篇文章介绍Sp
阅读全文
摘要:RabbitMQ是开源消息队列系统,用erlang语言开发。如果不了解可以查看官网 "http://www.rabbitmq.com/" 这篇文章介绍一个springboot简单整合RabbitMQ。 1.安装rabbitmq,自行百度即可,方法很多。 2.启动rabbitmq,成功如下图: 可以访
阅读全文
摘要:SpringCloudBus:事件、消息总线,用于在集群(例如,配置变化事件)中传播状态变化,可与Spring Cloud Config联合实现热部署。 在上一篇写出了springcloud对微服务的集中配置,那么就出现了一个问题,如果修改配置了怎么实现不需重启服务来实现配置的更新,下面有集中解决方
阅读全文
摘要:分布式配置:配置管理工具包,让你可以把配置放到远程服务器,集中化管理集群配置,目前支持本地存储、Git以及Subversion。 在生产环境,由于配置繁多,造成运维人员或开发人员配置上的不便,springcloud提供了分布式配置中心组建,支持从远程配置仓库(git)中读取配置。 读取配置流程如下图
阅读全文
摘要:Zuul:Zuul 是在云平台上提供动态路由,监控,弹性,安全等边缘服务的框架。Zuul 相当于是设备和 Netflix 流应用的 Web 网站后端所有请求的前门。 在微服务盛行的时代,客户端与系统之间的交互基本上如下图: 客户端想要请求到服务,首先请求到zuul网关,然后zuul网管将请求分发到对
阅读全文
摘要:Hystrix:熔断器,容错管理工具,旨在通过熔断机制控制服务和第三方库的节点,从而对延迟和故障提供更强大的容错能力。 说到熔断器,先要引入另外一个词,雪崩效应。 雪崩效应,百度百科的解释是这样的: 登山时,决不能顺着山边扔石子儿。一是有击中别人的危险,一枚从数千英尺落下的小石头,破坏力相当惊人;二
阅读全文
摘要:Feign:Feign是一种声明式、模板化的HTTP客户端。 用我的理解来说,Feign的功能类似dubbo暴露服务,但是与dubbo稍有不同的是Feign是HTTP REST接口的形式暴露的。 这一篇还是要利用到上一篇中的service(8762),service(8763)两个服务,先启动这两个
阅读全文
摘要:进入usr/local文件夹 先创建一个redis文件夹 下载redis 解压缩 进入redis文件夹 编译 进入到src文件夹 执行安装 到这里就安装完成了 然后输入命令,启动redis 在打开一个终端
阅读全文
摘要:Ribbon:提供云端负载均衡,有多种负载均衡策略可供选择,可配合服务发现和断路器使用。 上一篇简单讲解了eureka的使用,这一篇文章基于上一篇的基础上,讲一下springcloud的另一个重要的组件ribbon。 这篇文章需要新建三个工程,service(8762),service(8763),
阅读全文
摘要:maven之前本地就有,直接上传到了服务器上,我使用的是maven 3.5.3 从本地上传maven 到服务器上 解压maven 打开配置文件 然后配置环境变量,在文件最后加入 使配置生效 验证结果
阅读全文
摘要:首先先安装一个jdk,如果没有安装可以查看我的文章 "linux安装jdk" 然后使用下面命令 启动jenkins 然后访问http://${ip}/8080,可以看到jenkins那个小老头,根据自行配置安装插件,其中密码在这里
阅读全文
摘要:在springboot中,也提供了很全面的监控系统。这篇文章介绍一下springboot—admin监控springboot项目。 原来大致是这样的,springboot——admin——server负责当监控中心,功能类似springcloud eureka。其他springboot作为clien
阅读全文
摘要:在linux上安装tomcat可以直接在linux服务器上通过wget方式直接下载tomcat,也可以把本地的tomcat上传到服务器。由于本人之前下载过tomcat,就直接从电脑上上传到服务器。 本人使用的是mac 通过命令行 简单说一下 scp 上传 /Users/dalaoyang/downl
阅读全文
摘要:偷懒了几天,好几天没写springboot了。真的不是没什么可写,是因为坚持做一件事真的很难。 今天抽空弄了一个springboot整合redis的小例子。 首先做好准备工作,在本地安装一个redis,具体步骤可以自行百度,然后启动redis。出现下图页面就启动成功了。 然后新建项目,加入redis
阅读全文
摘要:Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。 本文介绍一下本人在阿里云服务器centos6.8安装docker的方法: 使用root登录服
阅读全文
摘要:Actuator可能大家非常熟悉,它是springboot提供对应用自身监控,以及对应用系统配置查看等功能。 springboot使用actuator的方式非常简单,只需要在项目中加入依赖spring boot starter actuator,完整pom文件如下: 其余没有任何修改,没有新建任何类
阅读全文
摘要:druid是阿里巴巴开源的数据库连接池,提供了优秀的对数据库操作的监控功能,本文要讲解一下springboot项目怎么集成druid。 本文在基于jpa的项目下开发,首先在pom文件中额外加入druid依赖,pom文件如下: application.properties上半段和整合jpa一点没变,下
阅读全文
摘要:Springboot日志默认使用的是logback,本文将介绍将springboot项目日志修改为log4j。 首先要将默认的日志依赖排除,然后引用log4j,pom文件代码如下: 引用log4j之后,在resources加入log4j配置即可,下面是本人之前项目的log4j.properties内
阅读全文
摘要:这篇文章介绍springboot的邮件发送。 由于很简单就没有分出server和imp之类,只是在controller简单写个方法进行测试。 首先pom文件加入spring boot starter mail,代码如下: 接下来是application.properties,里面包含发送邮箱的地址,
阅读全文
摘要:很多业务场景都需要使用到多数据库,本文介绍springboot对多数据源的使用。 这次先说一下application.properties文件,分别连接了2个数据库test和test1。完整代码如下: 然后说一下处理多数据源的DataSourceConfig,其中@ConfigurationProp
阅读全文
摘要:项目中经常会有上传和下载的需求,这篇文章简述一下springboot项目中实现简单的上传和下载。 新建springboot项目,前台页面使用的thymeleaf模板,其余的没有特别的配置,pom代码如下: 前台页面index.html,其中包含单个上传,下载,批量上传。 IndexControlle
阅读全文
摘要:很多时候,我们需要创建一个接口项目用来数据调转,其中不包含任何业务逻辑,比如我们公司。这时我们就需要实现一个具有Restful API的接口项目。 本文介绍springboot使用swagger2实现Restful API。 本项目使用mysql+jpa+swagger2。 首先pom中加入swag
阅读全文
摘要:有些情况接口需要返回的是xml数据,在springboot中并不需要每次都转换一下数据格式,只需做一些微调整即可。 新建一个springboot项目,加入依赖jackson dataformat xml,pom文件代码如下: 启动类默认即可,没有做任何调整。 新建一个user类,代码如下: 最后是c
阅读全文
摘要:项目中很多时候会使用到定时任务,这篇文章介绍一下springboot整合定时任务。 springboot整合定时任务其实就两点, 1.创建一个能被定时任务类,方法上加入@Scheduled注解 2.在启动类application上加入@EnableScheduling注解 代码如下,pom文件我只加
阅读全文
摘要:上一篇介绍了springboot简单整合mybatis的教程。这一篇是介绍springboot简单整合jpa的教程。 由于jpa的功能强大,后续会继续写关于jpa的介绍已经使用,本文只是简单介绍一下它与springboot的整合。 jpa不需要像mybatis一样创建表,首先给大家看一下applic
阅读全文
摘要:介绍一下SpringBoot整合mybatis,数据库选用的是mysql。 首先创建数据库 建表以及插入初始数据(sql是从navicat中导出的) SET NAMES utf8mb4; SET FOREIGN_KEY_CHECKS = 0; Table structure for user DRO
阅读全文
摘要:本文介绍的是使用yum方式安装jdk,想要用其他方式绕行。 1.查看yum中管理的可用的JDK软件包列表: 结果如下图所示: 2.选择合适版本,安装jdk,本人选择的是java 1.8.0 openjdk devel.x86_64 3配置环境变量,打开etc文件下profile 在文件内添加 保存关
阅读全文