自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(105)
  • 收藏
  • 关注

原创 sqlmap基本使用方法

sqlmap是安全测试工具,通常用于对已知的http接口进行sql注入测试,一旦注入成功,可以获取到后台包括数据库表、用户信息、数据内容等多种敏感信息,对web漏洞防范有重要意义。基本语法1.先进行注入点探测,常规语法是:python sqlmap.py –u [url]说明:url 一般选择包括参数输入的链接。如果是get方法,就直接跟在url后面用?补充参数。如果是...

2019-05-16 11:35:54 4467 2

原创 统计学上的几个概念

总是隔一段时间就忘,还是记下来。均值:一组数求平均。可以是正数、负数或0方差(差的平方求均值):各数与均值之间差的平方,求和除以元素个数(注意excel中的方差和标准差函数均分为总体和样本两种,区别是除以n还是n-1)。方差一定是正数或者0。标准差:方差开平方,取正平方根。协方差:用于表示两组数的相关性——A组数的各个元素和其均值的差乘以B组数的各个元素和其均值的差,求和后再除以元...

2019-05-09 09:57:03 1167

原创 ajax、跨域、session、filter

        在web开发中,标题列举的这几项内容都是很常见的,遇到问题也不难解决。但最近我在项目中却遇到一个这几项组合出的问题,卡了好几个小时,值得记一下。        首先项目是前后端分离的结构。前端我用nodejs来调试,后端用spring boot跑的各种接口。因为两者端口不同,所以首先得解决跨域调用问题。通常有简便的方法我就不会去用麻烦的方法,所以直接在接口上加注解@CrossO...

2019-01-05 15:41:29 403 1

原创 java8的lambda表达式及方法引用(二)

本文和前面的lambda表达式是连贯的,但篇幅太长了,所以分开了。前面说过lambda表达式的基本格式是()->{},{}里的代码就是函数式接口的实现部分,完全手写自然没有问题,但有时这个方法要实现的功能在其他代码里已经有了(即可以找到一个签名符合接口要求的已有方法),那么就不用再一遍一遍的写了。可以直接引用它,就称之为方法引用。格式是 类名::方法名或 对象名::方法名 ,注意引用不是...

2018-08-07 20:44:25 258

原创 java8的lambda表达式及方法引用(一)

当前很多公司的java开发环境都升级到jdk8以上了。lambda表达式是java8中最重要的更新,其目的是为了配合随着并行运算流行起来的所谓“函数式”编程改进而来的语法糖。既然是语法糖,那么其实不用这些lambda表达式也是可以实现原有功能的,只不过看起来代码行数多一些而已。简单说一下对lambda表达式的理解:lambda表达式其实就是“内部匿名类”对象的特定方法的实现代码。这个内部匿名类...

2018-08-07 15:27:41 1771 1

转载 MySQL大表优化方案

当MySQL单表记录数过大时,增删改查性能都会急剧下降,可以参考以下步骤来优化:单表优化除非单表数据未来会一直不断上涨,否则不要一开始就考虑拆分,拆分会带来逻辑、部署、运维的各种复杂度,一般以整型值为主的表在千万级以下,字符串为主的表在五百万以下是没有太大问题的。而事实上很多时候MySQL单表的性能依然有不少优化空间,甚至能正常支撑千万级以上的数据量:字段尽量使用TINYI

2018-01-05 15:55:20 357

原创 tf-idf(term frequency–inverse document frequency)含义

在文本挖掘和自然语言处理方面,tf-idf是非常重要也非常常用的算法。 tf:词频,是指某个词在某篇文章中出现的频率。比如,某篇文章共1000个词汇,其中hello出现5次,那么其tf=5/1000。tf最直观的理解就是,当一个词在本文中出现的频率越高,则这篇文章的主题和这个词的相关可能性越大。 这种直观理解是否准确呢?可以说相当不准确。举例来说,一篇文章中出现最多的字词可能是你、

2017-12-11 14:35:16 4583

原创 java8 日期时间处理

之前有个项目频繁用到年、月、周的数据库统计。为此专门写了一个蛮复杂的工具类。最近了解了一下java8的新日期时间类库,简直方便到感人。重构了一下代码,行数少了多一半,有些方法直接删掉了,因为已经自带了。适用多种业务场景:展示、统计、设置有效期、增加/减少日期、日期比较等。package com.utils.zjc;import java.time.DayOfWeek;import jav

2017-11-06 23:35:27 2271

转载 java 9 新特性

▶ 进程操作改进(JEP 102: Process API Updates)新增的 java.lang.ProcessHandle 类丰富了对进程的操作,同时原有的 java.lang.Process 类的功能也被加强了。▶ 竞争锁的性能优化(JEP 143: Improve Contended Locking)能够改善程序运行时的多线程同步效率。▶

2017-10-11 13:28:29 295

转载 java 8 新特性

1.介绍毫无疑问,Java 8发行版是自Java 5(发行于2004,已经过了相当一段时间了)以来最具革命性的版本。Java 8 为Java语言、编译器、类库、开发工具与JVM(Java虚拟机)带来了大量新特性。在这篇教程中,我们将一一探索这些变化,并用真实的例子说明它们适用的场景。这篇教程由以下几部分组成,它们分别涉及到Java平台某一特定方面的内容:Java语言编译

2017-10-11 12:56:43 284

原创 oracle联合查询并更新一个表字段的sql语句

更新某一个字段写起来简单,也容易理解:UPDATE tablea A SET A.name=(select name from tableb B where A.id=B.id)更新多个字段就显得比较冗长:UPDATE tablea A SET A.name=(select name from tableb B where A.id=B.id),A.age=(select age

2017-09-26 13:50:21 7226

原创 安装部署jasig cas server及相关实践

jasig cas server是一个开源的单点登录认证服务器。部署很简单,下载后将war包放入tomcat后启动。需要理解并解决的问题有:一、使tomcat支持httpshttps协议通过ssl和数字证书来保证c/s间的数据传输安全。一般说来非对称加密算法性能要低于对称加密算法,所以ssl协议是用对称加密算法进行信息加密的。而在双方确立信任关系的时候需要用数字证书(非对称加密)来相互

2017-07-14 16:55:30 897

原创 mysql的连接超时设置

测试中的新项目有个奇怪的现象,每天早上不能访问,后台报Software caused connection abort: socket write error 错误,重启一下就好了。经查是mysql连接超时设置的问题。默认的wait_timeout 是28800,8个小时。刚好经过一个晚上就超时了。解决办法有两种,一是将连接池中的超时时间设置的短于这个值(本项目用的spring boot data

2017-07-05 13:22:19 1822

原创 向maven库中加需要的jar包

项目里用到sqlserver 的驱动,使用maven依赖下载不成功,看网上说明可以手工下载加入到maven库中,直接拷贝到.m2中,结果各种报错。后来才知道正确用法:mvn install:install-file -Dfile={Path/to/your/ojdbc.jar} -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=11.

2017-06-29 17:49:19 446

原创 一个对含中文字符串在内的字符串排序简便方法

public class StringSort { public static void main(String[] args){ String[] arr = {"1101", "1100", "1001", "1110","1100","1101","0010","1000","0101","0011","1110","1011","0111","0110","1000","0100",

2017-01-12 16:42:22 1102

原创 spark、hadoop动态增减节点

之前在搭建实验环境的时候按部就班的配置好,然后就启动了。后来再一琢磨,有点不对劲。分布式系统的一个优势就是动态可伸缩性,如果增删节点需要重启那肯定是不行的。后来发现的确是不需要重启的。具体方法如下:增加节点修改集群里机器的所有配置(增加此节点)在此节点上启动:./bin/hadoop-daemon.sh start datanode./bin/hadoop-daemon

2016-12-28 16:14:15 1364

原创 用到了base64转图片文件的函数,记录一下

import java.io.*;import sun.misc.*; //对图片文件进行Base64编码 public String getImagebase64(String imgFileName) { byte[] data = null; try { InputStream in = new FileInputS

2016-08-16 14:20:03 1631

原创 朴素贝叶斯分类算法

之前有次考试考的是手工计算朴素贝叶斯的分类。当时没答对,后来搞明白了,不久又忘得差不多了。所以写个例子在这儿记一下。先推导一下贝叶斯公式:假定我们观察到两个事件都发生了,记做P(A∙B),那么我们既可以认为先发生了事件A,在此基础上又发生了事件B,也可以认为先发生了事件B,在此基础上又发生了事件A。所以这两个事件发生的概率,可以记做P(A∙B)=P(A|B)*P(B) 和 P(B∙A)=P

2016-07-19 16:49:36 452

原创 docker安装与应用

docker安装:安装curl:sudo apt-get install curl安装docker:curl –sSL https://get.docker.com | sudo sh设置普通用户执行:sudo usermod –aG docker your-user重新登录docker核心概念:image:创建容器的模板。可以根据一套模板在同一台主机上迅速创建出多个容器。

2016-06-28 17:47:01 612

原创 ubuntu启动无桌面图标?

遇到太多次了,每次都记不住,回回耽误十分钟至半小时解决这事,一定要记下来。用virtualbox装ubuntu或者克隆已有虚拟机,经常是装完好好的,一重启桌面啥都没,据说是那个compiz进程搞的,不清楚。总之解决办法就是:Ctrl+Alt+F1进入终端模式,rm -f .config 、rm -rf .cache 、rm -rf .gconf、sudo reboot ,ok!!!

2016-06-23 20:50:51 7247 5

原创 mysql免安装版常用操作

这里说的是windows平台下的mysql,linux下本来也不用这么麻烦。添加、删除服务:管理员身份运行命令行{mysql_home}\bin\mysqld --install mysql /*注册mysql服务*/{mysql_home}\bin\mysqld --remove mysql /*注册mysql服务*/启动、停止服务:管理员身份运行命令行 ne...

2016-06-15 15:51:27 538

原创 spark 1.5、hadoop 2.7 集群环境搭建

最近需要用到大数据的一些相关技术,于是实验了一下spark和hadoop的集群环境搭建。实验包括三台虚拟机,linux-1、linux-2、linux-3,spark是一个master两个worker, hadoop是一个主NameNode、两个DataNode,其中一个兼做副NameNode。软件方面,spark用的1.5.2版本,最新的1.6.1版本遇到一个java代码访问拒绝的问题,网上有说

2016-06-10 09:21:54 994

原创 ubuntu 1404部署tomcat7

装好ubuntu 1404 LTS 和tomcat7后,启动正常,默认端口8080。希望改成80端口,启动失败了。看日志是权限问题,原来只有root用户才能使用1024以下端口。搜索到解决办法是编辑/etc/default/tomcat7 文件,设置为AUTHBIND=yes再启动,还是失败,显示没有文件或目录。一心认为还是和权限相关,于是想尽各种办法使得以root用户登入:新建文件

2016-06-01 15:30:40 594

原创 linux后台运行&符号、nohup命令、输出重定向等使用方法

列出若干种情形,便于这几个命令及参数的理解:在命令最后加上&符号,表示让这个进程到后台去执行,这样立刻返回到提示符状态,我们可以接着做下面的事。如:command &但此时如果这个进程有输出,还是会显示出来,这又会干扰到我们的shell窗口。所以可以考虑把标准输出重定向到某个文件去,如:command >output &现在清净了。但有时我们会发现后台运行的进程

2016-05-23 19:31:50 26374 3

原创 linux环境配置文件分类

linux的环境配置文件分两大类,一类是针对所有用户,一类是针对当前用户。(以下均以ubuntu为例,其他发行版大同小异)针对所有用户的: /etc/profile——用户登录时会被执行,需要重新加载才能生效。/etc/bash.bashrc——用户打开bash shell时执行,重新开一个shell即可生效。同理,针对单个用户的:~/.profile——用户登录时执行,需要重

2016-05-11 17:16:50 553

原创 关于树莓派的一些用法

树莓派二代b+,发现这个“卡片机”还挺有意思。本来是当作嵌入式设备买的,可玩下来发现即便常规用法也几乎可以当pc用了。收集了一些日常用法,留作记录。如何充分利用sd卡上的剩余空间:方法1:1.将sd卡取出插入读卡器,在主机里识别。通常为 /dev/sdb2.在主机上安装软件gparted,启动sudo gparted ,找到第二个分区,卸载、调整分区大小直至全部。应用。3.插回

2016-05-01 16:07:49 839

原创 搭建树莓派交叉编译环境

树莓派开发——在Linux环境下使用eclipse搭建本地编译和交叉编译环境。

2016-03-29 10:36:16 17563 2

原创 精简web开发配置文件

作为web开发初学者,面对各种框架的配置文件时常感到知其然不知其所以然。这是因为很多配置文件其实有多种写法都可以达到同样目的。最近研究了spring整合mybatis的工程,终于把这些门道大致摸清了。web开发领域一向推崇MVC模式,于是有了SSH之类的组合框架。不过我总感觉SSH有点臃肿,甚至即便只用spring的MVC模块,我都觉得没有自己写servlet理解起来直接,于是采用更简洁的sp

2015-11-26 15:22:06 1212

原创 loadrunner的参数化设置

JMeter具备免安装、轻量化、观察请求与响应非常直观等优势。所以大部分时候用JMeter已经很方便了。但是对于session的支持,就有点弱了。虽然可以通过加cookie管理器和参数化替换,也能实现模拟多登录用户。但捣鼓起来很费劲。需要手工把一堆sessionid放到文本里,然后下次还就过期了。所以这时候用loadrunner录脚本然后参数化还是要省心的多。说明loadrunner的virtua

2015-11-23 12:26:47 1968

原创 补一篇关于JMeter的cookies管理器应用

之前介绍过JMeter测试的日常应用。但对于登录后提交数据等操作说的还不够详细。按照常规教程的说法,为JMeter添加cookies管理器,即可以自动管理cookie,实现用户的状态管理。但经过我的使用,发现有的站点可以,有的站点不行。录制完脚本,发现有的站点在cookies管理器中有内容,而大部分没有。经过比较,发现cookies管理器只能自动记录那些持久cookie,而对于类似sessioni

2015-08-04 10:33:03 6061

原创 好记性不如烂笔头——关于精确度、召回率、F值、准确率

将数据挖掘中这些评测指标的基本概念做一整理,忘了的时候还可以来查一查。精确度,有时也叫正确率,是英文中的precision而不是accuracy。表示正确识别为此类的样本数目(TP)/识别为此类的样本总数目(TP+FP)。FP就是那些原本不是此类但被错误的分为此类的样本数目。召回率,这个名称容易使人把它和召回缺陷产品的比率联想到一起,完全不是一码事。所以另外一种翻译的名称更

2015-07-05 19:29:39 2277 1

原创 R语言笔记

最近做的几个项目都是用R语言来完成的。正如老师所说,学起来很快,忘起来也很快。整理一下放在这里,方便以后查阅。安装所需的包:install.packages("xxxx")加载包:library("xxxx")显示/改变工作目录getwd()/setwd("d:/temp")文件操作:1.读取csv文件var=read.csv("demo.csv

2015-06-24 18:40:20 1191

原创 JMeter快速应用

过去长期用loadrunner做性能测试,但是渐渐觉得有些麻烦了:1.只能运行在windows环境下,而生产环境几乎清一色的linux。为了在同一网段做性能或压力测试,还需要单独部署一套windows服务器,比较浪费。2.loadrunner和浏览器版本绑定太严格了,比如loadrunner 11,最高就支持到ie9,有时候系统打补丁自动把浏览器版本升上去了,就无法录制脚本了。3.版权

2015-06-08 16:12:18 1151 1

原创 网页抓取

上了数据挖掘这门课,想做个小例子。基本思路是根据配置文件打开相应的网址,再根据内容的分类信息自动选择符合的文章进行保存。考虑到效率,采用多线程方式。才完成一个基本框架。包括读取配置文件、打开网址、保存文件;后续还有很多工作,解析网页,分析类别等。感觉最大的工作量是网页分析,和数据挖掘关系不大啊,不知道符不符合要求。代码如下: public static void main(String[] a

2015-03-16 17:32:38 1213

原创 使内嵌式jetty服务器支持jsp

1.jetty是什么jetty是一个轻量级的web服务器,类似tomcat,但用起来比tomcat灵活,尤其是支持内嵌式使用。所谓内嵌式即以java语句的形式启动jetty,这样我们可以无需部署和启动web容器就能达到同样的效果。这对于简单的基于http协议的应用以及调试程序就方便的多了。2.一个简单的jetty服务器简单到仅需类似以下几条语句:public class Jetty

2015-01-27 00:00:28 5640 2

原创 验证loadrunner对Ajax内容的校验

前一阵和开发的同事一起测试某个系统的性能。此系统是发送Ajax请求到后台,再调用第三方的某项服务。第三方服务的性能由不得我们控制,因此开发人员做了一下改进,超时则直接返回。于是在loadrunner这边,结果就好看的多了。当时我并没在意,后来一琢磨,这岂不是说loadrunner不检查Ajax内容就通过了?为了验证这个论断,做了个简单的示例。首先是写个前端的html,发送Ajax到后台,再写个

2014-12-17 23:09:19 1821 3

原创 JavaScript特点

JavaScript是一种动态解释型语言,这使得它和传统的编译型语言有着一些区别。这些区别引发出某些独特的概念和使用方法,简单举例说明。在我的理解里,这些特点分别有:解释执行、弱类型、面向过程与面向对象相结合、浏览器相关性一、解释执行导致一个在编写代码时需要留意的方面——执行结果和语句的顺序有很大相关性:比如:1.script语句写在了某些html元素之前,而试图去操作

2014-12-03 21:21:35 1660

原创 JavaScript作用域、上下文环境、函数对象的定义与调用、匿名函数的定义与调用、闭包

提到闭包总给人很高深的感觉,网上的例子也数不胜数。但是我发现相当一部分并不容易理解。根据我的观察,是因为这些例子把标题中提到的概念糅杂在了一起,往往越看越糊涂。所以我希望化整为零,拆成简单例子来解释。1.先看作用域:JavaScript作用域只有两种——全局作用域和函数内作用域,没有代码块作用域。示例:function loop(){for(var i=0;i/

2014-12-03 21:09:35 1623

原创 JavaScript示例十(表单序列化)

表单序列化 Male Female My bike. My car. Volvo Benz BMW Audi zhangsan lisi wangwu zhaoliu function serialize(form){ var parts=[],

2014-11-29 15:41:06 1674 2

原创 JavaScript示例九(JSON序列化)

JSON序列化示例 var book={ title:"Professional JavaScript", authors:["Nicholas C. Zakas","Other"], edition:3, year:2011, //* toJSON:function(){ return this; } //*/ };

2014-11-29 15:24:57 1288

空空如也

空空如也

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

TA关注的人

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