自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

紫羽风的博客

WORK AND STUDY HARD TO BE SYSTEM ARCHITECT

  • 博客(190)
  • 资源 (7)
  • 收藏
  • 关注

原创 关于芝诺悖论的感想

      上周在学微积分时听老师讲到了芝诺悖论,甚是有趣,回来后详细了解了一下,对于悖论中提到的几个问题也是颇感疑惑。      首先,对于什么是悖论,我们要搞清楚。悖论是表面上同一命题或推理中隐含着两个对立的结论,而这两个结论都能自圆其说。产生悖论的根本原因是把传统逻辑形式化、把形式逻辑普适性绝对化,即把形式逻辑当做思维方式。      了解了什么是悖论,接下来我们再分析一下芝诺悖论的...

2018-08-17 07:41:02 2316 1

原创 高效的学习方式

       学习方式有很多种,但不同的学习方式对应的效果是不同的。以前在学校都是上课听老师讲,下课自己看书,殊不知这种学习方式效率是很低的。       根据美国缅因州国家训练实验室的研究成果,学习方式分为主动学习和被动学习,主动学习的效率要远远高于被动学习。1946年,美国学者埃德加戴尔提出了“学习金字塔”理论。以语言学习为例,在初次学习两个星期后,学习金字塔理论告诉我们,不同的学习方法达...

2018-08-17 07:39:29 923 2

原创 带你认识 MySQL 之 MySQL 体系结构

序最近一直在忙项目,各种加班加点,项目上线,渐渐的没有了学习的时间。这不,刚这几天才能抽出点时间,忙里偷闲,正在看一本数据库的书籍,相信很多小伙伴们也都看过 — — 《MySQL 技术内幕:InnoDB 存储引擎》。这本书很详细的讲述了 MySQL 的设计思想,体系结构,存储引擎,索引,事务,以及对性能的调优等。当然,现在我也是刚刚看了一部分,至于现在写这篇文章,主要是为了记录一下我的

2015-07-30 15:25:21 14436 1

原创 HttpClient 发送 HTTP、HTTPS 请求的简单封装

序最近这几周,一直在忙同一个项目,刚开始是了解需求,需求有一定了解之后,就开始调第三方的接口。由于第三方给提供的文档很模糊,在调接口的时候,出了很多问题,一直在沟通协调,具体的无奈就不说了,由于接口的访问协议是通过 HTTP 和 HTTPS 通讯的,因此封装了一个简单的请求工具类,由于时间紧迫,并没有额外的时间对工具类进行优化和扩展,如果后续空出时间的话,我会对该工具类继续进行优化和扩

2015-07-30 12:38:04 87037 8

原创 读配置文件可以保持顺序的 Java Properties 类

序前几天,公司项目中有一个需求是读取配置文件的,而且最好能够保证加载到内存中的顺序能够和配置文件中的顺序一致,但是,如果使用 jdk 中提供的 Properties 类的话,读取配置文件后,加载到内存中的顺序是随机的,不能保证和原文件的顺序一致,因此,jdk 提供的 Properties 是不行的。背景由于有这样的需求,而 Java 的 Properti

2015-07-15 15:42:53 13069 6

原创 URL中加入BASE64加密的字符串引起的问题(java.net.MalformedURLException:Illegal character in URL)

序昨天在做一个 Demo 的时候,由于是调用第三方的接口,采用的是 HTTP 的通信协议,按照文档上的说明,需要把参数进行加密后加入到 URL 中,但是,就是这个看似普普通通的操作,却让我着实费了很大的劲。背景关于 BASE64,我不想说太多,因为这是很基本的一种编码方式,或者说是加密方式。不了解的可以到我前面的博客中去看看,关于加密,前边有一个系列的文

2015-06-29 20:58:59 14109 2

原创 说说什么是重构(三)重构的结果

序说到重构,大家自然而然会想到很多,不管是怎么开始的,也不管是怎么个重构的过程,到最后都会是两种结果,其一是,重构的很成功,冗余代码得到了简化,代码的可读性、可维护性也有了很大的提高。其二嘛,都能想的到,就是重构失败,这个失败的原因可能有很多。背景前两篇文章中,分别说明了重构的开始和重构的过程,至于重构的结果嘛,不用我说,大家也都可以想到有两种情况,成功

2015-06-15 16:34:22 2980 1

原创 说说什么是重构(二)重构的过程

序上一篇文章主要是说了说什么是重构,重构都在什么情况下开始。而这篇文章,则主要是讲讲重构的过程中,需要注意哪些东东。还有就是如何进行重构。背景说到底,重构无非就是为了让代码更加优雅,更加简练,更加高效。重构的结果就是找到一个平衡点,使得项目不仅能够稳定的运行,还能够很容易的被程序员理解,以至维护起来不用那么辛苦。那么,下面就说说重构过程中应该注意哪些事项

2015-05-29 15:11:10 4953 5

原创 说说什么是重构(一)重构的起点

序最近,在看一本叫做《重构:改善既有代码的设计》的书,虽然是电子版的,但是依然不影响看书的积极性。可以说,老早之前就知道什么是重构了,但是总感觉那会的重构就是把整个项目都推翻重来一遍,或许是改变架构,或许是改变设计思路,也或许是业务的改变等等。但是,看完这本书之后,你就不会那么看了。背景其实,这本书早就已经下载下来了,一直没有时间到现在看来也的确是一大损

2015-05-28 15:49:07 4961 2

原创 JSTL 1.2 - The absolute uri: http://java.sun.com/jstl/core cannot be resolved

序上周五,公司临时决定把一个老项目要部署到外边。事前我也没有接到通知,下午要下班的时候,突然跟我说要部署项目,而且那边很着急用,没办法,只能加班等待部署完成了。背景简单的说一下项目的背景。之所以说是老项目,是因为这个项目是从别的公司接过来的,项目的架构采用的是 JSTL + SpringMVC + Spring + MyBatis ,前端页面用的是 JS

2015-05-25 15:11:40 10403 3

原创 MyBatis 多表联合查询及优化

序这篇文章我打算来简单的谈谈 mybatis 的多表联合查询。起初是觉得挺简单的,没必要拿出来写,毕竟 mybatis 这东西现在是个开发的都会用,而且网上的文章也是一搜罗一大堆,根本就用不着我来重复。但是吧,就我前几天在做一个多表联合查询的时候,竟然出了很多意想不到的问题,而且这些问题的出现,并不是对 mybatis 不了解,而是在用的过程中会或多或少的忽略一些东西,导致提示各种错误

2015-05-25 11:50:27 162519 16

原创 转战前端 jQuery

序我想,在看这篇文章之前,如果只看题目的话,肯定会以为我已经从服务端开发(Java 开发)转战到前端开发,说白了就是做前端,比如,设计布局什么的、JavaScript 什么的。首先申明一点,并不是这样的。那到底是什么样呢,请继续往下看。背景其实,对于我们搞开发的来说,没有严格的前端后端之分,做后端的工程师,前端的技术也是或多或少的知道一些。毕竟有的公司是

2015-04-28 17:22:32 3398 3

原创 Java 加解密技术系列之 总结

序上一篇文章中简单的介绍了第二种非对称加密算法 — — DH,这种算法也经常被叫做密钥交换协议,它主要是针对密钥的保护。同时,由于水平的限制,打算这个系列就到此为止了,这篇文章就算是一个总结吧,回顾一下这几个月来都写了些什么。背景其实,在开始写这个系列之前,我对于 Java 的加解密也并不是那么了解。之所以要写这些文章,还主要是由于工作的原因。记得几个月

2015-04-27 11:52:18 4104 7

原创 Java 加解密技术系列之 DH

序上一篇文章中简单的介绍了一种非对称加密算法 — — RSA,今天这篇文章,继续介绍另一种非对称加密算法 — — DH。当然,可能有很多人对这种加密算法并不是很熟悉,不过没关系,希望今天这篇文章能帮助你熟悉他。概念DH,全称为“Diffie-Hellman”,他是一种确保共享KEY安全穿越不安全网络的方法,也就是常说的密钥一致协议。由公开密钥密码体制的奠

2015-04-24 09:56:47 8370 2

原创 Java 加解密技术系列之 RSA

序距离上一次写博客感觉已经很长时间了,先吐槽一下,这个月以来,公司一直在加班,又是发版、上线,又是新项目太紧,具体的就不多说了,想听我吐槽的小伙伴,可以私信给我(*^__^*) 。上一篇文章,已经把对称加密的算法讲完了。从今天开始,要说说非对称加密了。因为,非对称加密真的是太重要了,我们的日常生活中,都离不开非对称加密。概念在说 RSA 之前,首先聊聊什么是非对

2015-04-23 11:06:34 13511 5

原创 Java 加解密技术系列之 PBE

序前边的几篇文章,已经讲了几个对称加密的算法了,今天这篇文章再介绍最后一种对称加密算法 — — PBE,这种加密算法,对我的认知来说,并没有 DES、3DES、AES 那么流行,也不尽然,其实是我之前并没有这方面的需求,当然接触他的机会也就很少了,因此,可想而知,没听过显然在正常不过了。概念PBE,全称为“Password Base Encryption

2015-03-26 15:46:26 14474 2

原创 Java 加解密技术系列之 AES

序这篇文章继续介绍对称加密算法,至于今天的主角,不用说,也是个厉害的角色 — — AES。AES 的出现,就是为了来替代原先的 DES 标准。现在来说,AES 的用途还是非常广泛的。概念AES,全称为“Advanced Encryption Standard”,中文名“高级加密标准”,在密码学中又称 Rijndael 加密法,是美国联邦政府采用的一种区块

2015-03-20 17:11:11 5788 2

原创 Java 加解密技术系列之 3DES

序上一篇文章讲的是对称加密算法 — — DES,这篇文章打算在 DES 的基础上,继续多讲一点,也就是 3 重 DES — — Triple DES。背景至于 3DES 为什么会出现呢?其实,这个不难想到。由于 DES 是一种非常简便的加密算法,但是密钥长度比较短,计算量比较小,相对来说,比较容易被破解。因此,在 DES 的基础上,使用三重数据加密算法,

2015-03-19 14:23:19 8949 2

原创 Java 加解密技术系列之 DES

序前几篇文章讲的都是单向加密算法,其中涉及到了 BASE64、MD5、SHA、HMAC 等几个比较常见的加解密算法。这篇文章,以及后面几篇,打算介绍几个对称加密算法,比如:DES、3DES(TripleDES)、AES 等。那么,这篇文章主要是对 DES 大概讲一下。背景在讨论 DES 之前,首先了解一下什么是对称加密算法吧。对于对称加密算法,他应用的时

2015-03-19 12:04:53 25081 2

原创 Java 加解密技术系列之 HMAC

序上一篇文章中简单的介绍了第二种单向加密算法 — — SHA,同时也给出了 SHA-1 的 Java 代码。有这方面需求的童鞋可以去参考一下。今天这篇文章将要介绍第三种单向加密算法 — — HMAC,其实,这种加密算法并不是那么常用,最起码,在我写系列博客之前,我是没有听说过它的。当然,这并不是说 HMAC 不出名,肯定是我孤落寡闻了。背景之所以在单向加

2015-02-27 15:51:10 36756 7

原创 Java 加解密技术系列之 SHA

序上一篇文章中介绍了基本的单向加密算法 — — MD5,也大致的说了说它实现的原理。这篇文章继续之前提到的单向加密,主要讲的是 SHA,同 MD5 一样,SHA 同样也是一个系列,它包括 SHA-1,SHA-224,SHA-256,SHA-384,和 SHA-512 等几种算法。其中,SHA-1,SHA-224 和 SHA-256 适用于长度不超过 2^64 二进制位的消息。SHA-3

2015-02-27 11:08:54 38643 4

原创 Java 加解密技术系列之 MD5

序上一篇文章中,介绍了最基础的编码方式 — — BASE64,也简单的提了一下编码的原理。这篇文章继续加解密的系列,当然也是介绍比较基础的加密方式 — — MD5,MD5 属于单向加密算法,是不可逆的加密方式,也就是说,采用了 MD5 加密方式加密之后,就不能对加密的结果进行解密,得到原有的字符串,这是不可以的。背景相信在我们的生活中,MD5 用到的还是

2015-02-26 15:43:42 25999 10

原创 Java 加解密技术系列之 BASE64

序这段时间,工作中用到了 Java 的加解密技术,本着学习的态度,打算从这篇文章开始,详细的研究一番 Java 在加解密技术上有什么与众不同,同时,也想为大家或者自己留下点什么,一块分享这其中的“精髓”。需要说明的是,这个系列可能要持续一段时间,因为,加解密的相关技术太多太多了,要搞明白这些着实不是一件容易的事。背景说到这个加解密技术,之前一直没有机会研

2015-02-26 10:02:16 5362 8

原创 与 .NET 联调的那些事

序这篇文章本来是想要写写最近用到的技术,但是回想起来,这几天主要的工作还是与 PC 端的联调,已经修改项目中的 bug。因此,就决定先不写技术方面的东西了。把我这几天与 .NET 联调的那些事说说吧,感觉也挺有意思的。背景在问题讨论之前,首先要把背景介绍清楚,这才是最重要的。PC 端的登录、验证都是走的服务器的 WebService,当然这个是很常见的,

2015-01-31 13:59:07 1713 2

原创 Shiro 报错 No SecurityManager accessible(汇总)

序在写这篇文章之前,想了好长时间的题目该写什么,最后考虑到写这篇文章的目的,也就没有再起什么花哨的主题,而是找了这么一个简单粗暴有效的题目,方便有同样问题的童鞋们搜索。背景一如往昔,在谈这个问题之前,首先说说问题的背景所在。这个问题是前几天遇到的事,最近设计部给提了不少需求,于是一直在忙着实现这些需求,前几天说要发版,让提供一个新包供测试部进行全面的测试

2015-01-30 10:56:51 33201 8

原创 Java 用户资料完整度的前端显示(实现)

序上一篇文章已经说了说大概的思路,这一篇文章主要就是对于第一种思路的实现,进行详细的说明。关于用户资料完整度的请求流程,这里就不再多说了,如果不了解的可以去看上一篇文章《Java 用户资料完整度的前端显示(思路)》。正文前边也说了,我这里采用的是第一种方案,前端使用 Bootstrap 的进度条组件显示百分比,后台读取权重并计算信息完整度,并将计算的

2015-01-27 11:29:51 6549 6

原创 Java 用户资料完整度的前端显示(思路)

序经常上网的人都会很熟悉今天的这个主题,怎么说呢,用户资料,是在我们注册一个网站的时候,需要注册人填写的一些个人信息,这些个人信息会经过加密处理后存储到不同的服务器。那么完整度是什么呢?显而易见,完整度就是网站列出的条目,以及注册人填写的资料的条目的对比度,用户填写了几条,还有几条没有填写(这里只是有效数据)。可以通过这个完整度让用户一目了然,完善自己的用户资料。背

2015-01-26 16:41:03 5663 3

原创 Java 生成数字证书系列(四)生成数字证书(续)

序上一篇文章讲到了 Java 生成数字证书,使用的是第三方的组件 BC 。这篇文章也是介绍生成数字证书的,只不过与上一篇不同的是,这篇采用的是 KeyStore 的存储方式,导出的证书文件格式为 pfx ,这种格式的证书不仅包含有公钥,还包含有私钥。从证书中就可以读取到私钥。正文废话不多说,直接上内容。与上一篇相同,这里也是使用的 Bou

2014-12-31 13:52:02 9888 18

原创 Java 生成数字证书系列(三)生成数字证书

序前两篇把基本的概念和构成都大致的说了一下,今天这篇文章,主要是讲一下,如何使用 Java 代码生成 CA 证书,以及在生成证书的时候,需要设置的一些属性。正文废话不多说,直接上内容。这里使用的是 Java 的 api ,以及第三方的一个组件 —— BC,(Bouncy Castle)。稍微介绍一下 BC,Bouncy Castle 是一种用

2014-12-30 15:10:57 24512 17

原创 Java 生成数字证书系列(二)剖析数字证书

序上一篇介绍了一下 CA 证书的几个相关概念,这几个概念还是很重要的,目的在于了解数字证书,以及其的工作原理。这篇文章主要是对 CA 证书进行剖析,讲一下证书的基本构成,这对于生成正确的、可以访问的证书是必不可少的。构成废话不多说,直接上内容。先看一下证书到底是什么,在 Windows 下查看证书时(这里以 cer 为例),界面是这样的。

2014-12-29 15:34:45 4567 4

原创 Java 生成数字证书系列(一)了解数字证书

序最近的工作一直围绕着数字证书,对于 CA 证书的了解还是多少有一点的,只不过没有那么深入,现在要用到这方面的东西,显然还是有点欠缺,那么从这篇开始,我就将我自己的学习、工作历程跟大家一同分享,希望对想了解 CA 证书的童鞋有所帮助吧。很显然,这篇文章大部分都是理论介绍,后续会有相关的一些实例。不喜欢看理论的童鞋,可以直接略过此章,直接看后续的文章。概要

2014-12-29 11:03:48 7125 5

原创 WEB安全实战(七)会话标识未更新

序上一篇文章中,我们讨论了关于“浏览器记住用户名和密码”的问题,至于这篇文章嘛,我想谈谈关于“会话标识”的漏洞。而且,这篇文章也是“Web安全实战”系列的最后一篇。为什么要拿到最后来说呢,其实,是之前一直困扰我的问题,这个问题曾一顿让我抓狂,n(n=3~5)多天一直没有解决,当时也是搜遍了各大网站,各大论坛,均未找到合适的解决方案。其中的过程就不再废话了,转到正题。

2014-12-23 17:05:52 17006 9

原创 WEB安全实战(六)防止浏览器记住用户名和密码

序写文章之前,先向大家认个错,其实这篇文章以及下一篇将要写的文章都应该是在上个月完成的。但是吧,由于一些原因,没有来的及写完。因此,现在把上个月欠下的债先补上。废话不多说,直接上内容。问题做过 Web 开发的童鞋们都知道,打开网站之后,一般都是需要输入用户名、密码的。然而,就是这简单的操作,在提交的时候,就可能会暴露一些问题,当然,这些问题是会被安全漏洞

2014-12-22 17:23:45 16058 8

原创 WEB安全实战(五)XSS 攻击的另外一种解决方案(推荐)

序说到 XSS 攻击,前边已经有两篇文章在讲这个事了,这次又拿出来说,主要是针对最近工作中的一些新的问题。那么之前是怎么解决这个问题的呢?为什么又要换解决方案?下面就详细的跟大家分享一下。旧方案公司的测试团队发现这个问题之后,就要求尽快的解决,在网上查了很多相关的资料,也翻阅了基本安全方面的书,基于 XSS 的攻击原理,自己写了一个 Filter,并在该

2014-11-20 15:49:57 25589 16

原创 你不了解的 String 类

序前几篇文章一直在研究 WEB 安全的问题,而且最近工作中也一直在解决这些安全漏洞,当然,后续的博客中还会就这些暴露出来的问题谈谈我的解决方案,只不过,在这篇博客中,我想谈点别的问题,而且对于我们开发者来说,是一个老生常谈的问题。简介关于 String 类,我想大家一定不陌生,毕竟每天都打交道,早已经滚瓜烂熟了。我今天要说的不是整个 String 类,而是其中的一个方法

2014-11-20 11:20:21 1915 3

原创 WEB安全实战(四)关于 Cookie

前言这几天中,一直再跟漏洞打交道,而在这些漏洞中,出现的最多的就是 Cookie 和 Session 了。这篇文章就简单的介绍一些 Cookie 中最常用的四个属性。也算是为后续的文章做一个铺垫吧。废话不多说,直接进入正题。属性Path(路径)Path 是指定与 Cookie 关联的 Web 页。它的值可以是一个目录,

2014-10-31 21:38:40 3180 2

原创 WEB安全实战(三)XSS 攻击的防御

前言上篇文章中提到了 XSS 攻击,而且,也从几个方面介绍了 XSS 攻击带来的严重影响。那么,这篇文章中,主要是针对 XSS 攻击做一个基本的防御,看看可以通过几种方式来修复这个特别常见的安全漏洞。由于公司用的是 SpringMVC,因此,这次就主要基于 SpringMVC 来解决这些漏洞。当然,其实这些解决方案都是大同小异,对于什么环境来说根本无所谓。了解了原理,什么环

2014-10-31 21:04:59 21593 10

原创 WEB安全实战(二)带你认识 XSS 攻击

前言上一篇文章写了关于 WEB 安全方面的实战,主要是解决 SQL 盲注的安全漏洞。这篇文章本来是要写一篇关于如何防治 XSS 攻击的,但是想来想去,还是决定先从理论上认识一下 XSS 吧。下一篇文章,再深入研究如何防治的问题。概念到底什么是 XSS 攻击呢?XSS 攻击,全称是“跨站点脚本攻击”(Cross Site Scripting),之所以缩写为

2014-10-30 15:56:59 5830 4

原创 WEB安全实战(一)SQL盲注

前言好长时间没有写过东西了,不是不想写,只不过是一直静不下心来写点东西。当然,拖了这么长的时间,也总该写点什么的。最近刚刚上手安全方面的东西,作为一个菜鸟,也本着学习的目的,就谈谈最近接触到的安全方面的问题吧。背景既然提到了背景,那我们就简单的带一下,最近互联网上爆出了各种惊人的事件、各种门、各种照的,归根结底,都是网络安全出的问题,有的是网络被别人监控

2014-10-30 10:29:05 35182 9

原创 Java实现二叉树的遍历(递归和非递归)

一直以来,自己在数据结构这一块下的

2014-09-30 23:22:34 1381 2

xssProject所需jar包

防止XSS攻击的开源Java组件

2014-11-20

JUnit 4 Demo

JUnit 4 Demo

2014-07-23

JUnit4.8.1

JUnit4.8.1 jar 包

2014-07-23

JUnit3.8.1

JUnit3.8.1 jar包

2014-07-23

SWFObject 插件

SWFObject 插件 用于 html 引入 flash 插件

2014-06-25

Lodop组件包

提供web打印、保存的浏览器插件和Demo

2014-06-11

freemarker.jar

FreeMarker的jar包

2014-04-28

空空如也

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

TA关注的人

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