作者:追梦1819 原文:https://www.cnblogs.com/yanfei1819/p/11457867.html 版权声明:本文为博主原创文章,转载请附上博文链接! 引言   前一章(SpringBoot第二十二篇:应用监控之Actuator)介绍了 SpringBoot 应用使用 Actuctor 进行监控.文章最后也提出了一个问题,是否可以将监控结果更好的展示个运维同学?   本章解答这个问题.   Spring Boot Admin 是一个管理和监控 Spring Boot…
这篇文篇介绍,怎么为 springboot程序构建一个Docker镜像.docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源.Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低. 准备工作 环境: linux环境或mac,不要用windows jdk 8 mave…
转载请标明出处: 原文首发于:https://www.fangzhipeng.com/springboot/2017/07/11/springboot24-docker/ 本文出自方志朋的博客 这篇文篇介绍,怎么为 springboot程序构建一个docker镜像.docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源.Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容…
作者:追梦1819 原文:https://www.cnblogs.com/yanfei1819/p/11226397.html 版权声明:本文为博主原创文章,转载请附上博文链接! 引言   很多文章都将 SpringBoot Actuator 的 Endpoint 翻译为 "端点".不过我认为这这翻译失去了原有的意思.故本文中的 endpoint 依旧是 endpoint,不翻译为"端点".   通过引入 spring-boot-starter-actuator ,…
Action bar是一个标识应用程序和用户位置的窗口功能,并且给用户提供操作和导航模式.在大多数的情况下,当你需要突出展现用户行为或全局导航的activity中使用action bar,因为action bar能够使应用程序给用户提供一致的界面,并且系统能够很好根据不同的屏幕配置来适应操作栏的外观.你能够用ActionBar的对象的API来控制操作栏的行为和可见性,这些API被添加在Android3.0(API 级别 11)中. Action bar的主要目的是: 1.  提供一个用于识别应用…
Action bar是一个标识应用程序和用户位置的窗口功能,并且给用户提供操作和导航模式.在大多数的情况下,当你需要突出展现用户行为或全局导航的activity中使用action bar,因为action bar能够使应用程序给用户提供一致的界面,并且系统能够很好根据不同的屏幕配置来适应操作栏的外观.你能够用ActionBar的对象的API来控制操作栏的行为和可见性,这些API被添加在Android3.0(API 级别 11)中. Action bar的主要目的是: 1.  提供一个用于识别应用…
什么是算法 1.什么是算法 算法(algorithm):就是定义良好的计算过程,他取一个或一组的值为输入,并产生出一个或一组值作为输出.简单来说算法就是一系列的计算步骤,用来将输入数据转化成输出结果. mark:我们可以把所有的算法想象为一本“菜谱”,特定的算法比如菜谱中的的一道“老醋花生米”的制作流程,只要按照菜谱的要求制作老醋花生米,那么谁都可以做出一道好吃的老醋花生米.so,这个做菜的步骤就可以理解为:“解决问题的步骤” 2.算法的意义 假设计算机无限快,并且计算机存储容器是免费的,我们还…
使用VideoView播放视频,视频路径有三种: 1. SD卡中 2. Android的资源文件中 3. 网络视频 第一种,SD卡中的方法. 路径写绝对路径,如果不能播放,可以赋予读取权限. 效果图: MainActivity.java package com.example.aimee.videotest; import android.Manifest; import android.content.pm.PackageManager; import android.net.Uri; imp…
configparser模块 config:配置,parser:解析.字面意思理解configparser模块就是配置文件的解析模块. 来看一个好多软件的常见文档格式如下: [DEFAULT] # 标题性的东西, # 下面四组键值对是关于[DEFAULT]的介绍 ServerAliveInterval = 45 Compression = yes CompressionLevel = 9 ForwardX11 = yes [bitbucket.org] User = hg [topsecret.…
Cache存储器 电脑中为高速缓冲存储器,是位于CPU和主存储器DRAM(Dynamic Random Access Memory)之间,规模较小,但速度很高的存储器,通常由SRAM(Static Random Access Memory 静态存储器)组成.它是位于CPU与内存间的一种容量较小但速度很高的存储器.CPU的速度远高于内存,当CPU直接从内存中存取数据时要等待一定时间周期,而Cache则可以保存CPU刚用过或循环使用的一部分数据,如果CPU需要再次使用该部分数据时可从Cache中直接…
LUA是一种体积小,速度快的脚本语言.脚本语言虽然性能上和C++这样的Naitive语言相比差一点,但是开发速度快,可以方便的更新代码等,近年来受到了越来越多开发者的重视. 在SOUI框架中,我把脚本模块参考CEGUI抽象出一个独立的脚本接口,方便实现各种脚本语言的对接. 下面简单介绍一下在SOUI中实现的LUA脚本模块的实现. 在客户端程序中使用脚本语言一个基本的需求就是C++代码和脚本代码的相互调用,即C++代码可以调用脚本代码,脚本代码也要能够方便的调用C++代码. LUA脚本原生提供了访…
一.多态 多态 多态:一类事物有多种形态,同一种事物的多种形态,动物分为鸡类,猪类.狗类 例子 import abc class H2o(metaclass=abc.ABCMeta): ​ def __init__(self,name,temperature): self.name = name self.temperature = temperature ​ @abc.abstractmethod def tell_state(self): pass ​ class Water(H2o): ​…
前言 上一章节,介绍了目前开发中常见的log4j2及logback日志框架的整合知识.在很多时候,我们在开发一个系统时,不管出于何种考虑,比如是审计要求,或者防抵赖,还是保留操作痕迹的角度,一般都会有个全局记录日志的模块功能.此模块一般上会记录每个对数据有进行变更的操作记录,若是在web应用上,还会记录请求的url,请求的IP,及当前的操作人,操作的方法说明等等.在很多时候,我们需要记录请求的参数信息时,通常是利用拦截器.过滤器或者AOP等来进行统一拦截.本章节,就主要来说一说如何利用AOP实现…
作者:追梦1819 原文:https://www.cnblogs.com/yanfei1819/p/11457867.html 版权声明:本文为博主原创文章,转载请附上博文链接! 引言   作者在实际项目中碰到一个问题,就是需要在系统中加入操作日志功能.但是目前系统开发已经接近尾声,功能接口达到一百几十个.   如果按照新手的思维(项目组中有人就这样提建议),但是这样的话,工作量之大.冗余代码之多,可想而知.对于这种需求,我们应该考虑到 Java 的面向切面编程思想,使用 Spring AOP.…
作者:追梦1819 原文:https://www.cnblogs.com/yanfei1819/p/10984081.html 版权声明:本文为博主原创文章,转载请附上博文链接! 引言   本文将谈论 SpringBoot 的默认错误处理机制,以及如何自定义错误响应. 版本信息 JDK:1.8 SpringBoot :2.1.4.RELEASE maven:3.3.9 Thymelaf:2.1.4.RELEASE IDEA:2019.1.1 默认错误响应   我们新建一个项目,先来看看 Spri…
jQuery 学习6 删除元素   上节课我们做了添加元素,模拟的是楼主发的文章,路人评论,那么同学们这节课学了删除之后,去之前的代码上添加一个删除,模拟一个楼主删除路人的评论. jQuery的删除方法: remove() - 删除被选元素(及其子元素) empty() - 从被选元素中删除子元素 以上引用w3c教程   为了同学们更好的扩展,老师就不在上节课的基础上模拟删除,而是写出删除的功能代码和注意事项,同学们就自己多尝试,来瞧瞧代码先:   <!DOCTYPE html> <ht…
随着iOS10发布的临近,大家的App都需要适配iOS10,下面是我总结的一些关于iOS10适配方面的问题,如果有错误,欢迎指出. 1.系统判断方法失效: 在你的项目中,当需要判断系统版本的话,不要使用下面的方法: #define isiOS10 ([[[[UIDevice currentDevice] systemVersion] substringToIndex:1] intValue]>=10) 它会永远返回NO,substringToIndex:1在iOS 10 会被检测成 iOS 1了…
  Python学习路径及练手项目合集 Wayne Shi· 2 个月前 参照:https://zhuanlan.zhihu.com/p/23561159 更多文章欢迎关注专栏:学习编程. 本系列Python技术路径中包含入门知识.Python基础.Web框架.基础项目.网络编程.数据与计算.综合项目七个模块.路径中的教程将带你逐步深入,学会如何使用 Python 实现一个博客,桌面词典,微信机器人或网络安全软件等.完成本路径的基础及项目练习,将具备独立的Python开发能力. 完整的Pytho…
请关注孟船长的公众号:自动化测试实战 大家想了解其他过滤器可以参考这里: http://jinja.pocoo.org/docs/dev/templates/#builtin-filters --------- 自定义过滤器 这里要用到装饰器template_filter('过滤器名字'),代码: flaskDemo.py # coding: utf-8 from flask import Flask, render_template import flask app = Flask(__nam…
网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.另外一些不常使用的名字还有蚂蚁.自动索引.模拟程序或者蠕虫. Requests          …
这里选择的是python2.7(python3和2.7的源码基本类似) #!/usr/bin/env python # -*- coding:utf-8 -*- import SocketServer class MyServer(SocketServer.BaseRequestHandler): def handle(self): conn = self.request conn.sendall(bytes("欢迎来啊", encoding="utf-8")) w…
数据库索引 一.索引简介 索引在mysql中也叫做"键",是存储引擎用于快速找到记录的一种数据结构.索引对于良好的性能非常关键,尤其是当表中的数据量越来越大时,索引对于性能的影响愈发重要: 索引优化应该是对查询性能优化最有效的手段了: 索引能轻易将查询性能提高好几个数量级: 索引相当于字典的音序表,如果要查某个生字,如果不使用音序表,则需要从几百页中一个个查找,效率太低. 索引特点:创建与维护索引会消耗很多时间与磁盘空间,但查询速度大大提高: 二.索引语法 --创建表时 --语法: C…
      1.. 队列基础 队列也是一种线性结构: 相比数组,队列所对应的操作数是队列的子集: 队列只允许从一端(队尾)添加元素,从另一端(队首)取出元素: 队列的形象化描述如下图: 队列是一种先进先出(First In First Out)的数据结构: 2.. 队列的实现 任务目标如下: Queue<E> ·void enqueue(E) //入队 ·E dequeue() //出队 ·E getFront() //查看队首元素 ·int getSize() //查看队列中元素的个数 ·b…
好家伙, HTML            CSS              JS structure style        function 结构体    样式     功能 <>     { } {;} 好了,什么是DOM? document object  model 1.文本对象模型  ,  是个接口 2.DOM为了方便编程语言对HTML等文档的操作,于是将HTML文档中的对象全部视为一个个对象 ,然后这些对象依照层级惯性形成一棵树,这棵树就命名为DOM树. 3.有了对象,编程就方便…
​ 本文是Spring Cloud专栏的第十四篇文章,了解前十三篇文章内容有助于更好的理解本文: Spring Cloud第一篇 | Spring Cloud前言及其常用组件介绍概览 Spring Cloud第二篇 | 使用并认识Eureka注册中心 Spring Cloud第三篇 | 搭建高可用Eureka注册中心 Spring Cloud第四篇 | 客户端负载均衡Ribbon Spring Cloud第五篇 | 服务熔断Hystrix Spring Cloud第六篇 | Hystrix仪表盘…
解剖SQLSERVER 第十四篇    Vardecimals 存储格式揭秘(译) http://improve.dk/how-are-vardecimals-stored/ 在这篇文章,我将深入研究vardecimals 是怎麽存储在磁盘上的. 作为一般的介绍vardecimals 是怎样的,什么时候应该使用,怎样使用,参考这篇文章 vardecimal 存储格式启用了吗? 首先,我们需要看一下vardecimals 是否已经开启了,因为他会完全改变decimals 的存储方式.Vardeci…
SpringCloud系列教程 | 第十四篇:Spring Cloud Gateway高级应用 Springboot: 2.1.6.RELEASE SpringCloud: Greenwich.SR1 如无特殊说明,本系列教程全采用以上版本 上一篇我们聊了Gateway和注册中心的使用,以及 Gataway 中 Filter 的基本使用,这篇文章我们将继续介绍 Filter 的一些高级功能. 熔断 限流 重试 1. 限速路由器 限速在高并发场景中比较常用的手段之一,可以有效的保障服务的整体稳定性…
作者:追梦1819 原文:https://www.cnblogs.com/yanfei1819/p/11007470.html 版权声明:本文为博主原创文章,转载请附上博文链接! 引言   前面的十四篇文介绍了 SpringBoot 的一些基本和常用的功能.后面,我们将介绍 SpringBoot 的高级的功能.框架原理以及使用技巧.   一个项目组可能由前端.后端.安卓.IOS等众多的开发人员或者众多开发团队组成.内部的 API 共同成本巨大.主要体现在几个方面: 接口多且复杂: 细节之处繁杂:…
第十四篇(书中 5.4~5.6节 内容) 书中内容: 总结 5.4节 内容重点: 1.如何编写自定义组件? 跟着做: 重点1:如何编写自定义组件? 文中提到了重要的两点. 好,我们来试试看. 第一步,代码关联exml. 查看自定义控件. 另外,书中还提到. 果然,拖出来只是一个矩形. 那我来选择一个皮肤好了. 这样,就完成了,自定义组件搞定了. 至此,5.4节 内容完成. 接下来是 5.5节 的内容. 额.变形的情况,看来只能在下一章介绍了. 虽然我在 第十三篇 有记录,涉及到九宫格的知识,但是…
本篇文章是Integration Services系列的第十四篇,详细内容请参考原文. 简介在前一篇,我们查看了SSIS变量,变量配置和表达式管理动态值.在这一篇,我们使用SQL Server数据商业智能工具(SSDT-BI)或Visual Studio 2012将我们的第一个SSIS项目转换为SSIS 2012.为什么你想升级我们的SSIS项目到2012?你可能想使用SSIS 2012中的新特性.你可能还希望利用SSIS 2012目录.要使用目录,你的项目必须遵循项目部署模型,我们也将在这篇文…