
java
文章平均质量分 76
Mr.Yougn
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
使用Tika进行文件类型校验
使用Tika进行文件类型校验Tika是什么 我们都知道,普通的文件后缀校验并不能校验出这个文件的类型,大部分的文件类型校验都是通过获取文件的魔数来判断文件的类型,因为对于大多数类型文件来说他的魔数是固定的(例如class文件的魔数就是:CA FE )。所以目前大部分网络上找到的处理方案是将各个文件的魔数放倒Map集合中,然后通过获取文件的魔数,从Map集合查找对应的文件类型。但是同类型的文件的魔数真的都是固定的么?事实上并不是这样的,mp4文件的魔数就不是固定的。那就是意味着,你放了一个mp4的魔数原创 2022-05-06 21:03:23 · 5998 阅读 · 13 评论 -
布隆过滤器:BloomFilter
布隆过滤器:BloomFilter文章目录布隆过滤器:BloomFilter布隆过滤器的应用布隆过滤器的原理布隆过滤器使用(google guava)布隆过滤器的应用布隆过滤器有很多的用途:爬虫地址去重邮箱垃圾邮件处理redis缓存穿透解决去重… …布隆过滤器的原理布隆过滤器是使用 【位数组】+【hash函数】 来实现的:如上图,数据经过N个hash函数计算后,将对应下表的数组数值置为1;当有新的数据进来时,再用N个hash进行计算如果有一个hash函数计算的结果不一致,则说明该原创 2020-12-21 23:38:44 · 203 阅读 · 2 评论 -
显示锁——ReentrantLock 原理探究
显示锁——ReentrantLock 原理探究目录显示锁——ReentrantLock 原理探究@[toc](目录)AQSSyncNonfairSyncFairSync可重入锁java中有两种锁:内置锁和显示锁。内置锁是JVM管理的锁,由synchronized关键字开启,但是它是一个非公平锁。显示锁是可以由java程序员自己控制的锁像本次要介绍的可重入锁:ReentrantLock,它可以设置成一个公平锁。具体原来如何,最近看了下源码,顺便记录下源码所得。AQS先简单介绍下显示锁的代码结构,Ree原创 2020-06-01 21:22:58 · 362 阅读 · 0 评论 -
Mybaits 技术原理(一)
Mybaits 技术原理(一)Mybaits 技术原理(一)传统jdbc实现注意ORM模型简介mybatis 简介mybaits基本构成:mybaits生命周期传统jdbc实现传统jdbc实现流程为: 1. 使用JDBC连接数据库,注册驱动和数据库信息 2. 操作Connecion,打开Statement(PrepareStatement)对象 ...原创 2018-07-22 15:37:52 · 395 阅读 · 0 评论 -
JDK动态代理原理探究
JDK动态代理原理探究JDK动态代理原理探究代理介绍及实现JDK动态代理源码解析总结代理介绍及实现代理介绍及实现JDK动态代理源码解析实现代码:public class ServiceProxy implements InvocationHandler { Object target; public ServiceProx...原创 2018-08-22 23:47:22 · 315 阅读 · 0 评论 -
HashMap原理探究
HashMap原理探究文章目录HashMap原理探究几个关键字解释几个关键方法解读putValresizehash方法几个问题hashMap 原理简单来讲就是,数组链表,一个数组下装的是一个Node链表。几个关键字解释DEFAULT_INITIAL_CAPACITY (默认容量):1 << 4 (16),必须是2的次幂;loadFactor(默认负载因子):默认0.75,...原创 2018-10-18 13:54:31 · 233 阅读 · 0 评论 -
java如何从https下载链接中下载文件
java如何从https下载链接中下载文件文章目录java如何从https下载链接中下载文件从https 下载文件会存在什么用的问题?导入安全证书到jdk下载文件URL 获取inputStreamSpring 的 restTemplate 方法发送请求完整案例:从https 下载文件会存在什么用的问题?普通的http下载非常的简单,无需做任何处理,可以直接用 URL.openStream获取...原创 2019-04-18 22:32:51 · 20511 阅读 · 0 评论 -
Apollo 配置中心搭建与简单说明
Apollo 配置中心搭建与简单说明文章目录Apollo 配置中心搭建与简单说明从git拉取Apollo源码创建所需数据库配置项目apollo-configservice 服务配置apollo-adminservice 服务配置apollo-portal 服务配置SpringBoot项目对接ApolloApollo 原理简单总结从git拉取Apollo源码github地址:https://g...原创 2019-07-02 22:33:16 · 1654 阅读 · 1 评论 -
简单介绍AOP两种实现方式
@(aop)[jdk,cglib]JDK 动态代理CGLib动态代理JDK 动态代理java代理模式学习从入门到放弃CGLib动态代理通过JDK的动态代理 你需要做的是先声明一个动作接口(代理接口)、实现类、代理生成类通过代码可以知道JDK的动态代理必须要接口和实现类这样的搭配组合,而CGLib动态代理则没有这个要求CGLib的代理原理大致就是通过字节码在基础类(委托类)的基础上动态生成一原创 2017-10-09 17:25:45 · 1562 阅读 · 0 评论 -
java代理模式实现
java代理模式学习从入门到放弃@(代理模式)[静态代理,动态代理,InvocationHandler]java的代理模式 分为两种,静态代理和动态代理,学习下什么是代理和静态动态代理的作用。java代理模式学习从入门到放弃代理静态代理静态代理实现动态代理动态代理实现动态代理的意义其他代理什么是代理?代理就像中介,房东想租房,所以房东有租房这个方法,想委托给中介帮忙租出去,所以中介就是原创 2017-08-14 17:50:24 · 1124 阅读 · 0 评论 -
Java8 学习笔记之一
Java8 学习笔记@(in action系列)[java8, lambda, stream]Java8 学习 java8 能高效的快捷的写出简介可读性强的高效率代码,这次的学习内容是:java8 的接口默认方法defualtjava8 Optional类强大的判空功能Java8 学习笔记默认方法解决默认方法冲突的三条规则菱形继承问题用 Optional 取代 null使用 map原创 2017-08-15 15:26:10 · 652 阅读 · 0 评论 -
关于flexjson将json转为javabean的使用
http://blog.youkuaiyun.com/hualom/article/details/7353629 感谢该博主原创 2015-11-20 23:21:15 · 2121 阅读 · 0 评论 -
Java 深度克隆与浅克隆
以下内容转自:桔子园 http://www.blogjava.net/orangelizq/archive/2007/10/17/153573.html 1. Clone&Copy 假设现在有一个Employee对象,Employee tobby =new Employee(“CMTobby”,5000),通常我们会有这样的赋值Employee cindyelf=tob转载 2016-12-02 17:24:15 · 277 阅读 · 0 评论 -
静态工厂方法和实例工厂方法
在学习Spring bean的实例化方式的时候遇到的一个问题,Spring bean实例化有3种方法 1、构造器生成 2、静态工厂方法 3、实例工厂方法 那么问题来了,什么是静态工厂方法,什么是实例工厂方法? 静态工厂方法: 顾名思义就是直接可以通过静态方法来实例化一个对象 如:public class He原创 2017-02-05 11:56:26 · 10000 阅读 · 0 评论 -
spring邮箱发送问题
在做项目的时候发现,用spring邮箱发送的时候126邮箱怎么都发送不了,用户名和密码都是正确的 后来百度后发现,有些邮箱是用授权码(126邮箱开启stmp和pop3协议的时候会要求设置授权码)进行发送配置的(相关授权码信息可以在126邮箱中查找到)原创 2017-02-05 11:58:24 · 329 阅读 · 0 评论 -
Spring创建单例bean
Spring创建bean是有一个Scope。默认是单例。 如何证明Spring创建的Bean就是单例?Spring单例有什么意义在?Spring创建的bean是否是单例很好判断:ApplicationContext context = new ClassPathXmlApplicationContext("spring-mvc.xml");HelloWorld helloWorld = (Hell原创 2017-02-05 22:11:22 · 1281 阅读 · 0 评论 -
Java 反射学习
最近在看《java 核心技术》基础篇中,看到了反射一节。记录下,待后续参考复习;原创 2017-03-31 15:02:55 · 355 阅读 · 0 评论 -
com.sun.mail.smtp.SMTPSendFailedException: 554 MI:SPB UserReject 0,smtp7
开发过程中遇到:Failed messages: com.sun.mail.smtp.SMTPSendFailedException: 554 MI:SPB UserReject 0,smtp7,C8CowABnsSRz+OVYTTvPBA--.59938S2 1491466355,please feedback at http://feedback.mail.126.com/antispam/co原创 2017-04-06 16:44:13 · 15754 阅读 · 1 评论 -
关于java中hashCode与equals为什么一起重写的问题
java中当hashCode与equals的一同重写主要是为了提高效率,出现在集合中。我们都知道hashSet中是不能 出现相同的元素的,那么实现它的这个方法就是通过equals方法进行比较,然而这样的效率并不高,因为假如我们存入很多元素,而在插入元素时将有很多次的比较,这显然效率不高。而有了hashCode之后,元素在进行比较时先看看由hashCode计算出来的地址中是否有元素,没有则直接存入,原创 2015-08-13 00:10:12 · 469 阅读 · 0 评论