自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

KHOST的博客

记录自己的学习历程,大部分来自转载,如有侵权联系删除.......

  • 博客(17)
  • 资源 (3)
  • 收藏
  • 关注

原创 Tomcat 请求处理流程

建议结合《谈谈 Tomcat 架构及启动过程[含部署]》一起看!谈谈 Tomcat 架构及启动过程[含部署]http://www.importnew.com/27724.html很多东西在时序图中体现的已经非常清楚了,没有必要再一步一步的作介绍,所以本文以图为主,然后对部分内容加以简单解释。绘制图形使用的工具是 PlantUML + Visual Studio...

2019-09-20 20:30:03 141

原创 Java 实现 QQ 登陆

1. 前言个人网站最近增加了评论功能,为了方便用户不用注册就可以评论,对接了 QQ 和微博这 2 大常用软件的一键登录,总的来说其实都挺简单的,可能会有一点小坑,但不算多,完整记录下来方便后来人快速对接。2. 后台设计在真正开始对接之前,我们先来聊一聊后台的方案设计。既然是对接第三方登录,那就免不了如何将用户信息保存。首先需要明确一点的是,用户在第三方登录成功之后,我们能拿到的仅仅是一...

2019-09-20 20:27:37 326

原创 实现 Java 本地缓存,该从这几点开始

缓存,我相信大家对它一定不陌生,在项目中,缓存肯定是必不可少的。市面上有非常多的缓存工具,比如 Redis、Guava Cache 或者 EHcache。对于这些工具,我想大家肯定都非常熟悉,所以今天我们不聊它们,我们来聊一聊如何实现本地缓存。参考上面几种工具,要实现一个较好的本地缓存,平头哥认为要从以下三个方面开始。1、存储集合的选择实现本地缓存,存储容器肯定是 key/value 形式...

2019-09-20 20:26:05 198 1

原创 预防XSS,这几招管用!

大家应该都听过 XSS (Cross-site scripting) 攻击问题,或多或少会有一些了解,但貌似很少有人将这个问题放在心上。一部分人是存有侥幸心理:“谁会无聊攻击我们的网站呢?”;另一部分人可能是工作职责所在,很少触碰这个话题。希望大家看过这篇文章之后能将问题重视起来,并有自己的解决方案, 目前XSS攻击问题依旧很严峻:Cross-site scripting(XSS)是Web应...

2019-09-20 19:55:19 369

原创 文件上传漏洞详解

文件上传漏洞是指网络攻击者上传了一个可执行的文件到服务器并执行。这里上传的文件可以是木马,病毒,恶意脚本或者WebShell等。网站上传文件并且存储的过程:假如某网站有一个允许用户上传图片的功能,用户上传的图片最终会被存储到 /upload/ 目录下,并且以上传文件时的时间日期命名,上传文件的后缀为后缀。小明这时上传了一个1.jpg的文件,当服务器收到用户上传的数据时,会在 /upload...

2019-09-09 08:53:52 802

原创 TreeSet集合如何保证元素唯一

TreeSet:1.特点TreeSet是用来排序的, 可以指定一个顺序, 对象存入之后会按照指定的顺序排列2.使用方式a.自然顺序(Comparable) TreeSet类的add()方法中会把存入的对象提升为Comparable类型 调用对象的compareTo()方法和集合中的对象比较(当前存入的是谁,谁就会调用compareTo方法) 根据compa...

2019-09-09 08:52:27 734

原创 科普_COM组件劫持原理与实践

0x00 前言在术的道路上,从来都是独善其行,如能结余同行,自当求之不得。玄幻小说的世界结构,放之现代也是同理,望成之所成,念之所念。0x01 什么是COM什么是COM,说白了,就是一堆功能相关的interface,它是某种语言向另一种语言暴露功能的最大单位。COMcomponent(COM组件)是微软公司为了计算机工业的软件生产更加符合人类的行为方式开发的一种新的软件开发技术...

2019-09-08 11:56:32 1115

原创 Mybatis用到哪几种设计模式

虽然我们都知道有26个设计模式,但是大多停留在概念层面,真实开发中很少遇到,Mybatis源码中使用了大量的设计模式,阅读源码并观察设计模式在其中的应用,能够更深入的理解设计模式。Mybatis至少遇到了以下的设计模式的使用: Builder模式: 例如SqlSessionFactoryBuilder、XMLConfigBuilder、XMLMapperBuilder、XMLSt...

2019-09-08 11:55:14 380

原创 科普_DLL劫持原理与实践

0x00 前言DLL劫持算是一个老的漏洞,而且乌云漏洞库中也有很多的案例,只不过案例更多的只是验证一下,并没有教如何利用。至于为什么专门抓起来再学一遍了,唉,内网渗透需要0x01 什么是DLL这里先摘抄一下百度百科的解释:DLL(Dynamic Link Library)文件为动态链接库文件,又称“应用程序拓展”,是软件文件类型。在Windows中,许多应用程序并不是一个完整的可...

2019-09-08 11:54:23 1506

原创 MySQL 详细学习笔记

Windows服务-- 启动MySQL netstartmysql-- 创建Windows服务 sc createmysql binPath= mysqld_bin_path(注意:等号与值之间有空格)连接与断开服务器mysql -h 地址 -P 端口 -u 用户名 -p 密码SHOW PROCESSLIST-- 显示哪些线程正在运行SHOW VARIAB...

2019-09-08 11:50:21 243

原创 说说HttpClient三种Http Basic Authentication认证方式

Http Basic 简介HTTP 提供一个用于权限控制和认证的通用框架。最常用的 HTTP 认证方案是 HTTP Basic authentication。Http Basic 认证是一种用来允许网页浏览器或其他客户端程序在请求时提供用户名和口令形式的身份凭证的一种登录验证方式。优点 基本认证的一个优点是基本上所有流行的网页浏览器都支持基本认证。基本认证很少在可公开访问的互联网网站...

2019-09-08 11:48:35 1775

原创 整站分析

服务器类型(Linux/Windows)服务器信息包括服务器用的操作系统:Linux 还是 Windows 。现在企业网站服务器的操作系统有百分之九十以上用的是Linux操作系统。知道了服务器的操作系统之后,还需要知道操作系统使用的具体版本。因为很多低版本的操作系统都存在已知的漏洞。判断是Linux还是Windows最简单就是通过ping来探测,Windows的TTL值都是一般是...

2019-09-08 11:45:55 713

原创 Intellij IDEA 2019 最新乱码解决必杀技

大家在使用 Intellij IDEA 的时候会经常遇到各种乱码问题,甚是烦扰。栈长也偶尔会用下IDEA,也有一些解决乱码的经验,我给大家总结了以下几类乱码的场景,绝壁能帮你解决 IDEA 各种乱码问题。常见乱码场景及解决方案1、项目源代码中文乱码Settings > Editor > File Encodings > Global Encodings &amp...

2019-09-08 11:30:32 357

原创 这么写参数校验(validator)

很痛苦遇到大量的参数进行校验,在业务中还要抛出异常或者不断的返回异常时的校验信息,在代码中相当冗长, 充满了if-else这种校验代码,今天我们就来学习spring的javax.validation 注解式参数校验.为什么要用validator1.javax.validation的一系列注解可以帮我们完成参数校验,免去繁琐的串行校验不然我们的代码就像下面这样://http:...

2019-09-08 11:18:14 840

原创 SpringBoot 深度调优

项目调优作为一名工程师,项目调优这事,是必须得熟练掌握的事情。在SpringBoot项目中,调优主要通过配置文件和配置JVM的参数的方式进行。在这边有一篇比较好的文章,推荐给大家!https://zhuanlan.zhihu.com/p/31803182一、修改配置文件关于修改配置文件application.properties。SpringBoot项目详细的配置文...

2019-09-07 16:48:05 157

原创 Java发送邮件时,必须要的一个配置!

在线上遇到了一个发送邮件的问题,记录一下。一、先说背景某一天,小王跟我反馈:“麻烦检查一下线上邮件的发送情况,我这查出来发送失败啦”我去DB查了一下近期的邮件发送情况,表示:“看着都挺正常的,线上没有异常的情况。可能邮件在redis里边堆积了,还没消费”select*fromemailorderbyiddesclimit100...

2019-09-07 16:46:43 904

原创 Lambda的坑

背景上周有小伙伴反馈zk连接很慢。整理出zk连接的关键逻辑如下:上面的代码造成第一次调用ClientZkAgent.getInstance的时候,需耗时10s, 这个时间恰好跟semaphore的超时时间相当. 在此期间,整个世界好像停滞了一样。分析在本地重现后,通过jstack获得系统停滞期间的线程栈,发现这个时候zookeeper的EventT...

2019-09-07 16:46:04 203

winSCPPortable交互

十分好用的文件上传下载工具,在与自己的服务器交互的时候可以用这个软件进行文件互传,不管时win下的还是Linux下的都十分方便

2018-07-03

pdf阅读器_福昕

东西好用,体积小巧,使用方便,插座简单,打开快速.........................................................

2018-07-03

FSCapture.rar

可以截图录屏取色,像素尺,体积小巧功能强大携带方便........

2018-07-03

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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