微服务构建: Spring Boot

在展开 Spring Cloud 的微服务架构部署之前, 我们先了解一下用于构建微服务的基础框架-Spring Boot。 由于 Spring Cloud 的构建基于 Spring Boot 实现, 在后续的示例中我 们将大量使用 Spring Boot 来构建微服务架构中的基础设施以及一些试验中使 ... »

spring boot 2.0 源码分析(五)

在上一篇文章中我们详细分析了spring boot是如何准备上下文环境的,今天我们来看一下run函数剩余的内容。还是先把run函数贴出来: 我们接着往下看,来看一下this.refreshContext(context);函数,这个函数用于刷新上下文,跟踪到源码看一下: 在refreshContex ... »

spring security实现动态配置url权限的两种方法

标准的RABC, 权限需要支持动态配置,spring security默认是在代码里约定好权限,真实的业务场景通常需要可以支持动态配置角色访问权限,即在运行时去配置url对应的访问角色。本文介绍了两种基于spring security实现动态权限的方法,一是自定义accessDecisionMana... ... »

spring boot项目fat jar瘦身

一、项目背景 spring cloud构建spring boot项目,精细化各项目的层次,达到降低耦合度的目的,项目间基于restful通信。 在对项目打包过程中,使用spring-boot-maven-plugin插件打包,生成的是fat jar,解压缩该jar包,会发现项目依赖的jar包存放于B ... »

spring boot 2.0 源码分析(四)

在上一章的源码分析里,我们知道了spring boot 2.0中的环境是如何区分普通环境和web环境的,以及如何准备运行时环境和应用上下文的,今天我们继续分析一下run函数接下来又做了那些事情。先把run函数的代码贴出来: 紧接着我们就看到了这行代码:exceptionReporters1 = th ... »

Spring Security 架构与源码分析

Spring Security 主要实现了Authentication(认证,解决who are you? ) 和 Access Control(访问控制,也就是what are you allowed to do?,也称为Authorization)本文介绍Spring Security的架构并进... ... »

spring boot 2.0 源码分析(三)

通过上一章的源码分析,我们知道了spring boot里面的listeners到底是什么(META INF/spring.factories定义的资源的实例),以及它是创建和启动的,今天我们继续深入分析一下SpringApplication实例变量中的run函数中的其他内容。还是先把run函数的代码 ... »

spring boot 2.0 源码分析(二)

在上一章学习了spring boot 2.0启动的大概流程以后,今天我们来深挖一下SpringApplication实例变量的run函数。 先把这段run函数的代码贴出来: 我们先来分析其中的第一个关键代码:SpringApplicationRunListeners listeners = getR ... »

spring boot 2.0 源码分析(一)

在学习spring boot 2.0源码之前,我们先利用spring initializr快速地创建一个基本的简单的示例: 1.先从创建示例中的main函数开始读起: 2.在这里我们可以看到,spring boot是通过SpringApplication.run这个函数来进行启动的,其中args可以 ... »

Spring Boot 发送邮件

需求 最近因为业务的变更,需要对老用户进行发送邮件处理。目前市面上也有很多代发邮件的接口,可以接入。由于量不是特别大,放弃了这个途径。改用我们自己通过 smtp 发送邮件来处理。 技术选择 Java 有原生的javax.mail 可以使用,但是比较复杂。基于我们现在项目中使用了Spring Boot ... »

Java结合SpringBoot拦截器实现简单的登录认证模块

Java结合SpringBoot拦截器实现简单的登录认证模块 ====== 之前在做项目时需要实现一个简单的登录认证的功能,就寻思着使用Spring Boot的拦截器来实现,在此记录一下我的整个实现过程,源码见文章底部。 1. 环境搭建 IntelliJ IDEA + Java8 + Spring ... »

Spring Boot实战:模板引擎

模板引擎在实际的开发中用的越来越少了,但是也有一些优点,比如更有利于SEO,性能会更好一点,有时候使用模板引擎会更方便,比如说邮件模板。这篇文章主要讨论Spring boot与模板引擎Thymeleaf、Freemaker以及JSP的集成。 ... »

springboot整合mybatis

这里介绍注解xml整合SpringBoot和Mybatis的模式。 前期准备 开发环境 开发工具:IDEA JDK:1.8 技术:SpringBoot、Maven、Mybatis 创建项目 项目结构 Maven依赖 这里的数据库连接池使用阿里的。 SpringBoot配置文件application. ... »

Spring Cloud入门教程-Ribbon实现客户端负载均衡

简介 我们继续以之前博客的代码为基础,增加Ribbon组件来提供客户端负载均衡。负载均衡是实现高并发、高性能、可伸缩服务的重要组成部分,它可以把请求分散到一个集群中不同的服务器中,以减轻每个服务器的负担。客户端负载均衡是运行在客户端程序中的,如我们的web项目,然后通过获取集群的IP地址列表,随 ... »