随笔- 134  评论- 105  文章- 18 
  2019年6月5日
摘要:新书上线 大家好,笔者的新书《Spring Boot+Spring Cloud+Vue+Element项目实战:手把手教你开发权限管理系统》已上线,此书内容充实、材质优良,乃家中必备垫桌脚垫菜盘之良器,欢迎大家无情购买使用,欢迎大家共同学习交流,欢迎大家提出改进意见。 内容简介: 本书从项目实践出发 阅读全文
posted @ 2019-06-05 10:30 朝雨忆轻尘 阅读 (3203) 评论 (3) 编辑
  2019年7月2日
摘要:综合概述 消息队列 消息队列就是一个消息的链表,可以把消息看作一个记录,具有特定的格式以及特定的优先级。对消息队列有写权限的进程可以向消息队列中按照一定的规则添加新消息,对消息队列有读权限的进程则可以从消息队列中读走消息,而消息队列就是在消息的传输过程中保存消息的容器,你可以简单的把消息队列理解为类 阅读全文
posted @ 2019-07-02 18:49 朝雨忆轻尘 阅读 (597) 评论 (0) 编辑
  2019年7月1日
摘要:Spring Boot 系列教程: Spring Boot:快速入门教程 Spring Boot:整合Swagger文档 Spring Boot:整合MyBatis框架 Spring Boot:实现MyBatis分页 Spring Boot:集成Druid数据源 Spring Boot:实现MyBa 阅读全文
posted @ 2019-07-01 19:47 朝雨忆轻尘 阅读 (455) 评论 (0) 编辑
摘要:综合概述 Redis是一个开源免费的高性能key-value数据库,读取速度达110000次/s,写入速度达81000次/s。Redis支持丰富的数据类型,如Lists, Hashes, Sets 及 Ordered Sets 数据类型。Redis的所有操作都是原子性的,要么成功执行要么失败完全不执 阅读全文
posted @ 2019-07-01 18:52 朝雨忆轻尘 阅读 (641) 评论 (0) 编辑
摘要:综合概述 Memcached是一个自由开源的,高性能,分布式内存对象缓存系统。Memcached基于内存的key-value存储,用来存储小块的任意数据,这些数据可以是数据库调用、API调用或者是页面渲染的结果。通过Memcached缓存数据库查询结果,可以有效地减少数据库访问次数,进而提高动态We 阅读全文
posted @ 2019-07-01 16:56 朝雨忆轻尘 阅读 (125) 评论 (0) 编辑
  2019年6月29日
摘要:综合概述 Spring Security 是 Spring 社区的一个顶级项目,也是 Spring Boot 官方推荐使用的安全框架。除了常规的认证(Authentication)和授权(Authorization)之外,Spring Security还提供了诸如ACLs,LDAP,JAAS,CAS 阅读全文
posted @ 2019-06-29 12:17 朝雨忆轻尘 阅读 (887) 评论 (1) 编辑
  2019年6月20日
摘要:综合概述 Shiro是Apache旗下的一个开源项目,它是一个非常易用的安全框架,提供了包括认证、授权、加密、会话管理等功能,与Spring Security一样属基于权限的安全框架,但是与Spring Security 相比,Shiro使用了比较简单易懂易于使用的授权方式。Shiro属于轻量级框架 阅读全文
posted @ 2019-06-20 20:26 朝雨忆轻尘 阅读 (973) 评论 (0) 编辑
  2019年6月18日
摘要:综合概述 JPA是Java Persistence API的简称,是一套Sun官方提出的Java持久化规范。其设计目标主要是为了简化现有的持久化开发工作和整合ORM技术,它为Java开发人员提供了一种ORM工具来管理Java应用中的关系数据。 简而言之,JPA提供了使用面向对象的方式操作数据库的功能 阅读全文
posted @ 2019-06-18 19:39 朝雨忆轻尘 阅读 (505) 评论 (0) 编辑
摘要:综合概述 Spring对数据库的操作在jdbc上面做了更深层次的封装,而JdbcTemplate便是Spring提供的一个操作数据库的便捷工具。我们可以借助JdbcTemplate来执行所有数据库操作,例如插入,更新,删除和从数据库中检索数据,并且有效避免直接使用jdbc带来的繁琐编码。 JdbcT 阅读全文
posted @ 2019-06-18 16:51 朝雨忆轻尘 阅读 (300) 评论 (0) 编辑
  2019年6月17日
摘要:我的博客即将同步至腾讯云+社区,邀请大家一同入驻: https://cloud.tencent.com/developer/support-plan?invite_code=1362l01n2d4v5 阅读全文
posted @ 2019-06-17 19:43 朝雨忆轻尘 阅读 (112) 评论 (0) 编辑
摘要:综合概述 在有些应用场景中,我们会有需要动态创建和操作表的需求。比如因为单表数据存储量太大而采取分表存储的情况,又或者是按日期生成日志表存储系统日志等等。这个时候就需要我们动态的生成和操作数据库表了。而我们都知道,以往我们使用MyBatis是需要提前生成包括Model,Mapper和XML映射文件的 阅读全文
posted @ 2019-06-17 19:22 朝雨忆轻尘 阅读 (677) 评论 (2) 编辑
摘要:综合概述 在很多具体应用场景中,我们需要用到动态数据源的情况,比如多租户的场景,系统登录时需要根据用户信息切换到用户对应的数据库。又比如业务A要访问A数据库,业务B要访问B数据库等,都可以使用动态数据源方案进行解决。接下来,我们就来讲解如何实现动态数据源,以及在过程中剖析动态数据源背后的实现原理。 阅读全文
posted @ 2019-06-17 16:23 朝雨忆轻尘 阅读 (508) 评论 (0) 编辑
  2019年6月15日
摘要:综合概述 数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个;释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏。通过数据库连接池能明显提高对数据库操作的性能。在Java应用程序开发中,常用的连接池有D 阅读全文
posted @ 2019-06-15 18:46 朝雨忆轻尘 阅读 (337) 评论 (0) 编辑
摘要:综合概述 想必大家都有过这样的体验,在使用Mybatis时,最头痛的就是写分页了,需要先写一个查询count的select语句,然后再写一个真正分页查询的语句,当查询条件多了之后,会发现真的不想花双倍的时间写 count 和 select,幸好我们有 pagehelper 分页插件,pagehelp 阅读全文
posted @ 2019-06-15 16:19 朝雨忆轻尘 阅读 (785) 评论 (1) 编辑
  2019年6月14日
摘要:综合概述 MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java 的 POJO(Plain Old Java 阅读全文
posted @ 2019-06-14 19:04 朝雨忆轻尘 阅读 (400) 评论 (0) 编辑
摘要:综合概述 spring-boot作为当前最为流行的Java web开发脚手架,越来越多的开发者选择用其来构建企业级的RESTFul API接口。这些接口不但会服务于传统的web端(b/s),也会服务于移动端。在实际开发过程中,这些接口还要提供给开发测试进行相关的白盒测试,那么势必存在如何在多人协作中 阅读全文
posted @ 2019-06-14 11:54 朝雨忆轻尘 阅读 (468) 评论 (0) 编辑
  2019年6月13日
摘要:什么是Spring Boot? Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。简而言之,Spring Boot通过提供默认配置的方式整合了所有的框架, 阅读全文
posted @ 2019-06-13 20:12 朝雨忆轻尘 阅读 (488) 评论 (0) 编辑
  2019年6月5日
摘要:新书上线 大家好,笔者的新书《Spring Boot+Spring Cloud+Vue+Element项目实战:手把手教你开发权限管理系统》已上线,此书内容充实、材质优良,乃家中必备垫桌脚垫菜盘之良器,欢迎大家无情购买使用,欢迎大家共同学习交流,欢迎大家提出改进意见。 内容简介: 本书从项目实践出发 阅读全文
posted @ 2019-06-05 10:30 朝雨忆轻尘 阅读 (3203) 评论 (3) 编辑
  2019年5月8日
摘要:基于Eclipse开发 1. 安装JDK 首先进入JDK下载页面,选择需要的版本下载安装。 JDK 下载地址:https://www.oracle.com/technetwork/java/javase/downloads/index.html 比如我这里选择下载最新的版本 12.0.1,选择系统版 阅读全文
posted @ 2019-05-08 17:13 朝雨忆轻尘 阅读 (245) 评论 (0) 编辑
  2018年12月14日
摘要:开源项目链接 Kitty 开源权限管理系统 项目地址:https://gitee.com/liuge1988/kitty 演示地址:http://139.196.87.48:9002/kitty 用户名:admin 密码:admin 注册沙箱账号 到蚂蚁金服注册开发者账号,注册地址:https:// 阅读全文
posted @ 2018-12-14 15:59 朝雨忆轻尘 阅读 (8551) 评论 (4) 编辑
  2018年12月7日
摘要:在线演示 演示地址:http://139.196.87.48:9002/kitty 用户名:admin 密码:admin Spring Security Oauth2 OAuth是一个关于授权的开放网络标准,在全世界得到的广泛的应用,目前是2.0的版本。OAuth2在“客户端”与“服务提供商”之间, 阅读全文
posted @ 2018-12-07 21:00 朝雨忆轻尘 阅读 (12833) 评论 (4) 编辑
  2018年11月28日
摘要:在线演示 演示地址:http://139.196.87.48:9002/kitty 用户名:admin 密码:admin Spring Security Spring Security 是 Spring 社区的一个顶级项目,也是 Spring Boot 官方推荐使用的安全框架。除了常规的认证(Aut 阅读全文
posted @ 2018-11-28 18:10 朝雨忆轻尘 阅读 (2810) 评论 (1) 编辑
  2018年11月27日
摘要:在线演示 演示地址:http://139.196.87.48:9002/kitty 用户名:admin 密码:admin 技术背景 到目前为止,我们使用的权限认证框架是 Shiro,虽然 Shiro 也足够好用并且简单,但对于 Spring 官方主推的安全框架 Spring Security,用户群 阅读全文
posted @ 2018-11-27 19:19 朝雨忆轻尘 阅读 (3210) 评论 (11) 编辑
  2018年11月19日
摘要:在线演示 演示地址:http://139.196.87.48:9002/kitty 用户名:admin 密码:admin 技术背景 当前,我们基于导航菜单的显示和操作按钮的禁用状态,实现了页面可见性和操作可用性的权限验证,或者叫访问控制。但这仅限于页面的显示和操作,我们的后台接口还是没有进行权限的验 阅读全文
posted @ 2018-11-19 18:00 朝雨忆轻尘 阅读 (1863) 评论 (0) 编辑
  2018年11月8日
摘要:在线演示 演示地址:http://139.196.87.48:9002/kitty 用户名:admin 密码:admin 技术背景 如今微服务架构盛行,在分布式系统中,项目日益庞大,子项目日益增多,每个项目都散落着各种配置文件,且随着服务的增加而不断增多。此时,往往某一个基础服务信息变更,都会导致一 阅读全文
posted @ 2018-11-08 16:17 朝雨忆轻尘 阅读 (1821) 评论 (0) 编辑
  2018年11月7日
摘要:在线演示 演示地址:http://139.196.87.48:9002/kitty 用户名:admin 密码:admin 技术背景 在微服务架构中,随着业务发展,系统拆分导致系统调用链路愈发复杂,一个看似简单的前端请求可能最终需要调用很多次后端服务才能完成,那么当整个请求出现问题时,我们很难得知到底 阅读全文
posted @ 2018-11-07 19:25 朝雨忆轻尘 阅读 (2338) 评论 (1) 编辑
摘要:在线演示 演示地址:http://139.196.87.48:9002/kitty 用户名:admin 密码:admin 技术背景 前面我们通过Ribbon或Feign实现了微服务之间的调用和负载均衡,那我们的各种微服务又要如何提供给外部应用调用呢。 当然,因为是REST API接口,外部客户端直接 阅读全文
posted @ 2018-11-07 12:59 朝雨忆轻尘 阅读 (4811) 评论 (0) 编辑
  2018年11月6日
摘要:在线演示 演示地址:http://139.196.87.48:9002/kitty 用户名:admin 密码:admin 雪崩效应 在微服务架构中,由于服务众多,通常会涉及多个服务层级的调用,而一旦基础服务发生故障,很可能会导致级联故障,进而造成整个系统不可用,这种现象被称为服务雪崩效应。服务雪崩效 阅读全文
posted @ 2018-11-06 19:01 朝雨忆轻尘 阅读 (1033) 评论 (0) 编辑
  2018年11月5日
摘要:技术背景 上一篇教程中,我们利用Consul注册中心,实现了服务的注册和发现功能,这一篇我们来聊聊服务的调用。单体应用中,代码可以直接依赖,在代码中直接调用即可,但在微服务架构是分布式架构,服务都运行在各自的进程之中,甚至部署在不同的主机和不同的地区。这个时候就需要相关的远程调用技术了。 Sprin 阅读全文
posted @ 2018-11-05 18:28 朝雨忆轻尘 阅读 (1271) 评论 (0) 编辑
  2018年11月1日
摘要:动态数据源 在很多具体应用场景的时候,我们需要用到动态数据源的情况,比如多租户的场景,系统登录时需要根据用户信息切换到用户对应的数据库。又比如业务A要访问A数据库,业务B要访问B数据库等,都可以使用动态数据源方案进行解决。接下来,我们就来讲解如何实现动态数据源,以及在过程中剖析动态数据源背后的实现原 阅读全文
posted @ 2018-11-01 18:13 朝雨忆轻尘 阅读 (4238) 评论 (0) 编辑
  2018年10月30日
摘要:什么是 Consul Consul 是 HashiCorp 公司推出的开源工具,用于实现分布式系统的服务发现与配置。与其它分布式服务注册与发现的方案,Consul 的方案更“一站式”,内置了服务注册与发现框架、分布一致性协议实现、健康检查、Key/Value 存储、多数据中心方案,不再需要依赖其它工 阅读全文
posted @ 2018-10-30 18:23 朝雨忆轻尘 阅读 (1614) 评论 (0) 编辑
  2018年10月29日
摘要:登录验证码 登录验证是一般系统都会有的功能,验证的方式也多种多样,比如输入式验证码,拖动式验证条,拖动式验证拼图等等。 我们这里先实现常规的输入验证码的方式,右边显示验证码图片,点击可刷新,左边输入验证码。如下图为实现的效果。 实现案例 验证码的实现需要前后端协同,脱离彼此则不可用,故将前后端的实现 阅读全文
posted @ 2018-10-29 18:45 朝雨忆轻尘 阅读 (2099) 评论 (2) 编辑
  2018年10月28日
摘要:技术背景 我们在上一篇讲到,Spring Boot程序只在启动的时候加载配置文件信息,这样在GIT仓库配置修改之后,虽然配置中心服务器能够读取最新的提交信息,但是配置中心客户端却不会重新读取,以至于不能及时的读取更新后的配置信息。这个时候就需要一种通知刷新机制来支持了。 Refresh机制 refr 阅读全文
posted @ 2018-10-28 13:25 朝雨忆轻尘 阅读 (1122) 评论 (1) 编辑
  2018年10月27日
摘要:技术背景 如今微服务架构盛行,在分布式系统中,项目日益庞大,子项目日益增多,每个项目都散落着各种配置文件,且随着服务的增加而不断增多。此时,往往某一个基础服务信息变更,都会导致一系列服务的更新和重启,运维也是苦不堪言,而且还很容易出错。于是,配置中心便由此应运而生了。 目前市面上开源的配置中心有很多 阅读全文
posted @ 2018-10-27 13:55 朝雨忆轻尘 阅读 (1579) 评论 (0) 编辑
  2018年10月24日
摘要:技术背景 在微服务架构中,随着业务发展,系统拆分导致系统调用链路愈发复杂,一个看似简单的前端请求可能最终需要调用很多次后端服务才能完成,那么当整个请求出现问题时,我们很难得知到底是哪个服务出了问题导致的,这时就需要解决一个问题,如何快速定位服务故障点,于是,分布式系统调用链追踪技术就此诞生了。 Zi 阅读全文
posted @ 2018-10-24 23:11 朝雨忆轻尘 阅读 (1638) 评论 (0) 编辑
  2018年10月23日
摘要:技术背景 前面我们通过Ribbon或Feign实现了微服务之间的调用和负载均衡,那我们的各种微服务又要如何提供给外部应用调用呢。 当然,因为是REST API接口,外部客户端直接调用各个微服务是没有问题的,但出于种种原因,这并不是一个好的选择。 让客户端直接与各个微服务通讯,会有以下几个问题: 客户 阅读全文
posted @ 2018-10-23 18:13 朝雨忆轻尘 阅读 (2309) 评论 (0) 编辑
  2018年10月21日
摘要:前言 众所周知,IT行业人员在求职时,如果拥有自己的技术博客和个人网站多少是可以加些分的,因为这也是IT人的技术证明之一。内容丰富的技术博客就不必多少了,往往技术博客大神市场上多是供不应求的,而且技术博客出彩主要是在内容经营上,至于博客本身直接到各大技术平台注册一个即可,当然有兴趣的朋友想要自建个人 阅读全文
posted @ 2018-10-21 18:02 朝雨忆轻尘 阅读 (2464) 评论 (0) 编辑
  2018年10月18日
摘要:Spring Cloud Turbine 上一章我们集成了Hystrix Dashboard,使用Hystrix Dashboard可以看到单个应用内的服务信息,显然这是不够的,我们还需要一个工具能让我们汇总系统内多个服务的数据并显示到Hystrix Dashboard上,这个工具就是Turbine 阅读全文
posted @ 2018-10-18 18:50 朝雨忆轻尘 阅读 (714) 评论 (0) 编辑
摘要:Hystrix Dashboard Hystrix-dashboard是一款针对Hystrix进行实时监控的工具,通过Hystrix Dashboard我们可以在直观地看到各Hystrix Command的请求响应时间, 请求成功率等数据。 添加依赖 我们新建一个工程 spring-cloud-co 阅读全文
posted @ 2018-10-18 18:39 朝雨忆轻尘 阅读 (1220) 评论 (0) 编辑
摘要:雪崩效应 在微服务架构中,由于服务众多,通常会涉及多个服务层级的调用,而一旦基础服务发生故障,很可能会导致级联故障,进而造成整个系统不可用,这种现象被称为服务雪崩效应。服务雪崩效应是一种因“服务提供者”的不可用导致“服务消费者”的不可用,并将这种不可用逐渐放大的过程。 比如在一个系统中, A作为服务 阅读全文
posted @ 2018-10-18 18:36 朝雨忆轻尘 阅读 (806) 评论 (0) 编辑
  2018年10月17日
摘要:Spring Cloud Feign Spring Cloud Feign是一套基于Netflix Feign实现的声明式服务调用客户端。它使得编写Web服务客户端变得更加简单。我们只需要通过创建接口并用注解来配置它既可完成对Web服务接口的绑定。它具备可插拔的注解支持,包括Feign注解、JAX- 阅读全文
posted @ 2018-10-17 19:37 朝雨忆轻尘 阅读 (911) 评论 (0) 编辑