自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

CuteKe的专栏

学无止境,饱读万卷书

  • 博客(46)
  • 资源 (24)
  • 问答 (1)
  • 收藏
  • 关注

原创 为何选择iText?java PDF开源库选择与iText发展历史

    转眼间,我写iText7系列已经有一年多了,还记得最开始的时候是因为兴趣才翻译iText,不过随着慢慢翻译文章才发现iText的强大之处,最近也是调研了整个java PDF开源库的生态圈,我给大家详细讲一下java PDF开源库的选择还有我选择iText的理由。1. 源起PDF1.1 PDF定义   

2018-05-04 16:26:31 34260 18

原创 iText7系列github地址及交流QQ群

iText7系列介绍    之前一直在翻译iText7相关的资料,人气也还行,这几天也把项目源码上传到了github上面,供大家下载学习。    iText7官网上有三本电子书的: 《iText 7 Jump-Sta

2018-04-11 16:32:48 2230 4

原创 iText如何提取PDF中的数据——1. 总览

iText官方给出了相关的整体解决思路,在这我给大家翻译并总结一下。在这里主要是抛砖引玉,后续会结合具体例子来解决我们实际过程中的出现的问题。

2022-12-25 15:09:03 3483 3

原创 Spring Boot数据库版本控制工具技术方案

1. 数据库版本困境在大家的日常开发过程中,肯定使用过代码版本控制工具,并且使用得十分熟练,但是对于数据库,有没有进行版本控制呢?我猜大部分企业和开发者都没有使用到数据库版本工具,如果没有使用,可能会遇到如下问题:当前环境下的数据库处于什么状态?多环境下数据库版本是否保持一致呢?例如刚刚修复线上的数据库变更是否应用到了测试和开发环境?我们编写的数据库语句是否已经执行了呢?在新的环境下,怎么快速设置一个新的数据库实例呢?特定软件代码版本与数据库 Schema 的兼容问题怎么解决?其实现在的数

2021-03-18 19:36:27 1794 2

原创 Spring boot Mybatis-Plus数据库单测实战(三种方式)

  单元测试长久以来是热门话题,本文不会讨论需不需要写单测,可以看看参考资料1,我个人认为写好单测应该是每个优秀开发者必备的技能,关于写单测的好处在这里我就不展开讨论了,快速进入本文着重讨论的话题,如何写好数据库单测。  为什么要写数据库单测? 相信大家是不是有这样类似的经历,在写完复杂的sql语句后,自信满满的提测,发现很大一部分Bug都是因为sql语句出现问题了,要么少写逗号,要么漏了字段,悔不当初哇,为啥写完不多测测呢!  没关系!这就教你如何写数据库单测,让你轻松告别数据库相关bug。1. 数

2020-10-26 14:11:48 9872 14

原创 Mybatis分页查询及日期比较

1. 背景  在我们进行Mybatis的开发的时候,会遇到数据量大和日期的问题,本文关注以下问题:怎么进行数据库分页查询,避免结果过于庞大,运行速度慢怎么进行日期比较,从不同精度比较两个日期的大小2. 样例数据库设计  假设存在这样一张user用户表,他的定义(MySql)如下:idnamebirthdaybigint(20)varchar(64)date...

2019-09-29 17:10:53 2874 1

原创 单元测试mockito参数匹配使用场景和注意项

  最近一直刚开始接触单元测试,也用了mockito框架,刚开始使用的话会遇到一些疑问,也会存在一些误区,所以在此记录一下使用mockito之参数匹配的问题。1.测试类场景  首先,我们来看一下我们要测试的类,主要分为Person人员信息类,它的里面有age属性;还有一个Salary工资类,里面有Pseron属性,getSalary是根据人员的getData的返回值进行盘代孕来返回工资的数值有...

2019-08-07 18:53:04 6081

原创 CuteKe网站开发与安全5——真实IP地址与一次惨痛的经历

    本章讲述如何用java来获取真实IP地址及相关安全,然后讲述MongoDB配置不当引起的安全问题。 1. 获取真实IP地址1.1 何时获取IP地址    我的做法是和获取url的时候一样,在每个Controller执行之前来获取请求的IP地址,同样的,我们也会获取每个请求对

2018-06-03 19:02:49 861

原创 CuteKe网站开发与安全4——CDN优化与Spring Security

    之前CuteKe网站刚刚上线的时候访问我的网站需要10秒左右,当然这是让人受不了的,所以我先改变了每个页面不必要的资源文件(header和footer的Fragment中不必要的文件不需要),发现节约了5秒左右,但是还是不行,还可以进行优化,我们可以进行CDN优化,本章我们会介绍CDN的概念与Spring Security里面是怎么支持缓存的。...

2018-06-03 19:00:49 567

原创 CuteKe网站开发与安全3——HOST头攻击与防御

  承接上文,记录的url不一致极大可能就是Host头攻击,所以本章内容围绕Host头攻击展开,讲述Host头攻击的原理、实践、和防御,让大家能对Host头攻击有足够的认识。1. Host头原理1.1 HTTP头——Host  众所周知HTTP报文由报文首部、空行(CR+LF)和报文主体组成,在报文首部中有一个字段,在具体是请求报文的首部字段:Host。   首部字段Host...

2018-06-03 18:57:55 2281

原创 CuteKe网站开发与安全2——记录URL与URL不符合

    我的CuteKe网站也上线一段时间了,之前也是做了访问日志,发现日志还是不利于观察,还是把它访问记录数据库化了。但是这几天却发现在记录URL的时候发现了一个问题。1. 记录URL    我们先来看看如何记录URL与IP地

2018-05-07 17:13:23 430

原创 CuteKe网站开发与安全1——CuteKe网站架构与更新记录

    我的CuteKe网站已经上线一段时间了,访问也慢慢上去了,我也决定开新坑啦,这个系列我会把在开发这个网站的所有遇到的问题和困难记录下,每一章的标题和内容围绕两个主题来,自己本身也在读信息安全的研究生,所以开发和安全都会兼顾,希望能帮助大家能安全开发网站。 再次强调

2018-05-07 17:09:34 583

原创 我的个人网站CuteKe

    从大四在实习的时候就一直有做个人网站的想法,当时接触的是structs2,多亏两位师兄的耐心指导,我算基本上入了java web这个坑,研一的话事情比较繁忙,不过始终没有放弃这个想法,最后总算在今年开学后的一段时间完成了这个个人网站。下面讲一下这个网站的情况,如果不是对网站开发感兴趣的可以直接往后看~,我的个人网站地址是这里。网站开发情况...

2018-04-01 14:55:07 1758

原创 模糊测试工具Sulley开发指南(3)——整体介绍

    我们开始来讲一些Sulley里面的整体介绍,方便我们能系统地了解Sulley的架构,了解Fuzzing的思路,最后能生成py文件来具体运行fuzzing。这章主要是整体印象,下一章开始会讲具体的模块以及如何写代码。1.Sulley现在的情况    先说说现在的开发者情况,在githu

2018-03-30 15:54:37 6320

原创 window安全小知识1——autorun.inf相关知识

1.autorun.inf的作用    autorun.inf是我们电脑使用中比较常见的文件之一 ,其作用是允许在双击磁盘时自动运行指定的某个文件,或者改变磁盘的图标等。2.autorun.inf的例子和参数    最简单的例子如下:[autorun]ICON=CFCA.icoOPEN=autorun.exe    其中ICON是磁盘USB/DVD-CD显示的图标,

2018-01-14 18:44:04 1937

原创 itext7学习笔记杂谈系列3——在绝对位置添加文本

之前也是有人问过我如何使用itext7在pdf的绝对位置中插入文本呢?这几天我也是查阅了相关资料,把相关应用场景和解决方法给大家说一说。应用场景其实在pdf中的绝对位置中插入文本的应用场景还是很多的,最典型的应用场景如下: 合同模板采用PDF合同里面大部分文字已经写好,少部分内容由用户填写,例如姓名,身份证号等要填入的内容的绝对位置已经确定,这时候我们网页端或者其他终端接收用户填入的

2018-01-02 17:10:47 12257 10

原创 C++ 动态对象数组的知识总结

默认构造函数    首先,我们来看一下是什么是默认构造函数,如下面一段代码:#include<iostream>#include<math.h>using namespace std;class Point{ double x, y;public: void print(); Point(double a=0,double b=1){x=a;y=b;} //默认构

2017-12-12 19:03:14 23520 9

原创 C++中的随机数知识总结

C++中随机数的使用     计算机不会产生绝对随机的随机数,计算机只能产生“伪随机数”。其实绝对随机的随机数只是一种理想的随机数,即使计算机怎样发展,它也不会产生一串绝对随机的随机数。计算机只能生成相对的随机数,即伪随机数,拥有一定规律种子的概念    随机种子(unsigned类型)是用来产生随机数的一个数,在计算机中,这样的一个“随机种子”是一个无符号整形数。那么随机种子是从哪里获得的呢?大部

2017-11-14 11:07:50 643

原创 itext7学习笔记杂谈系列2——在itext7中添加中文(其他字体)和字体相关事

在本章,我们会讨论如何在itext7中显示中文,或者其他CJK(Chinese/Japan/Koera)等非ASCII码字符遇到的问题,解读font-asian.jar这个包的作用.字体编码如果我们想真正了解字体如何在计算机存储的话,字体文件是些啥的话,还有编码问题,可以参考中文编码 TTF字库之间的关系 顺带一提,查看本机的默认代码页(也就是ANSI),在cmd输入

2017-11-07 19:21:01 30001 32

原创 模糊测试工具Sulley开发指南(2)——与Peach比较

基于已知漏洞的ftp服务器的漏洞挖掘&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;我们的测试对象是EasyFTP 1.7.0.11,已知漏洞如下(github): 命令 个数 CWD 1 LIST 1 … 11Peach简介&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;MichaelW Eddi

2017-09-28 12:54:55 3740 13

原创 itext7学习笔记杂谈系列1——添加新的页面和新的AcroForm

这个系列主要记录一些itext7里面出现的一些问题,以及网友问的一些问题,主要是自己的真知灼见,如果有错误希望大家能指出,感谢大家一如既往的支持。Doucment与PdfDocument之前在itext7学习笔记——第3章提到过:Document是PdfDocument的高级别表示,在官方api文档中,描述了以下主要区别(我整理的): - PdfDocument:直接跟pdf文档有关系,有

2017-09-21 16:54:56 9764 11

原创 模糊测试工具Sulley开发指南(1)——安装Sulley(多图,超详细)

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;本教程是针对的是windows上面的安装,至于其他系统的安装有时间的话会贴出来,本教程翻译自OpenRCE/Sulley-GitHub-Wiki官网教程,但是里面有一些错误我会更正指出。值得一提是,我是在win10 64位系统下面完成本次安装和运行(64位系统运行安装32位程序是可以的,反之却不行的哟),所以本教程对任何系统都适用。 &amp;nbsp;&amp;...

2017-07-25 16:51:44 9814 48

原创 pcapy安装教程(多图,超详细)

前段时间一直在研究OpenRCE的sulley框架,在艰难安装过程也顺便安装了pcapy,突然发现网上对pcapy的解释说明不是很全,所以在此整理和详细说明一下pcapy的安装过程,希望能帮助大家!测试环境是win 10 64位系统安装pcapy所需的工具Python编译器,Versions 2.1.3 或以上,在这里我们使用的2.7.9一个C++的编译器。GCC G++ 2.95,Micros

2017-07-25 11:26:41 8229 4

原创 pydbg安装指南(多图,超详细)

前段时间一直在研究OpenRCE的sulley框架,在艰难安装过程也顺便安装了OpenRCE的Pydbg,突然发现网上对Pydbg的解释说明不是很全,所以在此整理和详细说明一下Pydbg的安装过程,希望能帮助大家!测试环境是win10 64系统。Pydbg的依赖Step 1 安装GCC编译器 就默认大家都安装好了python了哈,在这里我用的是python2.7.9,因为在后续的安装过程中出现的

2017-07-24 20:41:56 7771 13

原创 AES加解密int数组——Java C++实现

问题描述加密 输入:原始int数组,例如[1,2,3,4] 输出:加密后int数组,例如[2323,323,333,555]解密 输入:加密后的int数组,例如[2323,323,333,555] 输出:解密后的int数组,例如[1,2,3,4]一些解决方式[OK] RSA算法对数组里面每个数字进行加解密[NO] AES先把每个数字转换成字符串,然后进行加密和解密。这种方

2017-07-13 18:37:46 1182

原创 Trie树编程实现

Trie树 字典树,前缀树,单词查找树 应用:1)字符串检索 2)字符串最长公共前缀 3)英文单词的排序 4)作为其他数据结构和算法的辅助结构结构图    下面我们有and,as,at,cn,com这些关键词,那么如何构建trie树呢?下图是Trie的一种 节点存储内容:只存是不是单词的标识,用于对已知字符串匹配 存储单个字母,用来查询或获取单词特性根节点不包含字符,除根节

2016-08-12 17:48:06 1239 3

原创 水库抽样算法精简总结

水库抽样算法问题描述 输入:一组数据,大小未知 输出:这组数据的K个均匀抽泣 要求:仅扫描一次 总体要求:从N个元素中随机的抽取k个元素,其中N无法确定,保证每个元素抽到的概率相同解决方案 一些符号:为要抽样的个数,N为总体个数位置,n为当前遍历的元素的位置。pool为k大小的数组,用来保存抽到的样本 n<=k,把当前值放入pool中,构成初步样本

2016-08-11 11:25:17 7517

原创 Teigha .dwg文件开发——数据库结构

数据库是各种图形和非图形对象的存储库。从程序上讲,数据库是一个拥有很多对象的容器,同时又有很多容器组成。每个容器包含和操作特定的对象。数据库提供两种机制来存储与操作容器里面的对象。     1)已经命名好的预定义表:预定义表格是一组固定格式的容器序列,这些容器存储特定的类型并有特定操作的对象。这种方式需要严格的格式规范,并且使用于每一对预定义的类组:。记录对象存储存储一个特定类的定义和

2016-07-28 17:22:26 7618

原创 Teigha .dwg文件开发——基础概念

1.一个工程制图文件,也就是drawing(图纸),其实是一个数据库,这个数据库记录图形和非图形对象。一共有3种不同类型的对象:1.实体 2. 容器(管理和存储对象) 3.其余对象(包括特殊的没有布局之类的对象)其中容器主要包括下列:1.系统符号表,系统中有九张这样的表,不能改变表格的数量,但是你可以向表格里面添加内容 2.一个字典(Dictionaries),存储各种CAD对象的容器,你可以

2016-07-28 17:18:53 4432 2

原创 Teigha .dwg文件开发——从零开始

最近要求做cad文件的第三方开发,尝试申请了Teigha的免费试用版(要注册账号申请,官网上有教程,不懂得可以咨询我,在下方评论也可以),以下是我总结的基础内容1.一个工程制图文件,也就是drawing(图纸),其实是一个数据库,这个数据库记录图形和非图形对象。一共有3种不同类型的对象:1.实体 2. 容器(管理和存储对象) 3.其余对象(包括特殊的没有布局之类的对象)其中容器主要

2016-07-21 15:42:28 17316 35

原创 有关auocad编程和CadLib4.0的相关总结

近期做的项目要对autodesk公司的autocad软件生成的.dwg和.dxf文件进行操作,所以在网上查阅了相关知识,以下是我总结的:   1.autocad有二次开发编程的,如ObjectArx(天正建筑软件就是基于这个开发的),但是这是基于软件的开发,脱离autocad软件是不能单独运行的。   2.autocad有自己的第三方开发库——RealDWG(目前只适用于windo

2016-07-12 17:56:08 7796 3

原创 log4j2设置日志文件输出到web目录下,亲测可用

请确认log4j-api:2.x,log4j-core:2.x,log4j-web:2.x都有并输出到web目录下一、不同Servlet版本     1)在web.xm中查看自己的Servlet版本:(通过web-app version元素来看)      web.xml v2.3:      web.xml v2.4: <web-appid="W

2016-06-02 11:07:50 19523

原创 离散FFT和图像二维FFT变换的java实现

1.离散FFT简单介绍    FFT是一种DFT的高效算法,称为快速傅立叶变换(fast Fourier transform)。其原理比较复杂,我们可以不关其具体细节,值得注意的是:二维FFT可以对图像进行变换,先对每一行进行FFT变换,再对变换后的每一列进行FFT变换,二维FFT变换的公式如下:2.复数工具类    FFT和二维FFT都需要复数的加减乘除,在这里给

2016-05-20 17:19:24 3278

原创 java复数矩阵运算库——Jampack

Jampack下载链接在下面,免费的哈    我在网上查找java的矩阵运算库,发现JAMA现在这么好用的库竟然不支持复数矩阵的运算,又在网上找到了简易的矩阵运算库——Jampack(Java Matrix Package),官网:http://www.cs.cmu.edu/~motionplanning/papers/sbp_papers/kalman/AboutJampack.html

2016-04-19 17:16:17 2361 3

原创 WEB小结(3)——BookStrap中标签页中载入别的网页

BookStrap是github上开源的前段设计框架,比较适合初学者使用,地址:http://www.bootcss.com/,其中有中文文档可以参考。BookStrap中标签页的形式如下: 1 2 3 4 1的内容 2的内容 的内容 4的内容     其中上半部分为各个标签页的名称,下半部分为各

2016-02-02 18:03:11 1567

原创 WEB小结(2)——一次提交多个表单

我们在开发的时候常常需要按一个按钮然后提交多个表单,在这里我在body中设置两个表单,在按表单1的提交按钮时一起提交表单1和表单2:     test.html: 用户登录界面 function submitit(){ //第一个表

2016-02-02 17:38:58 613 1

原创 WEB小结(1)——使用js设置ip地址对话框

使用js设置ip地址对话框,关键在于ip地址正则表达式,参考:http://weidongke123-126-com.iteye.com/blog/1976214test.html: 用户登录界面 function testIP(x){ //当文本输入框失去焦点时,检查文本框内容是否满足正则表达式 var ipAddr

2016-02-02 17:31:50 1857

原创 eclipse Maven配置struts2详解——总结网上教程

已安装环境:1.eclipse2.Tomcat(可以自己下载或者通过eclipse下载)配置步骤:1)确定自己的eclipse版本,并下载相关插件      注意自己的eclipse版本哦,只有J2EE的版本才能创建或者转换成dynamic web project项目,如果不是也没关系,在eclipse里面安装一下就行啦,下面是网上的安装插件的教程:

2016-01-16 16:33:49 1450 1

原创 Oracle允许别人远程连接本机的数据库

在oracle开发的时候会让不是本机的机器远程访问本机的数据库,这是要配置一下LISTENER,不然对方是无法连接到自己的数据库上的、解决方法:     1.  开始——所有程序——Oracle(版本号)——Net Manager,如图所示:         2.  Oracle Net配置——本地——监听程序——LISTENER, 添加地址,如图所示:   

2016-01-14 17:31:13 2952

原创 Oracle 12c里面select view权限没有的解决方法

最近刚刚开始使用oracle,下得最新版本的12c,创建了一个普通用户后,连接那个用户,当查当前连接数的时候使用如下语句:select count(*) from v$process;发现用户没有相关权限,并在网上查了一下发现要赋予select view权限,但是查看了一下所有的用户权限,发现里面没有select view权限。解决方法如下:      grant

2015-12-19 16:10:59 1589

iText7高级教程之html2pdf教程源码

iText7高级教程之html2pdf教程源码,从gitthub上面下载,https://github.com/itext/i7js-examples,方便大家结合博文进行练习。

2022-10-20

iText高级教程系列源码

本人iText高级教程系列所有的源码,方便大家结合博文进行练习。

2022-05-09

iText7高级教程之构建基础块——第一章源代码工程

本人iText7博客新系列的源代码工程,详情请访问我的博客,更多内容请关注我的博客,谢谢大家的一如既往的支持

2018-04-12

openvas report转excel库指导手册

openvas扫描结果的话有多种格式,但是没有excel,在这里推荐大家一个简单的工具,方便大家把reports转换成excel格式

2018-01-17

iText7——第七章源代码工程

本人iText7博客系列第七章的源代码工程,详情请访问我的博客,更多内容请关注我的博客,谢谢大家的一如既往的支持

2017-12-24

iText7——第六章源代码工程

本人iText7博客系列第六章的源代码工程,详情请访问我的博客,更多内容请关注我的博客,谢谢大家的一如既往的支持

2017-12-07

iText7——第五章源代码工程

本人iText7博客系列第五章的源代码工程,详情请访问我的博客,更多内容请关注我的博客,谢谢大家的一如既往的支持

2017-11-17

itext7中文输出打包

itext7中文输出打包IDEA工程,详情见我的博客,里面有输出中文的原理

2017-11-07

iText7——第四章源代码工程

本人iText7博客系列第四章的源代码工程,详情请访问我的博客,更多内容请关注我的博客,谢谢大家的一如既往的支持

2017-09-12

iText7——第三章源代码工程

本人iText7博客系列第一章的源代码工程,详情请访问我的博客

2017-08-24

iText7——第二章源代码工程

本人iText7博客系列第二章的源代码工程,详情请访问我的博客

2017-08-12

sulley安装所需安装包打包

sulley安装所需安装包打包,具体安装方法详见我的博客

2017-07-25

pcapy安装所需要各种安装包打包

pcapy安装所需要各种安装包打包,具体安装方法见我的博客

2017-07-25

pydbg安装所需各种安装包

pydbg安装所需各种安装包,详细安装过程请查看我的博客

2017-07-24

libdasm-beta

libdasm包含pydasm,是安装pydbg过程中必不可少的包,具体安装过程请访问我的博客,原地址:https://code.google.com/archive/p/libdasm/downloads

2017-07-24

AES Int数组加密Java C++

AES Int数组加密Java C++,本人博客的实现工程代码,IDEA工程和VS2015工程

2017-07-13

iText7——第一章源代码工程

本人iText7博客系列第一章的源代码工程,详情请访问我的博客

2017-07-10

Teigha代码打包

Teigha代码包,适用于VS2013平台,不过要先在Teigha官网上申请免费使用权,并在本机上激活才能试用,不过大家可以下载下来当做代码学习

2016-07-28

CadLib4.0英文API帮助文档

CadLib4.0英文API帮助文档

2016-07-12

Java复数矩阵库——JamPack

Java复数矩阵库——JamPack,可用于简单的复数矩阵运算

2016-04-19

three.js中文文档和两个插件

three.js中文文档和两个插件

2016-04-19

电子科大人机交互总结

电子科大人机交互课程内容总结,方便考试,祝大家考试顺利

2015-12-08

预编译器——#include和#define的实现

用C语言实现的 预编译器中——#include和#define 操作

2015-03-29

海明校验码C源文件

课程设计设计的海明校验码可供实验使用,希望大家能轻松过课程设计

2015-03-15

miracl库-32位-64位

亲测适合32位以及64位自己使用的miracl库,有不会用的可以联系我

2015-03-15

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

TA关注的人

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