自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(4)
  • 资源 (8)
  • 问答 (1)
  • 收藏
  • 关注

原创 Zookeeper学习笔记(一)简介

参考自官方文档   http://zookeeper.apache.org/doc/trunk/zookeeperStarted.html Zookeeper的介绍可以参考这篇博客系列:http://www.cnblogs.com/leocook/p/zk_0.html  此外官网上的说明也可以看一下,这里就不再赘述。 一、下载安装 首先去官网上下载当前稳定版本:3.4.10

2017-07-16 11:42:50 464

原创 堆的应用

一、堆排序 堆排序见之前的一篇博客   http://blog.csdn.NET/zhutulang/article/details/7746033 这里用上一篇文章 http://blog.csdn.net/zhutulang/article/details/74139914 中实现的堆来写一个堆排序 二、top k 问题 三、优先队列

2017-07-07 22:48:56 1195

原创 一个堆的java实现

写了一个堆的java实现,既然可用数组来表示堆,为了方便,那么就用ArrayList吧。 抽象类Heap: package com.my.test6; import java.util.ArrayList; /** * Title: 堆的抽象实现 * Intention: 参考:https://my.oschina.net/BreathL/blog/71602 * * Class

2017-07-02 17:45:06 688

原创 关于堆的一点总结

一、什么是堆 堆是一颗被完全填满的二叉树,可能的例外是在底层,底层上的元素从左到右填入,这样的树被称为完全二叉树。 二、堆的特性 1、如果一个堆有N个节点,那么堆的高度为 h = [lgN] 。即N 在 2h 到 2h+1-1  之间。 2、父节点的值大于(大顶堆)或小于(小顶堆)子节点的值。 三、堆支持的操作 1、上浮 shiftup 2、下沉 shiftd

2017-07-01 23:22:02 511

rest api java demo(一个记账工程)

(1)项目简介 这个demo很简单,是一个记账小工程。用户可以注册、修改密码,可以记账、查找记账记录等。 (2)接口介绍 用户操作相关: post /users 用户注册 post /users/login 用户登录(这里我把login当成一个名词) put /users/pwd?userId=xxx&sign=xxx 用户修改密码 delete /users?uerId=xxx&sign=xxx 删除用户 记账记录操作相关: post /records?userId=xxx&sign=xxx 增加一条记账记录 get /records/:id?userId=xxx&sign=xxx 查询一条记账记录详情 put /records/:id?userId=xxx&sign=xxx 修改一条记账记录详情 get /records?查询参数&userId=xxx&sign=xxx 分页查询记账记录 delete /records/:id?userId=xxx&sign=xxx 删除一条记账记录 其中url中带sign参数的表示该接口需要鉴权,sign必须是url中最后一个参数。具体的鉴权方法是:用户登录后,服务器生成返回一个token,然后客户端要注意保存这个token,需要鉴权的接口加上sign签名,sign=MD5(url+token),这样可以避免直接传token从而泄露了token。这里我觉得接口最好还带一个时间戳参数timestamp,然后可以在服务端比较时间差,从而避免重放攻击。而且这样还有一个好处,就是如果有人截获了我们的请求,他想伪造我们的请求则不得不改时间戳参数(因为我们在服务器端会比较时间),这样一来sign势必会改变,他是无法得知这个sign的。如果我们没有加时间戳参数的话,那么,他截获了请求url,再重发这个请求势必又是一次合法的请求。我在这里为了简单一些,就不加时间戳了,因为这在开发测试阶段实在是太麻烦了。 (3)关于redis和数据库的说明 服务端在用户登录后,生成token,并将token保存到redis中。后面在接口鉴权的时候会取出token计算签名MD5(除sign外的url+token),进行比对。 这个demo搭建了一个redis主从复制,具体可以参考:http://download.csdn.net/detail/zhutulang/9585010 数据库使用mysql,脚本在 src/main/resources/accounting.sql

2016-07-26

windows版的redis(3.0.501版)master-slave

1、windows下redis,版本是3.0.501。特意弄了三份,用于搭建一个master和2个slave的主从复制。 2、压缩包下共三个文件,一个master,端口号是9379,一个slave1,端口号是9380,一个slave2,端口号是9381。另外,每个文件夹下各有一个sentinel.conf,用于启动sentinel。启动命令是redis-server sentinel.conf --sentinel 3、redis.conf配置项可参考:http://blog.csdn.net/zhutulang/article/details/51969760 搭建主从复制可参考:http://www.linuxidc.com/Linux/2015-04/116798.htm

2016-07-24

webservice入门学习代码笔记

本人自己的webservice入门学习的笔记。非常粗糙和浅显,主要是自己看的。博客地址:http://blog.csdn.net/zhutulang/article/details/51125459

2016-04-11

微信订阅号开发java_demo

微信订阅号开发java demo,只是接收、发送消息的接口。

2016-01-31

“简易版飞鸽传书”源码

该程序可实现在局域网内收发文字信息和文件的功能。希望可以通过这个样例让读者对java网络编程和IO编程有所了解。其中,主要参考了李刚的《疯狂java讲义》,有一些代码直接拷贝自该书第17章,头像图片来源于网络,特此说明。另外需要说明的是:本程序在jdk1.8下开发,在笔者的局域网环境下测试通过,能实现发送文字消息和传输小文件的功能,但笔者并不能保证能在你的环境下也一定可以测试通过~ O__O “…

2015-10-23

java仿windows计算器

java写的仿windows风格计算器 注: 1、没有监听键盘事件 2、按一次“=”,只执行一次计算。而windows计算器不同,例如,按下“2+3”,每按一次“=”,会在结果上再加一次3。 3、“%”运算逻辑与windows的不同,这里认为是 当前数/100。

2012-11-12

字符验证码识别的算是比较新的论文吧

一篇字符验证码识别的论文,或许对你有启发

2012-06-08

Java高精度计算文件

Java高精度计算文件,很好用!!!非原创,特此向代码原作者致敬

2011-10-05

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

TA关注的人

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