- 博客(103)
- 问答 (1)
- 收藏
- 关注
原创 [java]使用junrar解压文件时,上报解压进度的具体实现
笔者在公司项目中有一个需要解压10G的rar的压缩包的一个需求,那么我们希望能够上报整个解压的进度。google/baidu上均没有找到合适的办法。后来看了下junrar的源码,发现实现UnrarCallback接口后,可以完成进度的上报监测。经验之谈就是,读源码才是王道。具体代码可点击Github地址监控类具体代码如下。package com.zju.javastudy.unrar;import
2018-04-12 00:18:07 4670 2
原创 [工具]IDEA"小黄灯"快捷键配置快速Fix
笔者由于工作中使用windows开发,平时在家学习用的又是MAC,来回切换搞的有点崩溃,所以快捷键需要改成在公司的习惯。IDEA的一个常用功能如下图。 网上找了老半天没有找到合适的修改快捷键的方法,后来自己摸索找到了修改方法。关键字就是show intention actions了,如下图所示。...
2018-03-25 11:52:45 9835
原创 [源码分析]Spring boot 源码环境搭建
阅读源码的第一步:环境搭建导入源码到eclipseSampleSimpleApplication运行阅读源码的第一步:环境搭建在读研期间,笔者尝试阅读过Tomcat、Hadoop以及Cougaar等开源软件的代码,这次选择阅读Spring boot的源码,并计划形成一系列的源码分析的文档。Spring boot作为一个优秀的开源软件,通过分析学习其源码,可以学习到业...
2018-03-11 18:58:33 7121
原创 [自动化]Mac 下搭建 Chrome + selenium 完成web页面自动化
背景实现环境介绍准备工作如何编写代码背景通过selenium可以完成自动操作web的操作,解放你的双手。实现环境介绍macchrome版本 64.0.3282.140(正式版本)selenium-java 3.8.1chrome selenium driver 2.35准备工作首先需要下载Chrome或者其它浏览器的驱动程...
2018-02-08 23:38:28 2075
原创 [linux]自动拉起jenkins编译的war包经验分享
背景jenkins编译的war包,需要在CI环境自动部署起来。思路起一个crontab任务,比较jenkins编译的war包和运行的war包是不是一样的,如果是一样的,则什么都不做;如果不一样,杀死已有的进程,并且启动新的war包。比较war的方法是通过比较文件的MD5值是否相等。(md5sum命令)oldMd5=`md5sum /opt/mainService.war | awk '{print
2018-01-31 22:03:49 710
原创 [JAVA]性能问题常用linux命令和java命令总结
linux命令topfreejava命令jpsjstatjmaplinux命令toptop命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,常用于服务端性能分析。每一个字段的具体含义可以参见每天一个linux命令(44):top命令 ,这篇文章写的很全面。另外对于Load Average的解释可参考一幅图秒懂LoadAverage(负载)上对于Load的解
2018-01-30 23:07:29 598
原创 [测试]使用soap UI mock Rest Service时设置超时时长的办法
背景笔者之前一直都有使用soapUI(点击官网下载)模拟服务端进行rest接口的联调和测试。 最近有一个很小众的需求: 模拟服务端超时的情况。比如让mock的服务端20秒以后再返回响应。第一步:创建mock service先配置好mock service,这里以一个post请求为例。 第二步:配置mock service在OnRequest scr
2018-01-17 20:54:49 2927 1
原创 [网络]从wireshark抓包看百度的https流程
背景虽然之前在学校学习过《计算机网络》课程,对https有所认识,但是当笔者最近在定位一个网络问题时,发现学习不够深入。为此深入了解了一下https的流程。这里做一下总结和分享。https原理http有如下的不足(参考自:【日本】上野 宣《图解HTTP》):通信使用明文,内容可能被窃听;不验证通信方的身份,因此有可能遭遇伪装;无法证明报文的完整性,所有有可能遭篡改。为了
2018-01-06 21:55:39 53680 3
原创 [vue]Spring boot + vue.js框架搭建指南
目前,vue.js和Spring boot技术很火爆,但是两者如何整合在一起呢。本文将给出两者整合的思路。#
2017-12-30 12:42:30 15377
原创 [JAVA]等待通知机制的2种实现
最近笔者在空闲之余,温习了下JAVA多线程编程。经常看,却经常忘记。可能是由于用的不多的缘故吧。这里针对多线程的等待通知的机制的2种实现进行总结。加深理解和认识。等待通知机制首先介绍下什么是等待通知机制。这里举一个生活的例子。大家去餐馆吃饭的时候,会取号进行”等待“。等到号了,餐馆工作人员会”通知“你前去就餐。这就是一个简单的等待通知的例子。好了,接下来介绍下它的2种实现。wait()和notify
2017-12-28 22:28:36 1707
原创 [vue]Spring boot后端如何支持HTML 5 History模式
笔者在公司项目中,遇到了如下问题:问题描述vue-router默认是hash模式,但是也支持History模式。这2种模式的区别,这里不再赘述。详情可以参见vue-router官网。从官网可以看到vue-router配置为history模式时,需要后端的支持。官网给出的Apache后端的配置方法如下。<IfModule mod_rewrite.c> RewriteEngine On Rewr
2017-12-28 21:58:19 4414 5
原创 [vue]使用自定义指令实现表单校验
笔者近期在公司的项目中使用自定义指令完成了表单校验。 这里将思路分享给大家,并写了一个小demo。这个自定义指令还需要大家自行完善。demo可见Github:vue-form-param-check首先关于自定义指令的介绍可以参考官网。首先,在github上已经有了一些开源组件可以支持表单校验。但是对于一些小项目而言,引入一个很大的东西实际上并不好。所以这里利用vue的自定义指令对表单校验进行了简
2017-12-04 23:31:20 9298
原创 [vue]vue-router配置title
【前端】vue-router配置title笔者最近公司项目需要使用到vue-router,但是发现没办法配置title。网上查阅了一下,发现方法有些不能用,比如:router.map({ '/pathA': { name: 'path-a', title: 'title path', // }});router.afterEach(f
2017-10-15 02:02:49 1237
原创 [JAVA]运用反射机制,抛出的异常的捕获方法
背景介绍笔者前些日子做过一个这样的事情,利用反射机制调用一个会报Checked的异常的方法,在调用后没法抛出异常(原因是反射机制调用是没法catch到Checked异常的)。举个简单的例子如下。 1.先定义一个简单的异常类(这样的定义是Checked的异常哦)package com.zju.study.exception;public class SimpleException extends E
2016-07-04 21:59:09 10839 3
原创 [JAVA]如何定义好一个静态final域
背景描述: 最近在做一些JAVA方面的开发,时常需要定义一些常量,比如String类,Map类等等。public static final String ADDRESS = "CSDN";上述的定义很常见,但是对于如何定义一个常量的map,看了公司一些同事的做法如下:public class Constants{public static final Map<String,String> ADD
2016-07-03 22:43:40 2155 1
原创 [Leetcode]解题文档-String to Integer (atoi)
Implement atoi to convert a string to an integer. Hint: Carefully consider all possible input cases. If you want a challenge, please do not see below and ask yourself what are the possible input cas
2016-05-07 22:19:17 840 1
原创 [Leetcode]解题文档- Reverse Integer
题目: Reverse digits of an integer. Example1: x = 123, return 321 Example2: x = -123, return -321题目意思很简单,但是需要考虑溢出。 尝试了字符串的解法和纯int数字解,发现后者效率更高,那么笔者是如何判断是否溢出的呢?比如1234567899,正序不溢出,逆序溢出。 做法:先判断位数,
2016-05-07 19:55:18 1083
原创 [Leetcode]解题文档-ZigZag Conversion
题目: The string “PAYPALISHIRING” is written in a zigzag pattern on a given number of rows like this: (you may want to display this pattern in a fixed font for better legibility) P A H N A
2016-05-07 13:41:00 970 2
原创 [Leetcode]解题文档-Longest Palindromic Substring
5. Longest Palindromic SubstringGiven a string S, find the longest palindromic substring in S. You may assume that the maximum length of S is 1000, and there exists one unique longest palindromic subst
2016-05-05 22:19:16 646
原创 [Leetcode]解题文档-Median of Two Sorted Arrays
4. Median of Two Sorted ArraysThere are two sorted arrays nums1 and nums2 of size m and n respectively. Find the median of the two sorted arrays. The overall run time complexity should be O(log (m+n)).
2016-05-05 12:04:45 706
原创 [Leetcode]解题文档-Longest Substring Without Repeating Characters
[这个问题之前面试中有问到过,还是值得学习下的~]3. Longest Substring Without Repeating CharactersGiven a string, find the length of the longest substring without repeating characters.Examples:Given “abcabcbb”, the answer is
2016-05-05 02:25:50 667
原创 [杂记]国内某两家IT公司面试经验
国内某通信大佬面试先说说第一家。面的国内某通信大佬,是直接来学校招人,面试供2轮。一面(45min):和大多数公司一样,首先自我介绍,其次介绍做过的项目。我在硕士期间做过一个数据挖掘的项目,就和面试官介绍了下。(这里不BB这个了)。 (1)操作系统的内容,让我画出5个进程状态的切换具体是什么样的?其次问了下进程间通信的方式。 (2)计算机网络方面,问了NIO问题,我用一个很形象的例子,给他解释了
2016-04-18 20:38:20 952
原创 [OJ]24点游戏之递归实现(JAVA)
题目描述问题描述:给出4个1-10的数字,通过加减乘除,得到数字为24就算胜利 输入: 4个1-10的数字。[数字允许重复,测试用例保证无异常数字] 输出: true or false输入描述: 输入4个int整数 输出描述: 返回能否得到24点,能输出true,不能输出false 输入例子: 7 2 1 10输出例子: trueimport java.util.Ar
2016-04-12 19:59:55 3426
原创 [Spark]Spark与Anaconda配置(Python)
对于Python开发者来说,使用Anaconda是很爽的。linux安装好后,如何在pyspark中也可以使用Anaconda呢?这里笔者研读了下pyspark的脚本,这里给出解决方案。安装Anaconda后,需要配置下bash_profile文件。export PYSPARK_PYTHON=/home/peiwen/anaconda2/binexport IPYTHON="1"
2016-03-24 16:13:54 12173 2
原创 [数据库]数据库基础知识复习
DQLDMLDDLDCL数据查询语言DQL数据操纵语言DML数据定义语言DDL数据控制语言DCL数据库中的五大约束数据库范式1NF2NF3NFBCNF存储过程存储过程的好处写在前:最近在准备找实习,在复习之前学习过的数据库知识,特写此博文总结之。DQL、DML、DDL、DCLSQL语言共分为四大类:数据查询语言DQL,数据操纵语言DML, 数据定义语言DDL,数据控制语言D
2016-03-21 12:57:07 669
原创 [杂记]国内某知名电商数据研发面试题
面的国内知名的互联网公司数据岗,下面是面试内容: (1)首先自我介绍。 先介绍了下自己的教育背景,后来说研究方向,最近做的项目(这里我说我之前做过一个数据挖掘的项目)。 (2)你说你本科是数学系的,是那种和计算机相关的数学系专业队吗?介绍下你本科学过的科目。 是的。。。简单了说了下,本科学过啥(图论啊,密码学啊,数值计算啊,。什么数学分析高等代数忘记说了,囧囧囧)。 (3)你有用过什么开源
2016-03-15 09:55:22 1371
原创 [聚类算法]K-means优缺点及其改进
写在前:本文参考了国内一些硕士论文以及一些期刊。笔者会在后面写上具体的参考文献。仅供学习,请勿抄袭。K-means聚类小述大家接触的第一个聚类方法,十有八九都是K-means聚类啦。该算法十分容易理解,也很容易实现。其实几乎所有的机器学习和数据挖掘算法都有其优点和缺点。那么K-means的缺点是什么呢? 总结为下: (1)对于离群点和孤立点敏感; (2)k值选择; (3)初始聚类中心的选择;
2016-03-14 11:05:06 46865 4
原创 [图论]用Edmonds-Karp算法求解最大流问题(C语言实现)
Edmonds-Karp是求解最大流的一种算法,其他还有Ford-Fulkerson算法,这个算法在《算法导论》中有详细的介绍。下面我们来探讨下Edmonds-Karp算法。 Edmonds-Karp算法是利用一种动态规划的思想的算法。其主要用来解决下面这种最大流问题。下面给出其具体的算法描述。 。 其时间复杂度与选取的最短路径算法有直接的关系,它的复杂度为O(VE^2)(笔者不会证明这个结论
2016-03-07 21:16:34 4378
原创 [Linux]常用Linux命令小结(持续更新中)
pbcopy命令cat命令locate命令find命令grep命令tar命令sed命令关机命令awk编程记录和域的概念常用使用对于ls,cd等太过于基础的命令,本文不将进行介绍。pbcopy命令复制到粘贴板中。 在进行SSH的时候,需要拷贝公钥,这里Linux有个命令,大家可以试试, pbcopy < ~/.ssh/id_rsa.pub该命令也同样适用于拷贝文件。cat命
2016-03-05 15:35:07 694
原创 [运筹学]关于动态规划的2个问题-最长公共子序列与最长非降子序列问题
最近在准备面试的时候,发现了动态规划一类的问题,感觉很有意思。简单叙述下什么是动态规划。动态规划 (下面部分概念参考自:百度百科) 把多阶段过程转化为一系列单阶段问题,利用各阶段之间的关系,逐个求解,创立了解决这类过程优化问题的新方法。对于动态规划问题的一些理解(个人看法,可能有误): 大多数动态规划问题都可以用蛮力法或者递归(深度搜索)的思路来解决,但是用动态规划就好了很多;一个很
2016-03-03 23:09:44 1143
翻译 [神经网络]2.1-How the backpropagation algorithm works-Warm up: a fast matrix-based approach ...(翻译)
在上一章中,我们看到神经网络通过随机梯度下降法可以学习权重和偏差。然而,之前我们没有解释过如何计算花费函数的梯度计算方法,这是个空白!在本章,我将会阐述一个计算这个梯度的快速算法,称为反向传播(backpropagation)算法。反向传播算法最初在20世纪70年代提出,但是直到1986年, David Rumelhart, Geoffrey Hinton, and Ronald Williams
2016-02-27 13:27:02 1139
翻译 [神经网络]2.2/2.3-How the backpropagation algorithm works-The two assumptions we need...(翻译)
The two assumptions we need about the cost function(2个关于成本函数的假设)反向传播的全局是计算网络的成本函数CC关于权重ww和偏差bb的偏导数∂C/∂w\partial C/\partial w和∂C/∂b\partial C/\partial b。关于反向传播的工作,我们需要做2个主要的假设。在开始假设之前,在头脑中有一个成本函数的例子是有用的
2016-02-26 16:10:04 701
翻译 [神经网络]1.7-Using neural nets to recognize handwritten digits-Toward deep learning(翻译)
Toward deep learning(走向深度学习)虽然我们的神经网络给出了令人印象深刻的表现,表现的有点神秘。他自动更改网络中的权重和偏差。这意味着我们不立即解释网络如何做。我们是否可以找到一些分类手写数字的原则?并且基于这些原则,使得我们的网络更好呢? 把这些问题更为明显,假设几十年后,神经网络将引导人工智能(AI)。我们将会明白智能的网络是如何工作的?也许网络会对我们不透明,也就是我们不
2016-02-22 14:17:09 647
原创 [数据结构]七种排序算法小结
冒泡排序选择排序插入排序归并排序快速排序堆排序希尔排序眼看着就要实习,为了巩固基础,回顾并总结排序算法。参考自:http://www.nowcoder.com/courses/1/1/1冒泡排序时间复杂度o(n2)o(n^2)。下面以一个例子来看什么是冒泡排序。 例: 第一次取区间[0,7],通过比较第i个和第i+1个的大小,如果第i+1个数字小于第i个,则互换。这样位置7就是最
2016-02-20 12:21:15 5497
翻译 [神经网络]1.6-Using neural nets to recognize handwritten digits-Implementing our network to classify(翻译)
说明:1.5讲的是梯度下降法,之前笔者对其已经有了总结,故此不再翻译学习啦。 原文地址:http://neuralnetworksanddeeplearning.com/chap1.html#a_simple_network_to_classify_handwritten_digitsImplementing our network to classify digits(识别数字网络的实现)好吧,
2016-02-19 17:09:32 992
翻译 [神经网络]1.4-Using neural nets to recognize handwritten digits-A simple network to classify ...(翻译)
原文地址:http://neuralnetworksanddeeplearning.com/chap1.html#the_architecture_of_neural_networksA simple network to classify handwritten digits定义完了神经网络的相关概念后,我们回到手写识别的问题。我们可以将手写识别的问题分解成2个子问题。首先,我们将包含着多个数字的
2016-02-18 16:03:33 735
原创 [数据挖掘]关联规则学习笔记
关联规则频繁项集的产生规则产生基于置信度的剪枝频繁项集的紧凑表示41 极大频繁项集42 闭频繁项集6 FP增长算法61 FP树表示法关联规则 参考资料:《数据挖掘导论》人民邮电出版社Pang-Ning Tan等著关联规则是形如X→YX \rightarrow Y 的蕴含表达式,其中X和Y是不相交的项集。即X∩Y=∅X \cap Y=\emptyset 。关联规则的强度可以用
2016-01-26 11:43:35 7304
原创 [数学学习]数学知识回顾之概率统计与信息论
Logistic回归模型Logistic分布联合界与Hoeffding不等式联合界定理Hoeffding不等式极大似然估计信息论基本理论熵联合熵条件熵链式法则互信息Logistic回归模型Logistic分布Logistic分布的定义如下。 设XX是连续随机变量,XX服从Logistic分布是指XX具有下列分布函数和密度函数。 F(x)=P(X≤x)=11+e−(x−
2016-01-23 14:26:41 844
翻译 [神经网络]1.3-Using neural nets to recognize handwritten digits-The architecture of neural networks(翻译)
翻译1.3
2016-01-22 21:55:25 713
空空如也
linux 正则表达式问题
2015-10-22
TA创建的收藏夹 TA关注的收藏夹
TA关注的人