- 博客(125)
- 资源 (8)
- 收藏
- 关注
原创 测试概念
1.冒烟测试:简单的启停,加上一两个核心 caseregression test : 回归测试unit test : 单元测试,测某个函数或某个类junit : 开发写的单元测试case单元测试: 一个是函数测试,就是最低级别的测试就是单元测试单步调试: 另外一个是和单元测试相配合使用的静态分析动态分析。静态分析就是读代码,动态分析就是单步调试测试去改code 是很越...
2019-09-19 23:03:23
262
原创 前端集成github,js 的json 处理,jquery选择器,setTimeout和setInterval
1、前端集成githubhttps://github.com/JingwenTian/awesome-frontend2、js 的json 处理单独json string 写法:Var jsonString = ‘ {"说明":"如果有多个错误码,以最小的一个为准","错误码000":"未初始化”} '嵌套jsonString 写法:var str = "{\...
2019-09-19 23:01:29
350
原创 p2p,gossip,paxos,md5,大文件排序
1、p2p架构网络中的所有节点都是对等的,它们构成了一个环,节点之间通过P2P协议每秒钟交换一次数据,这样每个节点都拥有其它所有节点的信息,包括位置、状态等2、Gossip 协议3、Paxos算法讲解,非常精彩Proposer提出议题 Acceptor初步接受 或者 Acceptor初步不接受 如果上一步Acceptor初步接受则Proposer再次向Acceptor确认是否最...
2019-09-19 22:50:55
322
原创 地址围栏
1、解释1“围栏”就是进入某个范围内,检测到并执行某些操作,出了这个范围,检测到并执行某些操作。只不过判断条件不一样,地理围栏就是根据我们画出的位置信息来触发,比如:进入区域内禁用摄像头,出了区域就打开摄像头。目前,我们使用的百度定位服务,会根据GPS、基站和IP进行自动定位,选取一种最精确的作为结果,根据官方的说明,如果开了GPS,误差最小在10m左右,如果什么都不开,误差在100m左右...
2019-09-19 22:47:32
1043
原创 基站定位
基站定位的[1]大致原理为:移动电话测量不同基站的下行导频信号,得到不同基站下行导频的TOA(Time of Arrival,到达时刻)或TDOA(Time Difference of Arrival,到达时间差),根据该测量结果并结合基站的坐标,一般采用三角公式估计算法,就能够计算出移动电话的位置。实际的位置估计算法需要考虑多基站(3个或3个以上)定位的情况,因此算法要复杂很多。一般而言,...
2019-09-19 22:47:04
2816
原创 LRU (redis 的LRU 加自己实现的linkedHashMap)
本文很有用一、概念:什么是LRU算法? LRU是Least Recently Used的缩写,即最近最久未使用(其实就是从当前看最长时间没用到的),常用于页面置换算法,是为虚拟页式存储管理服务的。二、代码:重写 linkedHashMap 实现了 lrupackage com.heyjl.linkedhashmap_lru;/** * http://blo
2017-11-10 18:17:31
915
原创 csrf 原理与解决方案
一.CSRF是什么? CSRF(Cross-site request forgery),中文名称:跨站请求伪造,也被称为:one click attack/session riding,缩写为:CSRF/XSRF。二.CSRF可以做什么? 你这可以这么理解CSRF攻击:攻击者盗用了你的身份,以你的名义发送恶意请求。CSRF能够做的事情包括:以你名义发送邮件,发消息,盗取你的账号...
2017-10-09 08:18:35
6631
原创 tomcat配置https
tomcat配置https1.生成服务端证书(证书是给浏览器看的)keytool -genkeypair -alias “tomcat” -keyalg “RSA” -keystore “./tomcat.keystore”2.tomcat server.xml配置证书 <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
2017-10-02 08:11:53
416
原创 json 三转 , 前端ajax的datatype为json后端传来jsonString 即可
代码:import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.JSONObject;import org.junit.Test;/** * 第一个函数和第二个函数是stringToJsonObject * Created by jaloli on 2017/6/15. */public class DeviceQ
2017-06-15 16:47:09
1582
原创 java 泛型方法 泛型类
泛型方法:/** * 1..泛型方法 打印各种类型的数组 * */ public static void printArray(E[] inputArray) { // 输出数组元素 for (E element : inputArray) { System.out.printf("%s ", element);// %s 是字符串型的数据 } Sys
2016-08-02 16:43:25
669
原创 java StringBuffer StringBuilder
代码:package test;/** * 当对字符串进行修改的时候,需要使用StringBuffer和StringBuilder类。 * 和String类不同的是,StringBuffer和StringBuilder类的对象能够被多次的修改, * 并且不产生新的未使用对象。 * @author jaloli * */public class StringBufferAndS
2016-08-02 11:12:43
364
原创 netty 第二章 从client 传递Object 对象到server
注意Command 类对象要implements Serializable , 从而command 对象可以序列化, 进行对象传输, 或者对象保存到磁盘上的文件如果不序列化, 那么对象从一个jvm 传到另一个jvm 的过程中, 在脱离第一个jvm 时生命周期就到了, 则无法传到第二个jvm, 所以要序列化即串行化, 才可以传输 代码:package third.chapter.ob
2016-07-28 16:52:08
744
原创 netty 第一章 ServerBootstrap 和 ClientBootstrap
ServerBootstrap 和 ClientBootstrap代码如下:HttpServer 类package com.netty;import java.net.InetSocketAddress;import java.util.concurrent.Executors;import org.jboss.netty.bootstrap.ServerBootstra
2016-07-28 11:37:00
5910
原创 java treeMap 已经排好序即输出{1=, 2=, 4=, 5=, 6=, 8=}
treeMap 底层实现是一棵红黑树, 即是一棵平衡二叉查找树, 红黑树已经有序, 即根比左大比右小, treeMap 是通过key 的值作为红黑树节点的大小来排序代码:import java.util.Map;import java.util.TreeMap;public class RedBlackTree { public static void main(String[
2016-07-20 08:30:20
1392
原创 java CountDownLatch 同步计数器
CountDownLatch类是同步计数器, 初始值100,调用countDown() 则计数器减去1,直到计数器等于0之前本句都可以执行latch.await(); 方法阻塞程序执行 , 直到CountDownLatch 为0,则继续执行本句后面的代码代码如下:package countDownLatchDemo;import java.util.concurrent.Co
2016-07-19 12:46:18
531
原创 java 读写锁
读锁: 线程拿到读锁, 那么其他线程还可以拿读锁, 但是不能拿写锁写锁: 线程拿到写锁, 那么其他线程既不能拿读锁, 也不能拿写锁代码:package read.write.lock;import java.util.Random;import java.util.concurrent.locks.ReentrantReadWriteLock;public class R
2016-07-14 21:17:02
420
原创 算法 把二叉查找树转变成排序的双向链表
记住: 树的问题都递归概念:双向链表也叫双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱。所以,从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点。一般我们都构造双向循环链表。二叉排序树或者是一棵空树,或者是具有下列性质的二叉树:(1)若左子树不空,则左子树上所有结点的值均小于它的根结点的值;(2)若右子树不
2016-07-11 21:01:44
450
原创 java rabbitmq MessageQueue 使用第一章
一..环境搭建运行message queue client 的 java代码需要3个步骤1..装erlang环境http://www.erlang.org/downloads2..erlang环境为了rabbitmq 的server 安装做准备http://www.rabbitmq.com/releases/rabbitmq-server/v3.3.4/rabbitmq-se
2016-07-10 21:31:56
1568
原创 java blockingqueue 单独用, 结合线程池用
单独用代码:package ThreadPoolTest;import java.util.concurrent.BlockingQueue;import java.util.concurrent.LinkedBlockingDeque;import java.util.concurrent.LinkedBlockingQueue;/** * * @category 阻塞队列
2016-07-10 10:32:16
599
原创 java c3p0连接池 不用spring单独使用c3p0
如之前文章>所说:Connection 复用问题, 多线程共用一个Connection 对象,没问题, 他们不停地用这个Connection 对象去查询没问题, 猜测是Connection 类内部优化,(参考:http://blog.youkuaiyun.com/nx188/article/details/49818697)但是如果一个线程占用一个connection 过长, 导致其他线程无法
2016-06-25 13:06:20
2496
原创 java nio 常见的nio类, nio 写文件方法, nio 比io 的优势
代码:package NIO;import java.io.BufferedInputStream;import java.io.FileInputStream;import java.io.IOException;import java.io.RandomAccessFile;import java.net.InetSocketAddress;import java.net.S
2016-06-24 16:12:02
3750
原创 数据库 创建视图
视图: 相当于定义了一个公式模板, 每次调用视图, 直接执行这个公式模板得到相应的数据要执行的sql 语句: SELECT s.*,g.id as gid,g.grade,g.studentid from student s LEFT JOIN grade g on s.id=g.studentid创建视图的语句:create view leftjoin as (SELE
2016-06-23 14:22:13
1181
原创 java 文件加密 用的是md5值进行文件加密
加密解密的背景, 原理和用法在代码注释里代码:import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;impo
2016-06-21 11:46:59
3628
原创 java 生成XML 文件
1.背景:上一篇关于XML 的文章> http://blog.youkuaiyun.com/nx188/article/details/51417535 , 说的是java 解析XML,本文是java 代码将java bean 转化生成XML 文件2.用的 jar 包是 jdom.jar3.代码:package XMLGenerate;import java.
2016-06-16 13:49:46
493
原创 java 求md5值,即md5加密算法
代码:package md5;import java.security.MessageDigest;/** * 求md5值分两步 * 1.拿到字符串的byte数组,注意abc 这种字母的byte 数组就是a一个元素b一个元素c一个元素,即[97,98,99], "我"作为一个汉字他的字节数组是3个byte,即[-26, -120, -111] * 通过字节数组算出hash值的
2016-06-15 18:19:19
1630
原创 java 各种类型10进制转2进制, char 型转byte 型
代码:10进制转二进制, java 代码只提供了int 转,其他可以通过int 来转package decimal2binary;/** * 各种类型10进制转2进制, char 型转byte 型 * @author jialiangli * */public class Decimal2binary { /** * param 数据 * param 类型的位数
2016-06-15 17:55:14
1527
原创 实现可重用性即可扩展性 针对剑指offer 面试题14 把数组所有偶数放在奇数后面
针对上一篇文章 "剑指offer 面试题14 把数组所有偶数放在奇数后面" http://blog.youkuaiyun.com/nx188/article/details/51599210如果需要改成"负数在正数前面"或"被3整除的排不被3整除的前面", 则需要改函数,如何让其具有可扩展性, 即用下面的方法,在判断是正数 / 负数, 奇数 / 偶数时,将方法抽象出来,其他代码复用.抽象出来的方法,用
2016-06-13 09:21:01
518
原创 java 数据类型所占字节数,int char
数据类型所占字节数,代码如下:package SimpleGrammar;/** * * @author jaloli * byte和int,char类型区别如下: 1.byte 是字节数据类型 ,是有符号型的,占1 个字节;大小范围为-128—127 。 2.char 是字符数据类型 ,是无符号型的,占2字节(Unicode码 );大小范围 是0—65535 ;
2016-06-11 09:36:13
2633
原创 java 移位运算符,取反运算符 >> << >>> ~ , java 负数补码存放规则等同于机器存储
移位运算代码如下:package SimpleGrammar;/** * * @author jaloli * * (1)负数存储:java 等同于机器,都是用补码存,补码的规矩, * 负数 -2 ,原码为 10000000000000000000000000000010 * 补码是符号位不变,各位取反+1,补码为 111111111
2016-06-11 09:32:25
826
原创 java compareTo 和 binarySearch
1.compareTo( ) 函数两个维度的compareTo 方法如下写: public int compareTo(WordProperty o) { long diff = this. cityId - o. cityId; diff = ( diff == 0) ? this. typeScore - o. typeScore
2016-06-07 18:14:20
455
原创 剑指offer 面试题14 把数组所有偶数放在奇数后面
两种办法:1.。O(n*n)的方法2.。O(n)的方法代码如下:package algorithm;public class Move2NumberAfter { /** * move2NumberAfter 是O(n*n)的办法 * @param array */ public static void move2NumberAfter(int arra
2016-06-07 00:09:37
410
原创 js 计算 Fibonacci 值,用到知识点:递归调用"匿名函数"
代码:/** * Created by jaloli on 2016/6/6. */var result = function (num) { //这种定义和下面的定义等价,这种,调用result(5)//function fibonacci(num){ //这种定义调用fibonacci(5) return (function(num){ //这个是匿名函数
2016-06-06 13:13:07
897
原创 算法 剑指Offer 面试题32 从1到n整数中1出现的次数
解释:比如1~12, 1 出现了5次常规思路:遍历1~n,每个数的每一位通过曲余判断是否等于1,这样时间复杂度是O(nlogn),而且是这么多次取余运算,计算量很大思路:参考代码中注释,一位一位计算1的个数,每一位判断大于1,等于1,等于0,做相应不同的计算时间复杂度:O(logn),n 是数字,logn 是数字的位数java 代码如下:package algorithm;
2016-06-04 10:20:44
401
原创 java try catch 无论在哪里try ,都不断掉程序Exception 发生后的流程
java 代码如下:(1)package trycatch;public class TryCatch { public static void a (int i) { try { System. out.println(3 / ( i-3)); } catch(Exception
2016-06-01 16:06:02
2578
原创 java 数字时间年月日等 格式化format 输出
代码如下:数字常用类型%s %d 等,如下public static void main(String[] args) { String str=null; str=String.format("Hi,%s", "王力"); System.out.println(str); str=String.format("Hi,%s:%s.%s",
2016-05-24 16:16:16
4494
原创 java 解析dom 树方式来解析XML文件
原理:将XML 文件解析成dom 树(即Document 对象),对document 对象进行操作得到各个节点的名称和节点的值。需要的 jar 包:xml-apis-1.4.01.jar几个需要澄清的概念,如下图:代码:Book.xml 文件 thinking in java 85.5
2016-05-15 16:19:17
1620
原创 java 线程池执行 callable 接口,future 接收callable 接口的返回值
callable 接口和runnable 接口的区别:(1)callable 和runnable 很像, callable 的call() 方法可以等同于runnable 的run() 方法,(2)call() 能返回结果,run()不能。(3)call() 可以抛出受检查的异常,比如ClassNotFoundException, 而run()不能抛出受检查的异常。代码:p
2016-05-15 12:06:45
1425
原创 java Executor 提供的五种线程池
四种线程池说明:Java通过Executors提供四种线程池,分别为:newCachedThreadPool创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程。newFixedThreadPool 创建一个定长线程池,可控制线程最大并发数,超出的线程会在队列中等待。newScheduledThreadPool 创建一个定长线程池,支持定时(
2016-05-15 11:15:11
4793
原创 java 实现N个女人过桥问题
题目描述:N个女人过桥,夜间有一火把,每次最多过两个,必需带火把,过桥速度不一样。过去后必须回来一个人,把火把带回来。要求女人都过去,实现最小过桥时间。如果4个女人过桥,时间为1,2,5,10,那么最小时间是17。思路:在未过桥中选最少时间的两个人过桥,当过桥后选最少时间的人返回,此时火把交给返回的人,同时对己过桥的人进行统计,当还有三人未过桥时(包含返的人),让时间最大的两个
2016-05-14 17:15:00
2198
原创 java 汉诺塔问题
汉诺塔:package HanoTower;/** * 目的:A->C,B是中介 * * 思想:想把n 从A->C,需要把n-1从A->B,再把n-1从B->C,中间将N放在C * 比如将2从A->C,那么将1放在B,(将2放在C),将1放在C, * @author jalo * */public class HanoTower { public static voi
2016-05-10 14:57:21
464
计算机技术论坛总结
2013-11-26
进程管理经典软件MFC
2010-12-03
画图程序大全好用MFC
2010-12-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人