想对spring框架进行深入的学习一下,看看源码,提升和沉淀下自己,工欲善其事必先利其器,还是先搭建好开发环境吧. 环境搭建 sping源代码之前是svn管理,如今已经迁移到了github中了.新版本号基于gradle构建项目.所以构建sping源代码环境必须先安装github以及Gradle. 当然了假设不想安装githubclient能够直接去git下载项目:spring中git地址https://github.com/spring-projects/spring-framework 安装g…
本篇文章为系列文章,未读前几集的同学请猛戳这里: Spring Cloud 系列之 Config 配置中心(一) Spring Cloud 系列之 Config 配置中心(二) 本篇文章讲解 Config 如何实现配置中心加解密,配置中心用户安全认证. 配置中心加解密 考虑这样一个问题:所有的配置文件都存储在 Git 远程仓库,配置文件中的一些信息又是比较敏感的.所以,我们需要对这些敏感信息进行加密处理.主要的加密方法分为两种:一种是共享密钥加密(对称密钥加密),一种是公开密钥加密(非对称密钥加…
Spring有两大核心,IOC和AOP.IOC在Java Web项目中无时无刻不在使用,然而AOP用的比较少,尤其是对一些初级程序员,在架构师搭好的框架上开发应用代码,AOP几乎是透明的.然而,项目中的事务管理.安全管理.日志管理和调试管理等一些与业务逻辑无关的内容,要在业务开发人员无需关心的情况下实现,AOP就有了用武之地.      很久没有更新过博客了,最近项目不太忙,将通过一个个小实例,由浅入深.一步步与大家一起研究和总结AOP的相关技术.      关于Spring AOP系列主要有以…
历史文章 <国内最全的Spring Boot系列之一> 视频&交流平台 SpringBoot视频:http://t.cn/R3QepWG Spring Cloud视频:http://t.cn/R3QeRZc SpringBoot Shiro视频:http://t.cn/R3QDMbh SpringBoot交流平台:http://t.cn/R3QDhU0 SpringData和JPA视频:http://t.cn/R1pSojf SpringSecurity5.0视频:http://t.c…
Spring Cloud Stream 是消息中间件组件,它集成了 kafka 和 rabbitmq .本篇文章以 Rabbit MQ 为消息中间件系统为基础,介绍 Spring Cloud Stream 的使用.如果你没有用过消息中间件,可以到 RabbitMQ 的官网看一下,或者参考这个 http://rabbitmq.mr-ping.com/.理解了消息中间件的设计,才能更好的使用它. 消息中间的几大应用场景 1.异步处理 比如用户在电商网站下单,下单完成后会给用户推送短信或邮件,发短信和…
本篇文章为系列文章,未读第一集的同学请猛戳这里: Spring Cloud 系列之 Gateway 服务网关(一) Spring Cloud 系列之 Gateway 服务网关(二) 本篇文章讲解 Gateway 网关过滤器和全局过滤器以及自定义过滤器. 过滤器 Spring Cloud Gateway 根据作用范围划分为 GatewayFilter 和 GlobalFilter,二者区别如下: GatewayFilter:网关过滤器,需要通过 spring.cloud.routes.filter…
本篇文章为系列文章,未读第一集的同学请猛戳这里: Spring Cloud 系列之 Gateway 服务网关(一) Spring Cloud 系列之 Gateway 服务网关(二) Spring Cloud 系列之 Gateway 服务网关(三) 本篇文章讲解 Gateway 网关如何实现限流.整合Sentinel实现限流以及高可用网关环境搭建. 网关限流 顾名思义,限流就是限制流量,就像你宽带包有 1 个 G 的流量,用完了就没了.通过限流,我们可以很好地控制系统的 QPS,从而达到保护系统的…
本篇文章为系列文章,未读前几集的同学请猛戳这里: Spring Cloud 系列之 Sleuth 链路追踪(一) Spring Cloud 系列之 Sleuth 链路追踪(二) 本篇文章讲解 Sleuth 如何使用 Elasticsearch.Logstash.Kibana 分析追踪数据. 使用 ELK 分析追踪数据 点击链接观看:ELK 环境准备视频(获取更多请关注公众号「哈喽沃德先生」) ELK 是 elastic 公司提供的一套完整的日志收集以及展示的解决方案,是三个产品的首字母缩写,分别…
前面我们已经学习过 Spring Cloud Config 了: Spring Cloud 系列之 Config 配置中心(一) Spring Cloud 系列之 Config 配置中心(二) Spring Cloud 系列之 Config 配置中心(三) 它提供了配置中心的功能,但是需要配合 git.svn 或外部存储(例如各种数据库),且需要配合 Spring Cloud Bus <Spring Cloud 系列之 Bus 消息总线>实现配置刷新. 前面的课程中我们也学习了 Spring…
本篇文章为系列文章,未读前几集的同学请猛戳这里: Spring Cloud 系列之 Apollo 配置中心(一) Spring Cloud 系列之 Apollo 配置中心(二) 本篇文章讲解 Apollo 多环境部署方案,教大家搭建除了 DEV 的其他环境. 多环境部署方案 点击链接观看:Apollo 多环境部署说明视频(获取更多请关注公众号「哈喽沃德先生」) 为了让大家有更真实的感受,多环境部署方案我们在 Linux 环境下搭建,不再使用 Quick Start 脚本. 当项目要上线部署到生产…
本篇文章为系列文章,未读前几集的同学请猛戳这里: Spring Cloud 系列之 Apollo 配置中心(一) Spring Cloud 系列之 Apollo 配置中心(二) Spring Cloud 系列之 Apollo 配置中心(三) 本篇文章讲解 Apollo 高可用环境搭建,灰度发布,教大家搭建企业中真实环境的配置中心. 高可用环境搭建 点击链接观看:Apollo 高可用环境搭建视频(获取更多请关注公众号「哈喽沃德先生」) 分析 数据库高可用 方案很多,比如双主结构.主从结构.异地备份…
想对spring框架进行深入的学习一下,看看源代码,提升和沉淀下自己,工欲善其事必先利其器,还是先搭建环境吧. 环境搭建 sping源码之前是svn管理,现在已经迁移到了github中了,新版本基于gradle构建项目.所以构建sping源码环境必须先安装github以及Gradle. 当然了如果不想安装github客户端可以直接去git下载项目:spring中git地址https://github.com/spring-projects/spring-framework 安装github 首先…
1)当前系统中安装了gradle,如果为安装,可以从:http://www.gradle.org/downloads,,下载完后进行解压到任意盘符,然后增加环境变量GRADLE_HOME,并在环境变量bin中增加%GRADLE_HOME%/bin,打开DOS窗口,运行gradle -v,出现版本号等信息,表示安装成功: 2)spring4 用jdk8,所以需要当前系统安装OpenJDK 8 early access build 100 or later,点击链接可以下载.安装后还需要确认JAVA…
需求 需要对一个页面进行数据抓取,并导出doc文档 html解析器 jsoup 可直接解析某个URL地址.HTML文本内容.它提供了一套非常省力的API,可通过DOM,CSS以及类似于JQuery的操作方法来取出和操作数据. htmlparser 提供了线性和嵌套两种方式来解析网页,主要用于 html 网页的转换(Transformation) 以及网页内容的抽取 (Extraction). 比较一下 jsoup可以直接拿,类似jquery的选择器一样用起来比较好上手.htmlparser结构简…
freemarker FreeMarker是一款模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页.电子邮件.配置文件.源代码等)的通用工具. 它不是面向最终用户的,而是一个Java类库,是一款程序员可以嵌入他们所开发产品的组件. FreeMarker是免费的,基于Apache许可证2.0版本发布.其模板编写为FreeMarker Template Language(FTL),属于简单.专用的语言.需要准备数据在真实编程语言中来显示,比如数据库查询和业务运算, 之后模板…
本文会以一个简单而完整的业务来阐述Spring Cloud Finchley.RELEASE版本常用组件的使用.如下图所示,本文会覆盖的组件有: Spring Cloud Netflix Zuul网关服务器 Spring Cloud Netflix Eureka发现服务器 Spring Cloud Netflix Turbine断路器监控 Spring Cloud Sleuth + Zipkin服务调用监控 Sping Cloud Stream + RabbitMQ做异步消息 Spring Da…
前言 今天来介绍下Spring Boot如何配置日志logback,我刚学习的时候,是带着下面几个问题来查资料的,你呢 如何引入日志? 日志输出格式以及输出方式如何配置? 代码中如何使用? 正文 Spring Boot在所有内部日志中使用Commons Logging,但是默认配置也提供了对常用日志的支持,如:Java Util Logging,Log4J, Log4J2和Logback.每种Logger都可以通过配置使用控制台或者文件输出日志内容. 默认日志Logback SLF4J——Sim…
一.前言 在日常开发中,spring极大地简化了我们日常的开发工作.spring为我们管理好bean, 我们拿来就用.但是我们不应该只停留在使用层面,深究spring内部的原理,才能在使用时融汇贯通. 这是spring原理系列的第一篇,本篇主要讲解spring容器中bean的生命周期.这是基础,先从全貌上了解spring bean的生命周期,有利于我们更好地深入理解bean的生命周期各阶段发生了什么. 二. spring bean生命周期 spring bean从出生到死亡经历如下历程: (1)…
本文基于 Spring Cloud 2020.0 发布版的依赖 本系列会深入分析 Spring Cloud 的每一个组件,从Spring Cloud Commons这个 Spring Cloud 所有元素的抽象说起,深入设计思路与源码,并结合实际使用例子深入理解.本系列适合有一定 Spring 或者 Spring Boot 使用经验的人阅读. 什么是Spring Cloud Commons Spring Cloud框架包括如下功能: 分布式多版本配置管理 服务注册与发现 路由 微服务调用 负载均…
微信公众号:compassblog 欢迎关注.转发,互相学习,共同进步! 有任何问题,请后台留言联系! 1.AOP概述 (1).什么是 AOP AOP 为 Aspect Oriented Programming 的缩写,意为"面向切面编程".AOP 是 OOP (面向对象)的延续,可以对业务的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性和开发效率. (2).AOP 思想图解:横向重复,纵向切取 过滤器 拦截器 事务管理 (3).AOP 可以实现的功能 权…
微信公众号:一个优秀的废人 如有问题或建议,请后台留言,我会尽力解决你的问题. 前言 哎呦喂,按照以往的惯例今天周六我的安排应该是待在家学学猫叫啥的.但是今年这种日子就可能一去不复返了,没法办法啊.前几天年轻,立下了一周至少更两篇文章的 flag .废话少说,今天接着前文给你们带来了第一个 SpringBoot 工程的详解. 第一个 SpringBoot 工程 前文已经说过了 SpringBoot 工程的创建,这里不再赘述,还不会的朋友,请看下面这篇文章. 如何使用 IDEA 构建 Spring…
Spring cloud系列教程第二篇:支付项目父工程图文搭建 在讲解spring cloud相关的技术的时候,咱们就模拟订单支付这个流程来讲讲 在这个支付模块微服务搭建过程中,上面的这些技术,都会融入进来.老的会讲解(因为老的技术还有很多公司会使用到,谁也不知道下一个公司会用新的还是旧的,所以咱们新旧都学习),新的也会讲解. 上面各种技术都融入的话,每个技术使用一个微服务项目的话,整个项目大约30+个子工程.所以这里,我们就使用maven的父子管理. 本文是由凯哥(凯哥Java:kagejav…
@ 目录 1. Spring Security 2. 实验环境准备 3. 日志级别修改 4. 配置用户名/密码 5. 数据库方式校验 6. 不拦截静态资源 7. 自定义登录页面 8. Remember me 1. Spring Security Spring Security 是 Spring 家族中的一个安全管理框架,应用程序的两个主要区域是"认证"和"授权"(或者访问控制).Spring Security是针对Spring项目的安全框架,也是Spring Boo…
接上一篇Spring AOP系列(一)- 代理模式,本篇来聊聊动态代理. 动态代理与静态代理的区别 要想了解动态代理与静态代理的区别,需要有两个前置知识点:java程序是如何执行的以及类加载机制. java程序执行过程 将java源码(.java文件)通过编译器(javac.exe)编译成JVM文件(.class文件). 将JVM文件通过java.exe执行,输出结果. 静态代理显示的编写了代理类,因此编译过程中会生成对应的.class文件,最终在运行过程中执行这些.class文件.而动态代理并…
在Spring基础 - Spring简单例子引入Spring的核心中向你展示了AOP的基础含义,同时以此发散了一些AOP相关知识点; 本节将在此基础上进一步解读AOP的含义以及AOP的使用方式.@pdai Spring框架系列(4) - 深入浅出Spring核心之面向切面编程(AOP) 引入 如何理解AOP AOP是什么 AOP术语 Spring AOP和AspectJ是什么关系 AOP的配置方式 XML Schema配置方式 AspectJ注解方式 接口使用JDK代理 非接口使用Cglib代理…
如何编译Apache Hadoop2.6.0源代码 1.安装CentOS 我使用的是CentOS6.5,下载地址是http://mirror.neu.edu.cn/centos/6.5/isos/x86_64/,选择CentOS-6.5-x86_64-bin-DVD1.iso 下载,注意是64位的,大小是4GB,需要下载一段时间的.其实6.x的版本都可以,不一定是6.5. 我使用的是VMWare虚拟机,分配了2GB内存,20GB磁盘空间.内存太小,会比较慢:磁盘太小,编译时可能会出现空间不足的情…
原文网址:http://blog.csdn.net/luoshengyang/article/details/6559955 看完了前面说的几本书之后,对Linux Kernel和Android有一定的认识了,是不是心里蠢蠢欲动,想小试牛刀自己编译一把Android源代码了呢?一直习惯使用Windows系统,而Android源代码是不支持在Windows上编译上,于是决定使用虚拟机安装Ubuntu,然后下载.编译和安装Android源代码. 一. 环境准备. 1. 磁盘空间预留20G左右,内存3…
文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/6559955 看完了前面说的几本书之后,对Linux Kernel和Android有一定的认识了,是不是心里蠢蠢欲动,想小试牛刀自己编译一把Android源代码了呢?一直习惯使用Windows系统,而Android源代码是不支持在Windows上编译上,于是决定使用虚拟机安装Ubuntu,然后下载.编译和安装Android源代码. 一. 环境准备…
[Spring MVC系列]--(4)返回JSON 摘要:本文主要介绍如何在控制器中将数据生成JSON格式并返回 1.导入包 (1)spring mvc 3.0不需要任何其他配置,添加一个jackson的架包,既可以支持的, 貌似现在只有3.0版本以上才支持整合json哦. (2)json并不是向下兼容的,有些高版本是不能用的,伤不起....最后看到了1.1版本还是支持的,于是就下载了1.1.2的版本. 于是两个jar包就是:jackson-core-asl-1.1.2.jar和jackson-…
后台验证 开发项目过程中,后台在很多地方需要进行校验操作,比如:前台表单提交,调用系统接口,数据传输等.而现在多数项目都采用MVC分层式设计,每层都需要进行相应地校验. 针对这个问题, JCP 出台一个 JSR 303-Bean Validation规范 ,而Hibernate Validator 作为Bean Validation的参考实现,提供了JSR 303规范中所有内置constraint的实现,除此之外还有一些附加的constraint. Hibernate Validation的使用…