自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 Spring Cloud Eureka 控制台快速查看Swagger API文档

在服务比较多的情况下,突然想看某个服务的API 文档虽然外面使用了Swagger来进行API的管理,但是还是得找到对应的服务,然后访问Swagger的管理页面才行。为了方便查询文档,把这个功能集成到Eureka中,这样就很方便了默认的Instances也是有链接跳转的,外面需要把这个跳转改成Swagger的管理页面这样直接点击fsh-house:192.168.10

2017-12-27 11:17:51 1116

原创 使用dubbo过程中遇到的问题

1.同时配置了XML和properties文件,则properties中的配置无效只有XML没有配置时,properties才生效。 2.dubbo缺省会在启动时检查依赖是否可用,不可用就抛出异常,阻止spring初始化完成,check属性默认为true。测试时有些服务不关心或者出现了循环依赖,将check设置为false 3.为了方便开发测试,线下有一个所有服务可用的注册中心

2017-12-20 09:52:38 10399 1

原创 spring cloud遇到的问题

spring cloud遇到的问题1. spring cloud分为多个版本,还在持续更新使用过程中应注意版本的兼容性问题。Spring Cloud Finchley 依赖于 Spring Boot 2.0.x 并与 1.x.y 系列不兼容。

2017-11-28 14:50:12 2600

原创 shiro 单点登录

Shiro 1.2开始提供了Jasig CAS单点登录的支持,单点登录主要用于多系统集成,即在多个系统中,用户只需要到一个中央服务器登录一次即可访问这些系统中的任何一个,无须多次登录。此处我们使用Jasig CAS v4.0.0-RC3版本:https://github.com/Jasig/cas/tree/v4.0.0-RC3Jasig CAS单点登录系统分为服务器端和客户端,服务器端提

2017-11-16 09:15:29 374

原创 Redis 管道技术

Redis是一种基于客户端-服务端模型以及请求/响应协议的TCP服务。这意味着通常情况下一个请求会遵循以下步骤:客户端向服务端发送一个查询请求,并监听Socket返回,通常是以阻塞模式,等待服务端响应。服务端处理命令,并将结果返回给客户端。Redis 管道技术Redis 管道技术可以在服务端未响应时,客户端可以继续向服务端发送请求,并最终一次性读取所有服务端的响

2017-11-15 08:58:14 799

原创 Redis 客户端连接

Redis 通过监听一个 TCP 端口或者 Unix socket 的方式来接收来自客户端的连接,当一个连接建立后,Redis 内部会进行以下一些操作:首先,客户端 socket 会被设置为非阻塞模式,因为 Redis 在网络事件处理上采用的是非阻塞多路复用模型。然后为这个 socket 设置 TCP_NODELAY 属性,禁用 Nagle 算法然后创建一个可读的文件事件用于监

2017-11-13 09:15:54 330

原创 Redis 安全

我们可以通过 redis 的配置文件设置密码参数,这样客户端连接到 redis 服务就需要密码验证,这样可以让你的 redis 服务更安全。实例我们可以通过以下命令查看是否设置了密码验证:127.0.0.1:6379> CONFIG get requirepass1) "requirepass"2) ""默认情况下 requirepass 参数是空的,这就意味着你无

2017-11-10 09:10:32 278

原创 Redis 数据备份与恢复

Redis 数据备份与恢复Redis SAVE 命令用于创建当前数据库的备份。语法redis Save 命令基本语法如下:redis 127.0.0.1:6379> SAVE 实例redis 127.0.0.1:6379> SAVE OK该命令将在 redis 安装目录中创建dump.rdb文件。恢复数据如果需要恢复数据,只需将备份

2017-11-06 14:59:13 152

原创 Docker 安装 MongoDB

方法一、通过 Dockerfile 构建创建Dockerfile首先,创建目录mongo,用于存放后面的相关东西。runoob@runoob:~$ mkdir -p ~/mongo ~/mongo/dbdb目录将映射为mongo容器配置的/data/db目录,作为mongo数据的存储目录进入创建的mongo目录,创建DockerfileFROM debi

2017-11-02 08:55:58 3640

原创 Docker 安装 Redis

方法一、通过 Dockerfile 构建创建Dockerfile首先,创建目录redis,用于存放后面的相关东西。runoob@runoob:~$ mkdir -p ~/redis ~/redis/datadata目录将映射为redis容器配置的/data目录,作为redis数据持久化的存储目录进入创建的redis目录,创建DockerfileFROM d

2017-11-01 08:59:40 417

原创 Docker 安装 Tomcat

方法一、通过 Dockerfile构建创建Dockerfile首先,创建目录tomcat,用于存放后面的相关东西。runoob@runoob:~$ mkdir -p ~/tomcat/webapps ~/tomcat/logs ~/tomcat/confwebapps目录将映射为tomcat容器配置的应用程序目录logs目录将映射为tomcat容器的日志目录

2017-10-31 08:47:42 291

原创 Docker 安装 MySQL

方法一、通过 Dockerfile构建创建Dockerfile首先,创建目录mysql,用于存放后面的相关东西。runoob@runoob:~$ mkdir -p ~/mysql/data ~/mysql/logs ~/mysql/confdata目录将映射为mysql容器配置的数据文件存放路径logs目录将映射为mysql容器的日志目录conf目录里的

2017-10-30 09:05:11 263

原创 Docker 安装 Nginx

方法一、通过 Dockerfile构建创建Dockerfile首先,创建目录nginx,用于存放后面的相关东西。runoob@runoob:~$ mkdir -p ~/nginx/www ~/nginx/logs ~/nginx/confwww目录将映射为nginx容器配置的虚拟目录logs目录将映射为nginx容器的日志目录conf目录里的配置文件将映

2017-10-27 08:50:47 530

原创 Docker 容器连接

网络端口映射我们创建了一个 python 应用的容器。runoob@runoob:~$ docker run -d -P training/webapp python app.pyfce072cc88cee71b1cdceb57c2821d054a4a59f67da6b416fceb5593f059fc6d另外,我们可以指定容器绑定的网络地址,比如绑定 127.0.0.1。

2017-10-26 08:48:07 193

原创 Docker 镜像使用

当运行容器时,使用的镜像如果在本地中不存在,docker 就会自动从 docker 镜像仓库中下载,默认是从 Docker Hub 公共镜像源下载。下面我们来学习:1、管理和使用本地 Docker 主机镜像2、创建镜像列出镜像列表我们可以使用 docker images 来列出本地主机上的镜像。runoob@runoob:~$ docker imag

2017-10-25 08:58:56 216

原创 Docker 容器使用

Docker 客户端docker 客户端非常简单 ,我们可以直接输入 docker 命令来查看到 Docker 客户端的所有命令选项。runoob@runoob:~# docker可以通过命令 docker command --help 更深入的了解指定的 Docker 命令使用方法。例如我们要查看 docker stats 指令的具体使用方法:runoob

2017-10-24 08:53:07 246

原创 Docker Hello World

Docker 允许你在容器内运行应用程序, 使用 docker run 命令来在容器内运行一个应用程序。输出Hello worldrunoob@runoob:~$ docker run ubuntu:15.10 /bin/echo "Hello world"Hello world各个参数解析:docker: Docker 的二进制执行文件。

2017-10-23 08:45:32 240

原创 Windows Docker 安装

Docker 引擎使用的是 Linux 内核特性,所以我们需要在 Windows 上使用一个轻量级的虚拟机 (VM) 来运行 Docker。我们通过 Boot2Docker 来安装虚拟机和运行 Docker安装1、安装Boot2Docker 最新版 Boot2Docker 下载地址: https://github.com/boot2docker/windows-

2017-10-19 08:43:57 392

原创 CentOS Docker 安装

Docker支持以下的CentOS版本:CentOS 7 (64-bit)CentOS 6.5 (64-bit) 或更高的版本前提条件目前,CentOS 仅发行版本中的内核支持 Docker。Docker 运行在 CentOS 7 上,要求系统为64位、系统内核版本为 3.10 以上。Docker 运行在 CentOS-6.5 或更高的版本的 C

2017-10-18 08:49:09 201

原创 Ubuntu Docker 安装

Docker 支持以下的 Ubuntu 版本:Ubuntu Precise 12.04 (LTS)Ubuntu Trusty 14.04 (LTS)Ubuntu Wily 15.10其他更新的版本……前提条件Docker 要求 Ubuntu 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的 Ubuntu 版本是否支持 D

2017-10-17 09:02:38 240

原创 Docker 架构

Docker 使用客户端-服务器 (C/S) 架构模式,使用远程API来管理和创建Docker容器。Docker 容器通过 Docker 镜像来创建。容器与镜像的关系类似于面向对象编程中的对象与类。Docker面向对象容器对象镜像类Docker 镜像(Im

2017-10-16 08:59:30 200

原创 初识Docker

Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。Docker的应用场景

2017-10-13 09:06:32 614

原创 spring boot validator校验

(1) 入门例子;       Validator主要是校验用户提交的数据的合理性的,比如是否为空了,密码长度是否大于6位,是否是纯数字的,等等。那么在spring boot怎么使用这么强大的校验框架呢。在这里我们主要是使用注解进行学习。我们先说说我们的需求:我们有一个demo.html,在页面上有两个元素 姓名输入框,密码输入库,提交按钮。提交到后台之后,使用Valida

2017-10-12 08:54:01 470

原创 Spring Boot国际化(i18n)

国际化(internationalization)是设计和制造容易适应不同区域要求的产品的一种方式。它要求从产品中抽离所有地域语言,国家/地区和文化相关的元素。换言之,应用程序的功能和代码设计考虑在不同地区运行的需要,其代码简化了不同本地版本的生产。开发这样的程序的过程,就称为国际化。       那么当我们使用Spring Boot如何进行国际化呢?那么当你读完这篇文章你会学到如下知

2017-10-11 08:50:29 11490 3

原创 spring boot 自定义properties使用详解

(1) 在application.properties文件中添加自定义属性(单个属性使用);       在这里我们新建一个maven java project进行测试,取名为:spring-boot-hello4。对pom.xml基本的spring boot 配置,主要用到的一个核心依赖是:12345dependency>     

2017-10-10 08:41:00 8716

原创 spring boot 使用注解@async实现异步调用

什么是“异步调用”?       “异步调用”对应的是“同步调用”,同步调用指程序按照定义顺序依次执行,每一行程序都必须等待上一行程序执行完成之后才能执行;异步调用指程序在顺序执行时,不等待异步调用的语句返回结果就执行后面的程序。同步调用下面通过一个简单示例来直观的理解什么是同步调用:       定义Task类,创建三个处理函数分别模拟三个执行任务的操作,操作消耗时间随机

2017-10-09 08:59:37 3788

原创 spring boot 服务配置和部署

Spring Boot 其默认是集成web容器的,启动方式由像普通Java程序一样,main函数入口启动。其内置Tomcat容器或Jetty容器,具体由配置来决定(默认Tomcat)。当然你也可以将项目打包成war包,放到独立的web容器中(Tomcat、weblogic等等),当然在此之前你要对程序入口做简单调整。一、内嵌Server配置       Server的几个常

2017-09-28 08:53:52 116

原创 spring boot logback 配置

为什么要使用logback ?       ——在开发中不建议使用System.out因为大量的使用会增加资源的消耗。因为使用System.out是在当前线程执行的,写入文件也是写入完毕之后才继续执行下面的程序。而使用Log工具不但可以控制日志是否输出,怎么输出,它的处理机制也是通知写日志,继续执行后面的代码不必等日志写完。       ——个人推荐使用SLF4J(Simple Loggi

2017-09-27 08:59:03 334

原创 spring boot log4j多环境不同日志级别控制

在上一章节中我们介绍了,仅通过log4j-spring.properties对日志级别进行控制,对于需要多环境部署的环境不是很方便,可能我们在开发环境大部分模块需要采用DEBUG级别,在测试环境可能需要小部分采用DEBUG级别,而在生产环境时我们又希望采用INFO级别。这个时候,我们要自己手工编辑log4j-spring.properties文件来调整日志级别,不论在版本库中默认保存哪个环境的级别

2017-09-26 08:59:34 1583

原创 spring boot 多环境配置读取属性文件

相信很多人选择Spring Boot主要是考虑到它既能兼顾Spring的强大功能,还能实现快速开发的便捷。我们在Spring Boot使用过程中,最直观的感受就是没有了原来自己整合Spring应用时繁多的XML配置内容,替代它的是在pom.xml中引入模块化的Starter POMs,其中各个模块都有自己的默认配置,所以如果不是特殊应用场景,就只需要在application.properties中

2017-09-25 08:55:04 3717

原创 spring boot log4j 配置

Log4j是每个开发者比较熟悉的日志框架,所以咱们优先介绍这个。那么如何操作呢?我们一起来看看使用过程吧。引入log4j依赖在创建Spring Boot工程时,我们引入了spring-boot-starter,其中包含了spring-boot-starter-logging,该依赖内容就是Spring Boot默认的日志框架Logback,所以我们在引入log4j之前,需要先排除该

2017-09-22 08:53:59 373

原创 spring boot日志理论详解

Spring Boot在所有内部日志中使用Commons Logging,但是默认配置也提供了对常用日志的支持,如:Java Util Logging,Log4J, Log4J2和Logback。每种Logger都可以通过配置使用控制台或者文件输出日志内容。这一篇文章我们先从总体介绍下日志的理论知识,在之后的系列中会各个进行介绍如何使用不同的日志框架。格式化日志默认的日志输出如

2017-09-21 08:56:09 288

原创 spring boot 发送邮件

Spring提供了非常好用的JavaMailSender接口实现邮件发送。在Spring Boot的Starter模块中也为此提供了自动化配置。下面通过实例看看如何在Spring Boot中使用JavaMailSender发送邮件。快速入门: 那么如何进行使用呢?很简单最核心的就两个步骤:在Spring Boot的工程中的pom.xml中引入spring-boot-st

2017-09-19 09:01:29 423

原创 spring boot 使用AOP统一处理Web请求日志

AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是Spring框架中的一个重要内容,它通过对既有程序定义一个切入点,然后在其前后切入不同的执行内容,比如常见的有:打开数据库连接/关闭数据库连接、打开事务/关闭事务、记录日志等。基于AOP不会破坏原来程序逻辑,因此它可以很好的对业务逻辑的各

2017-09-18 09:15:55 414

原创 spring boot集成mybatis

大家在开发的时候,会喜欢jdbcTemplate操作数据库,有喜欢JPA操作数据库的,有喜欢MyBatis操作数据库的,对于这些我个人觉得哪个使用顺手就使用哪个就好了,并没有一定要使用哪个,个人在实际中会集成多个,这样保存的数据的时候,选择一个最方便的也就是JPA,查询的时候,或者统计的时候,选择一个效率最高的,也就是直接使用SQL语句方式,当然这并一定要这样的,现在优化方式又很多。那么这节说说怎

2017-09-15 08:53:31 234

原创 spring boot 动态数据源配置

(1)新建maven java project;    新建一个maven project,取名为:spring-boot-multi-ds(2)在pom.xml添加依赖包;   在pom.xml文件中加入依赖的库文件,主要是spring boot基本的,数据库驱动,spring-jpa支持即可,具体pom.xml文件如下:12345

2017-09-14 08:53:01 2441

原创 spring boot slf4j 配置日志记录

在开发中打印内容,使用 System.out.println() 和 Log4j 应当是人人皆知的方法了。其实在开发中我们不建议使用 System.out 因为大量的使用 System.out 会增加资源的消耗。而Log4j 更为灵活在性能上也相比 System.out 要高,我们可以配置输出级别,可以指定多个日志文件分别记录不同的日志。       使用 System.out 是

2017-09-13 08:55:26 2908

原创 spring boot 多数据源配置

我们在开发过程中可能需要用到多个数据源,我们有一个项目(MySQL)就是和别的项目(SQL Server)混合使用了。其中SQL Server是别的公司开发的,有些基本数据需要从他们平台进行调取,那么在项目中就需要支持多数据源,不然就只能获取到自己的数据源的数据了。当然还有很多其它方面的使用场景,多数据库,比如有专门负责生成id的数据库,或者主从库分离等等。总之多数据源可能在实际中还是需要用到的。

2017-09-12 08:59:19 3539 1

原创 java创建bean并注册到spring中

从Spring 3.0开始,增加了一种新的途径来配置Bean Definition,这就是通过Java Code配置Bean Definition。       与XML和Annotation两种配置方式不同点在于:    前两种方式XML和Annotation的配置方式为预定义方式,即开发人员通过XML文件或者Annotation预定义配置Bean的各种属性后,启动Spring容

2017-09-11 08:55:45 5200

原创 spring-boot-devtools热部署实现

spring-boot-devtools 是一个为开发者服务的一个模块,其中最重要的功能就是自动应用代码更改到最新的App上面去。原理是在发现代码有更改之后,重新启动应用,但是比速度比手动停止后再启动还要更快,更快指的不是节省出来的手工操作的时间。其深层原理是使用了两个ClassLoader,一个Classloader加载那些不会改变的类(第三方Jar包),另一个ClassLoader加载会更

2017-09-08 08:55:43 399

提示
确定要删除当前文章?
取消 删除