自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(158)
  • 资源 (1)
  • 收藏
  • 关注

原创 华为手机 scrcpy 使用

1、了解Scrcpy - 开源免费投屏控制软件 - 安卓应用推荐 - 画夹插件网2、下载附件里面包含了adb和scrcpy3、手机通过usb链接电脑,打开开发者模式,和usb调试4、运行cmd

2021-09-16 01:58:49 1320

转载 机器学习算法:18大数据挖掘的经典算法以及代码Java实现

https://python.ctolib.com/article/wiki/95851数据挖掘十大类经典算法基于Java8实现。算法目录常用的标准数据挖掘算法包名 目录名 算法名 AssociationAnalysis DataMining_Apriori Apriori-关联规则挖掘算法 AssociationAnalysis Da...

2019-03-01 16:33:16 3944

原创 算法:hamming 海明距离(汉明距离):Java实现

在信息论中,两个等长二进制字符串之间的汉明距离是两个字符串对应位置的不同字符的个数。例如,1011101 与 1001001 之间的汉明距离是 2。汉明距离是以理查德·卫斯里·汉明的名字命名的,汉明在误差检测与校正码的基础性论文中首次引入这个概念。在通信中累计定长二进制字中发生翻转的错误数据位,所以它也被称为信号距离。汉明重量分析在包括信息论、编码理论、密码学等...

2019-02-28 16:32:41 3359

转载 算法:汉明距离 vs 编辑距离 区别

1 汉明距离在信息论中,两个等长字符串之间的汉明距离是两个字符串对应位置的不同字符的个数。例如,1011101 与 1001001 之间的汉明距离是 2。汉明距离是以理查德·卫斯里·汉明的名字命名的,汉明在误差检测与校正码的基础性论文中首次引入这个概念。在通信中累计定长二进制字中发生翻转的错误数据位,所以它也被称为信号距离。汉明重量分析在包括信息论、编码理论、...

2019-02-28 16:19:56 2866

原创 获取 java文件的路径

1、获取当前项目的路径System.getProperty("user.dir")我的项目是parse,结果为: 2、获取java编译后的.class文件的根目录System.out.println(Thread.currentThread().getContextClassLoader().getResource(""));System.out.println(T...

2019-02-23 20:33:50 211

原创 算法:LevenshteinDistance编辑距离:两个字符串的相似度,Java实现

编辑距离(Levenshtein):两个字符之间有一个转成另一个所用的最少的编辑操作次数,操作包括:替换、插入、删除一个字符。定义: 原理:首先考虑极端情况,当或长度为0时,那么需要编辑的次数就是里一个字符串的长度。然后再考虑一般情况,此时分为三种情况:在k个操作中,将a[1...i]转换为b[1...j-1]:例如:a(abc) b(abcd)在k...

2019-01-12 20:26:52 1139

原创 算法:LCS(最长公共子序列)Java实现

 运用动态规划思想:https://blog.csdn.net/u013921430/article/details/792996781)最长公共子序列的长度的动态规划方程 设有字符串a[0...n],b[0...m],下面就是递推公式。字符串a对应的是二维数组num的行,字符串b对应的是二维数组num的列。    2)String left="helloword";S...

2019-01-12 16:19:14 3525

原创 一个在Windows下使用Linux命令 gnuwin32 项目的安装与使用

一、下载gnuwin32项目,链接:https://sourceforge.net/projects/getgnuwin32/?source=typ_redirect,或者从官网下载。二、解压缩下载的文件:  将解压后的文件放在自定义文件夹下。三、进行文件安装:1、双击刚才解压的文件,安装到自定义的文件夹下;2、如图所示一些文件:双击download.bat文件,会...

2019-01-09 19:51:53 4414

原创 用cmd 编辑.java 成.class 和 将.class打包为jar

一、编译1、有文件目录是这样:E:\JLex\Main.java2、Windows键+R键,打开cmd3、转换到  E:\JLex  文件夹, 英文模式下,先变盘操作:"e:",在转盘下的文件夹操作:"cd JLex"4、用javac Main.java 进行编译,没有报错说明编译成功,如果你是win10 系统会出现javac不是内部命令,看这里:https://www...

2019-01-07 20:20:21 2330 2

原创 获取项目中所用到的jar的路径,并获取项目所有jar包里面的所有class文件

一定要用URLClassLoader,其他ClassLoader不会有getURLs(),同时一定要加括号强制转化import java.net.URL;import java.net.URLClassLoader;public class Test { public static void main(String args[]) { ClassLoader...

2018-12-20 17:19:52 890

转载 Java遍历包中所有类包括jar包(完整转载)

第一部分转自 :http://blog.csdn.net/wangpeng047/article/details/8124390第二部分转自:http://blog.csdn.net/wangpeng047/article/details/8202353第三部分转自:http://blog.csdn.net/wangpeng047/article/details/8202353第一部分...

2018-12-20 14:54:30 4403 1

转载 使用IntelliJ IDEA 配置Maven

1. 下载Maven 官方地址:http://maven.apache.org/download.cgi(1)解压,将有bin的上一层文件夹复制到,自己建的maven文件夹下,(2)然后在同一个文件夹下(maven),新建一个本地仓库文件夹LovalWareHouse2.配置本地仓库路径  打开后搜索<localRepository>,就会发现下面的是被注释了...

2018-12-19 16:44:41 200

转载 maven 最基本配置pom.xml配置

创建的test项目,一个基本项目的pom.xml文件,通常至少有三个部分这个是pom.xml的头<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://mav...

2018-12-19 14:14:47 4092

转载 距离(distance)算法小结

18种和“距离(distance)”、“相似度(similarity)”相关的量的小结在计算机人工智能领域,距离(distance)、相似度(similarity)是经常出现的基本概念,它们在自然语言处理、计算机视觉等子领域有重要的应用,而这些概念又大多源于数学领域的度量(metric)、测度(measure)等概念。 这里拮取其中18种做下小结备忘,也借机熟悉markdown的数学公式语法...

2018-12-04 14:50:51 23594

转载 文本相似性算法:Simhash算法原理及实践

 simhash(局部敏感哈希)的原理simhash的背景 simhash广泛的用于搜索领域中,也许在面试时你会经常遇到这样的问题,如果对抓取的网页进行排重,如何对搜索结果进行排重等等。随着信息膨胀时代的来临,算法也在不断的精进,相似算法同样在不断的发展,接触过lucene的同学想必都会了解相似夹角的概念,那就是一种相似算法,通过计算两个向量的余弦值来判断两个向量的相似性,但这种方式需...

2018-12-04 13:44:34 1374

转载 annotation与框架的那些秘密

在大家使用spring MVC或Hibernate 3.0以上的版本时,可能会注意到annotation带来的方便性,不过这往往让人觉得annotation真的很强大,而这算是一种接近错误的理解吧,annotation其实本身是属于一种文档注解的方式,帮助我们在编译时、运行时、文档生成时使用,部分annotation其实基本和注释差不多,这里其实是要说下annotation的原理,以及各种功能在它...

2018-09-22 20:37:02 331

转载 jdk动态代理和cglib动态代理

2、CountImpl.java  package net.battier.dao.impl; import net.battier.dao.Count; /** * 委托类(包含业务逻辑) * * @author Administrator * */ public class CountImpl implements Count { ...

2018-09-22 19:59:15 1361

转载 框架,JavaBeans与内省(Introspector)和反射

1.Java框架(frame)/*通俗例子: 我做房子(框架)卖给用户住,由用户自己安装门窗和空调(用户自定义类/用户自定义其它信息) 用户需要使用我的房子(框架),把符合框架中结构的门窗插入进我提供的框架中.框架与工具类区别: 框架调用用户提供的类 工具类被用户的类调用示例: 利用反射运行指定的某个类中的main方法, 通过arg[0...

2018-09-22 18:44:14 1090

原创 String 和 document 的相互转换总结

获取xml中某一节点内容: public static String getValueByTagName(Document doc, String tagName){ if(doc == null || StringUtil.isNull(tagName)){ return ""; } NodeList pl = doc.getElementsByTagNa...

2018-09-22 17:46:52 4100

原创 java 四大内部类

成员内部类 静态内部类 局部内部类 匿名内部类 1、成员内部类定义在另一个类(外部类)的内部,而且与成员方法和属性平级叫成员内部类,......相当于外部类的非静态方法,如果被static修饰,就变成静态内部类了。注意事项:成员内部类中不能存在static关键字,即,不能声明静态属性、静态方法、静态代码块等。【非静态内部类也可以定义静态成员但需要同时有final关键词修饰,...

2018-09-15 15:37:25 190

原创 java 实现两个大位数相乘

(1)用Java内部实现的BigInteger里面的函数multiply(); Scanner sc=new Scanner(System.in); String s1=sc.nextLine(); String s2=sc.nextLine(); BigInteger a =new BigInteger(s1); ...

2018-09-15 13:55:29 1772

转载 Java并发编程:CountDownLatch、CyclicBarrier和Semaphore

在java 1.5中,提供了一些非常有用的辅助类来帮助我们进行并发编程,比如CountDownLatch,CyclicBarrier和Semaphore,今天我们就来学习一下这三个辅助类的用法。  以下是本文目录大纲:  一.CountDownLatch用法  二.CyclicBarrier用法  三.Semaphore用法  若有不正之处请多多谅解,并欢迎批评指正。  请...

2018-09-04 14:33:24 115

转载 zookeeper实现分布式锁

一、分布式锁介绍        分布式锁主要用于在分布式环境中保护跨进程、跨主机、跨网络的共享资源实现互斥访问,以达到保证数据的一致性。实现分布式锁目前有三种流行方案,分别为基于数据库、Redis、Zookeeper的方案,其中前两种方案网络上有很多资料可以参考,本文不做展开。我们来看下使用Zookeeper如何实现分布式锁。什么是Zookeeper?Zookeeper(业界简称z...

2018-09-03 16:42:42 137

转载 多线程(九)线程池

如何理解线程池的工作机制和原理?(1)线程池是用来干嘛的,用它有什么好处,怎么能更好的去用线程池?线程池是用来干嘛的? 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。 那么有没有一种办法使得线程可以复用,就是执行完一个任务,并不被销毁,而是可以继续执行其他的任务? 使用线程池的好处 ...

2018-09-02 16:27:12 161

转载 Zookeeper介绍

目录   一 .Zookeeper功能简介   二 . ZooKeeper基本概念     2.1  集群角色     2.2 集群节点分工     2.3  session     2.4 数据节点     2.5 状态信息     2.6 事物操作     2.7  Watcher(事件监听器)   三 .zookeeper应用的典型场景     3.1 数据发布与订阅(...

2018-08-31 18:26:21 139

转载 分布式通信框架-RMI

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lmy86263/article/details/72594760此处讲的是Java中的RMI,而不是通用意义上的RMI,关于通用的RMI可以参考分布式之RPC的协议以及错误处理 这篇文章。一、Java RMI简介RMI(remote method invocation)  , 可以认为是...

2018-08-31 15:00:41 882

转载 分布式架构的演进过程

一.分布式架构的发展历史     1946年,世界上第一台电子计算机在美国的宾夕法尼亚大学诞生,它的名字是:ENICAC ,这台计算机的体重比较大,计算速度也不快,但是而代表了计算机时代的到来,再以后的互联网的发展中也有基础性的意义。     计算机的组成是有五部分完成的,分别是:输入设备,输出设备,存储器,存储器里面由运算器和控制器,有一个冯诺依曼的模型非常形象的对象计算机的组成进行了描...

2018-08-30 14:09:25 241

转载 Intellij IDEA中使用MyBatis-generator 插件自动生成MyBatis代码

1、要用maven生成pom.xml选中项目——>右键——>选择Add Framworks Support——>选择maven ,他会自动生成pom.xml文件maven在编译的时候,默认使用的是jdk1.5,如果要指定jdk的版本,需要在pom.xml文件中加入如下配置(修改jdk版本为1.8)2、修改jdk版本和加入org.mybatis.genera...

2018-08-22 15:27:51 16511

转载 关于IDEA idea .java文件 右下角有个红色j,解决方法

也不知道为什么会出现这种情况:.class文件全都变成左下角一个红色的j文件,不可以编译。路径不是你自己项目的路径。在运行Java程序时有了这个报错:Cannot start compilation: the output path is not specified for module “Test”. Specify the output path in Configure Pro...

2018-08-22 14:47:47 14341

转载 获取数据库中的增量数据

       a.触发器:在要抽取的表上建立需要的触发器,一般要建立插入、修改、删除三个触发器,每当源表中的数据发生变化,就被相应的触发器将变化的数据写入一个临时表,抽取线程从临时表中抽取数据,临时表中抽取过的数据被标记或删除。触发器方式的优点是数据抽取的性能较高,缺点是要求业务表建立触发器,对业务系统有一定的影响。         b.时间戳:它是一种基于快照比较的变化数据捕获方式,在源表上...

2018-08-20 16:08:53 4748

转载 HashMap分析之红黑树树化过程

概述HashMap是Java程序员使用频率最高的用于映射(键值对)处理的数据类型。随着JDK(Java Developmet Kit)版本的更新,JDK1.8对HashMap底层的实现进行了优化,例如引入红黑树的数据结构和扩容的优化等。本文主要分析一下HashMap中红黑树树化的过程。jdk1.8 HashMap为什么当链表长度大于等于8时才转成红黑树?因为红黑树的平均查找长度是log...

2018-08-20 14:38:46 1662 1

转载 表设计三大范式

第一范式(1NF)无重复的列第二范式(2NF)属性完全依赖于主键第三范式(3NF)属性不依赖于其它非主属性第一范式:确保每列的原子性.如果每列(或者每个属性)都是不可再分的最小数据单元(也称为最小的原子单元),则满足第一范式.例如:顾客表(姓名、编号、地址、……)其中"地址"列还可以细分为国家、省、市、区等。第二范式:在第一范式的基础上更进一层,目标是确保表中的每列都和主键相关.如果...

2018-08-17 17:41:55 2711

转载 数据库事务ACID及隔离级别

本篇讲诉数据库中事务的四大特性(ACID),并且将会详细地说明事务的隔离级别。  如果一个数据库声称支持事务的操作,那么该数据库必须要具备以下四个特性:⑴ 原子性(Atomicity)  原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,这和前面两篇博客介绍事务的功能是一样的概念,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响。⑵ 一...

2018-08-17 17:35:54 177

转载 死锁

一. 什么是死锁?     如果一个进程集合里面的每个进程都在等待这个集合中的其他一个进程(包括自身)才能继续往下执行,若无外力他们将无法推进,这种情况就是死锁,处于死锁状态的进程称为死锁进程二. 死锁产生的原因?1.因竞争资源发生死锁 现象:系统中供多个进程共享的资源的数目不足以满足全部进程的需要时,就会引起对诸资源的竞争而发生死锁现象(1)可剥夺资源和不可剥夺资源:可剥夺资源是...

2018-08-17 17:18:57 138

转载 常见的4种线程池(保证你能看懂并理解)

0.前言转载请注明出处:http://blog.csdn.net/seu_calvin/article/details/52415337使用线程池可以给我们带来很多好处,首先通过线程池中线程的重用,减少创建和销毁线程的性能开销。其次,能控制线程池中的并发数,否则会因为大量的线程争夺CPU资源造成阻塞。最后,线程池能够对线程进行管理,比如使用ScheduledThreadPool来设置延迟N...

2018-08-17 16:50:57 2193 1

转载 简单工厂、工厂方法、抽象工厂区别

结合简单示例和UML图,讲解工厂模式简单原理。一、引子话说十年前,有一个爆发户,他家有三辆汽车(Benz(奔驰)、Bmw(宝马)、Audi(奥迪)),还雇了司机为他开车。不过,爆发户坐车时总是这样:上Benz车后跟司机说“开奔驰车!”,坐上Bmw后他说“开宝马车!”,坐上 Audi后他说“开奥迪车!”。你一定说:这人有病!直接说开车不就行了?!而当把这个爆发户的行为放到我们程序语言中来,...

2018-08-17 11:38:19 15216 6

转载 RPC 原理

在校期间大家都写过不少程序,比如写个hello world服务类,然后本地调用下,如下所示。这些程序的特点是服务消费方和服务提供方是本地调用关系。而一旦踏入公司尤其是大型互联网公司就会发现,公司的系统都由成千上万大大小小的服务组成,各服务部署在不同的机器上,由不同的团队负责。这时就会遇到两个问题:1)要搭建一个新服务,免不了需要依赖他人的服务,而现在他人的服务都在远端,怎么调用?2)其它团队要...

2018-08-16 19:00:46 140

转载 常见负载均衡算法

一、概要    随着系统日益庞大、逻辑业务越来越复杂,系统架构由原来的单一系统到垂直系统,发展到现在的分布式系统。分布式系统中,可以做到公共业务模块的高可用,高容错性,高扩展性,然而,当系统越来越复杂时,需要考虑的东西自然也越来越多,要求也越来越高,比如服务路由、负载均衡等。此文将针对负载均衡算法进行讲解,不涉及具体的实现。二、负载均衡算法    在分布式系统中,多台服务器同时提供一个...

2018-08-16 16:59:21 213

转载 (6) - Quartz项目实战

本片博文将阐述项目工作中使用Quartz的情况,包含项目背景、项目框架、Quartz集群部署等方面,重点讲述如何在实际项目中使用Quartz。1. 背景因项目需求,需要定时调用数据下载接口,并将数据存储至诸如mongo、redis、elasticsearch等数据库或缓存中。具体涉及到的需求如下:a. 调用接口的任务均从mongo数据库读取;b. 任务的个数随着业务量的增加而增加;...

2018-08-16 15:49:37 221

转载 (5) - Quartz的Job存储及集群部署

1. Job的存储与持久化  Quartz的JobStore接口定义了作业Job、触发器trigger、调度器Scheduler等数据存储机制。Quartz主要有两种Job存储类型:内存存储RAMJobStore和持久化存储JDBCJobStore。下面将对其一一介绍。2. RAMJobStore  RAMJobStore是将Quartz涉及到的Job、Trigger、Schedule...

2018-08-16 15:44:11 176

scrcpy110.zip

scrcpy和adb 使用包

2021-09-16

空空如也

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

TA关注的人

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