学习笔记

Spring Boot2 系列教程(十一)Spring Boot 中的静态资源配置

当我们使用 SpringMVC 框架时,静态资源会被拦截,需要添加额外配置,之前老有小伙伴在微信上问松哥 Spring Boot 中的静态资源加载问题:“松哥,我的 HTML 页面好像没有样式?”,今天我就通过一篇文章,来和大伙仔细聊一聊这个问题。 1. SSM 中的配置 要讲 Spring Boot 中的问题,我们得先回到 SSM 环境搭建中,一般来说,我们可以通过 节点来配置不拦截静态资源,如下: ...

Kubernetes中的PV和PVC是啥

 K8S引入了一组叫作Persistent Volume Claim(PVC)和Persistent Volume(PV)的API对象,大大降低了用户声明和使用持久化Volume的门槛。...

SpringCloud系列-整合Hystrix的两种方式

Hystrix [hɪst'rɪks],中文含义是豪猪,因其背上长满棘刺,从而拥有了自我保护的能力。本文所说的Hystrix是Netflix开源的一款容错框架,同样具有自我保护能力。 本文目录 一、Hystrix简介 二、Hystrix的设计原则 三、Hystrix的工作原理 四、Ribbon中使用熔断器 五、Feign中使用熔断器 六、踩到的坑 一、Hystrix简介 Hystrix是由Netflix开源的一个延迟和容错库,用于隔离访问远程系统、服务或者第三方库,防止级联失败,从而提升系统的可用性、容错性与局部应用的弹性,是一个实现了超时机制和断路器模式的工具类库。 ...

CyclicBarrier 是如何做到等待多线程到达一起执行的?

 我们有些场景,是需要使用 多线各一起执行某些操作的,比如进行并发测试,比如进行多线程数据汇总。   自然,我们可以使用 CountDownLatch, CyclicBarrier, 以及多个 Thread.join()。 虽然最终的效果都差不多,但实际却各有千秋。我们此处主要看 CyclicBarrier .      概要: CyclicBarrier 使用 n 个 permit 进行初始化,当n个线程都到达后进行放行,然后进入下一个循环周期。在放行的同时,还可以设置一个执行方法,即相当于回调操作。 ...

致所有.Net者和有梦想的朋友们 - 共勉

  这篇文章很早就想写的了,主要是人到了一定的年纪,就想唠叨一些看法,认不认可不重要,重要的是生活给予你的酸甜苦辣,你都想一吐为快。 这里主要基于多年来自己的一个行业感受和以及生活感想,唠叨一下工作以及生活。...

Python 3.8.0 正式版发布,新特性初体验

北京时间 10 月 15 日,Python 官方发布了 3.8.0 正式版,该版本较 3.7 版本再次带来了多个非常实用的新特性。 赋值表达式 PEP 572: Assignment Expressions 新增一种新语法形式::=,又称为“海象运算符”(为什么叫海象,看看这两个符号像不像颜表情),如果你用过 Go 语言,应该对这个语法非常熟悉。 具体作用我们直接用实例来展示,比如在使用正则匹配时,以往版本中我们会如下写: import re pattern = re.compile('a') ...

使用FastReport报表工具生成报表PDF文档

 在我们开发某个系统的时候,客户总会提出一些特定的报表需求,固定的报表格式符合他们的业务处理需要,也贴合他们的工作场景,因此我们尽可能做出符合他们实际需要的报表,这样我们的系统会得到更好的认同感。本篇随笔介绍如何基于FastReport报表工具,生成报表PDF文档展示医院处方笺的内容。...

从一道ctf看php反序列化漏洞的应用场景

目录 0x00 first 0x01 我打我自己之---序列化问题 0x02 [0CTF 2016] piapiapia 0x00 first 前几天joomla爆出个反序列化漏洞,原因是因为对序列化后的字符进行过滤,导致用户可控字符溢出,从而控制序列化内容,配合对象注入导致RCE。刚好今天刷CTF题时遇到了一个类似的场景,感觉很有意思,故有本文。 0x01 我打我自己之---序列化问题 关于序列化是什么就不再赘述了,这里主要讲几个跟安全相关的几个点。 看一个简单的序列化

Chrome插件开发(一)

 作为一个开发人员,我们在日常工作中肯定会用到 Chrome 浏览器,同时也会用到谷歌的一些插件,比如 Tampermonkey,AdBlock等,在之前的文章本人还用过 Tampermonkey 插件,好使又好玩,传送门 ...

基于STM32F429和HAL库的CAN收发例程

1.CAN协议介绍   CAN 是 Controller Area Network 的缩写(以下称为 CAN),是 ISO 国际标准化的串行通信 协议。在当前的汽车产业中,出于对安全性、舒适性、方便性、低公害、低成本的要求,各种 各样的电子控制系统被开发了出来。由于这些系统之间通信所用的数据类型及对可靠性的要求 不尽相同,由多条总线构成的情况很多,线束的数量也随之增加。为适应“减少线束的数量”、 “通过多个 LAN,进行大量数据的高速通信”的需要, 1986 年德国电气商博世公司开发出面 向汽车的 CAN 通信协议。此后, CAN 通过 ISO11898 及 ISO11519 进行了标准化,现在在欧 ...

.NET Core 3.0中IAsyncEnumerable有什么大不了的?

.NET Core 3.0和C# 8.0最激动人心的特性之一就是IAsyncEnumerable(也就是async流)。但它有什么特别之处呢?我们现在可以用它做哪些以前不可能做到的事? 在本文中,我们将了解IAsyncEnumerable要解决哪些挑战,如何在我们自己的应用程序中实现它,以及为什么IAsyncEnumerable将在很多情况下取代Task>。 也许最好的证明IAsyncEnumerable 有用的方式是看看在没有它的时候所面临的的困难。 ...

MyBatis拦截器自定义分页插件实现

 MyBaits是一个开源的优秀的持久层框架,SQL语句与代码分离,面向配置的编程,良好支持复杂数据映射,动态SQL;MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的持久层框架。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以对配置和原生Map使用简单的 XML 或注解,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。...

从机器学习到深度学习资料整理

 在过去的大半年中,博主一直在进行人工智能相关知识的自学。由于人工智能最近两年的火热,从网上能够找到非常多的资料,包括:MOOC、博客等,博主也花费了很多的时间从众多的资源中找到了一条“从入门到进阶”的学习之路。在此,博主根据自己的学习体验,将所用到的资料汇总在本片博文中。由于博主目前的研究对象主要是图像,因此在材料选择的过程中会重点关注图像方面的知识,但是博主在下文中所推荐的资料中也涵盖了关于文本、语音处理的内容,读者可以根据自己的需要选择性阅读。 一、入门资料   (1)吴恩达《机器学习》(网易云课堂) ...
青岛软件培训

可能你正在寻找一家靠谱的IT培训机构,学习一些专业的软件开发技术,找一份得体的工作。恰巧我们就是一家踏踏实实做教育的IT人才培养机构,我们咨询电话是 0532-85025005,如果你确实对IT感兴趣,我们不妨交流一下。

申请免费试听课程