
Java
文章平均质量分 80
史上最强大乘渡劫老怪
总结与分享是博客的精髓
展开
-
Java热点知识回顾第一期
目录1 反射1.1 静态代理1.2 jdk动态代理1 反射最经典的就是代理模式啦,代理就好比是放了一个你的克隆人一样,但这个克隆人比你的功能更强,能放出一些你没有的招式,这个克隆人就叫就是你的代理对象;代理又分静态代理和动态代理1.1 静态代理直接点来说就是仅仅特定的为某个类做增强,一旦再新来个类,还另需再建代理,不灵活;1.2 jdk动态代理灵活,建立的代理类可增强任意类;怎么创建一个代理对象可以从下边考虑接口 2. 实现类 3. jdk动态代理类实现invocationhandler原创 2021-03-26 11:16:18 · 109 阅读 · 0 评论 -
Java10如何调用C/C++的库jna具体详解
文章目录第一步 导入jna的依赖(就是jni本地方法接口,调用c,c++的库来实现的)第二步,创建自己的DLL第三步第一步 导入jna的依赖(就是jni本地方法接口,调用c,c++的库来实现的) <dependency> <groupId>net.java.dev.jna</groupId> <artifactId>jna</artifactId> <version>5.5.0</version>原创 2020-12-02 17:34:49 · 1450 阅读 · 0 评论 -
Redis和MySQL数据一致性问题
文章目录解决办法: 延时双删策略先修改数据库,再删掉缓存缺点: 若数据库修改失败,缓存依旧还是没删掉,后边用户读到的依旧是Redis中的脏数据先删掉缓存,再修改数据库缺点: 并发条件低时可以使用,并发一旦起来,a线程删除缓存后,还没来得及更新数据库,切换到b线程,b线程发现缓存为空,就又去数据库又读回啦脏数据并写入,后边用户读到的依旧是Redis中的脏数据;解决办法: 延时双删策略删掉缓存修改数据库延时几百毫秒再删掉缓存...原创 2020-11-27 14:11:54 · 1245 阅读 · 0 评论 -
SpringSecurity快速上手
pom文件导入SpringSecurity依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency>创建一个配置类,继承WebSecurityConfigurerAda.原创 2020-11-11 17:31:54 · 358 阅读 · 0 评论 -
Java内部类的常见疑问
文章目录成员内部类静态内部类局部内部类局部内部类常见问题局部内部类是否可在其他方法里new出?匿名内部类java内部类有四种,成员内部类,静态内部类,局部内部类,匿名内部类成员内部类* 成员内部类访问权限 - 成员内部类可以访问外部类的所有成员(静态及非静态方法,变量)* 成员内部类的生成 - 须借助外部类生成定义格式如下:package poyimima.test;import org.junit.Test;import poyimima.dimidir.Father;publ原创 2020-11-05 17:28:01 · 268 阅读 · 0 评论 -
算法踩坑记录,气死啦
踩坑目录二分循环条件情况的忽略递归计算目标时忽略掉参数需进入下一层才能利用二分循环条件情况的忽略力扣原题 排序数组查找元素//正确代码 class Solution { public int[] searchRange(int[] nums, int target) { int leftindex=0,rightindex=nums.length-1; int []num=new int[2]; num[0]=-1;原创 2020-10-17 23:29:20 · 456 阅读 · 0 评论 -
springmvc面经
文章目录概述说下你对springmvc的理解springmvc的优点概述说下你对springmvc的理解springmvc是一种轻量级的web框架,它通过分离model,视图,控制层实现啦降耦,将复杂的逻辑变得更加清晰,方便啦开发springmvc的优点清晰的角色分配,例如前端控制器,处理器映射,视图控制器等,简化开发能够集成spring...原创 2020-10-11 23:11:42 · 334 阅读 · 0 评论 -
spring面经
spring必看面经Spring AOPSpring IOC依赖注入概念 :spring beans概念 :bean的注入方式bean的作用域bean的自动装配Spring AOPaop代理模式分两种静态代理以Aspect aop为代表,其原理是在编译时期,将aspect切面加入到程序字节码文件中,直接修改字节码的内容动态代理,不直接修改字节码的内容,而是生成一个代理对象,此对象包含目标的所有方法,通过代理对象调用目标方法时,就会走代理对象内的方法,完成切面,动态代理又分两种jdk动态代理原创 2020-10-10 23:21:57 · 424 阅读 · 1 评论 -
Java集合方法汇总-力扣刷题必备
- 栈创建栈 Stack stack=new Stack();判断栈是否为空stack.empty();取出栈顶的元素,不弹出注意,元素取出时是object类型,需进行类型强转stack.peek();取出栈顶的元素,弹出stack.pop();存入元素stack.push(元素);栈的大小stack.size();-数组String[] strs={“1”,“2”};长度表示strs.length;...原创 2020-09-27 15:26:08 · 1452 阅读 · 0 评论 -
用Java实现按键精灵的操作
第一步 导入jna的依赖(就是jni本地方法接口,调用c,c++的库来实现的) <dependency> <groupId>net.java.dev.jna</groupId> <artifactId>jna</artifactId> <version>5.5.0</version> </dependency> <dependency> <groupId>原创 2020-08-31 19:04:08 · 3831 阅读 · 1 评论 -
autolt的上传文件的简单概括使用
具体的操作看这位兄台的,很全 添加链接描述ControlFocus("打开","","Edit1");WinWait("[CLASS:#32770]","",10)ControlSetText("打开","","Edit1","D:\360MoveData\Users\疯子似的少年\Desktop\自媒体\license.mp3");Sleep(2000);ControlClick("打开","","Button1");...原创 2020-07-03 16:25:55 · 493 阅读 · 0 评论 -
JVM基础知识回顾总结
JVM内存模型原创 2020-08-30 14:47:49 · 1165 阅读 · 0 评论 -
多线程面经
线程和进程的区别线程只能属于一个进程,而进程可以创建多个线程,且最少创建一个主线程进程是资源分配的基本单位,线程是系统调度的基本单位,线程是真正的执行体线程的五个状态1、新建状态(New):新创建了一个线程对象。2、就绪状态(Runnable):线程对象创建后,其他线程调用了该对象的start()方法。该状态的线程位于“可运行线程池”中,变得可运行,只等待获取CPU的使用权。即在就绪状态的进程除CPU之外,其它的运行所需资源都已全部获得。3、运行状态(Running):就绪状态的线程获取了CPU原创 2020-08-25 19:01:53 · 477 阅读 · 0 评论 -
Java中易忽略的一些基础语法
举例 int j = -1; while (j >= 0&&arr[j]==0){ }这样程序是会正常运行的,但如果反过来就不行,会报错的 int j = -1; while (arr[j]==0&&j >= 0){ }原创 2020-08-19 18:59:14 · 213 阅读 · 0 评论 -
总结下所有的排序
快速排序(是种不稳定的排序,因为会打乱原有的排序)直接引用百科的话,其思想是1)设置两个变量i、j,排序开始的时候:i=0,j=N-1; [1]2)以第一个数组元素作为关键数据,赋值给key,即key=A[0]; [1]3)从j开始向前搜索,即由后开始向前搜索(j–),找到第一个小于key的值A[j],将A[j]和A[i]的值交换; [1]4)从i开始向后搜索,即由前开始向后搜索(i++),找到第一个大于key的A[i],将A[i]和A[j]的值交换; [1]5)重复第3、4步,直到i=j; (原创 2020-08-18 16:29:04 · 231 阅读 · 0 评论 -
制作一个运行java程序的bat命令
cd 到该程序目录java -jar 运行该程序pause 可暂停cmd窗口,不秒退原创 2020-08-13 12:46:40 · 275 阅读 · 0 评论 -
关于动态规划的一些个人理解
动态规划解决的就是需要重复的过程 dp数组 存储已经算过的重复的值还需要抽象化事物的能力,列出状态方程,找到第一个突破点,之后逐步击破到答案原创 2020-08-11 19:56:24 · 213 阅读 · 0 评论 -
自己关于递归的一些理解
递归是一种抽象的概念,比如当我们想要完成某一递归函数DFS()的功能时,你可以先假设这个DFS()已经有你想要的功能啦,之后再书写边界条件,然后再书写具体功能的实现,不关注过程,只关注结果,当然前提在有点思路的情况下这里拿力扣的一道回溯算法题举个例题目链接: 添加链接描述这道题就是求最小平方和的个数,我们可以先设定一个空的DFS()函数,假设这个函数已具备返回平方和的最小个数的功能书写,功能抽象化先直接放下别人的图捋个思路这时候就很明显啦,父亲结点的最小个数即DFS(父)就是众多子节点中DFS原创 2020-08-11 12:17:57 · 192 阅读 · 0 评论 -
HashMap的底层实现原理解读
哈希表的初始化1.HashMap<String, Integer> map = new HashMap<>();当创建HashMap集合对象的时候,在jdk8前,是在HashMap的构造方法中创建一个长度是16的 Entry[] table 用来存储键值对数据的。在jdk8以后不是在HashMap的构造方法底层创建数组了,是在第一次调用put方法时创建的数组 Node[] table 用来存储键值对数据,来看jdk1.8后的源码其中HashMap的部分变量成员先列出来//一个原创 2020-08-09 18:55:42 · 546 阅读 · 0 评论 -
Jsoup获取元素的属性值
添加链接描述遇到js对象时可以将其转为json对象原创 2020-07-23 16:25:24 · 924 阅读 · 0 评论 -
自己摸索的关于腾讯视频的几个接口
一部动漫详情页网址// q后边加你想要的动漫名// ||// \/https://v.qq.com/x/search/?q=%E4%B8%80%E4%BA%BA%E4%B9%8B%E4%B8%8B&stag=102&smartbox_ab=一部动漫id的获取该id就放在源文件下,直接用选择器定位到就好,放图剧集列表属于get原创 2020-07-22 16:53:10 · 7420 阅读 · 0 评论