- 博客(28)
- 收藏
- 关注
原创 Spring中构造方法中产生循环依赖注入失败问题
一、简单聊一聊bean的生命周期1.1、名词讲解springfactory中的三级缓存singletonObjects【一级】、earlySingletonObjects【二级】、singletonFactories【三级】三级缓存分别作用:一级:存储经历过完整bean的生命周期后的对象二级:在属性注入情况下存在循环依赖情况,保证对象的单例三级:打破循环依赖,其内部存储为bean名称+普通对象1.2、案例分析假设有三个类A、B、C生命A对象生命周期1、根据构造方法反射生成未初始化对
2022-04-23 11:42:55 295 1
原创 冒泡排序-
冒泡排序/**解题思路: 从头开始遍历间隔元素大小,一次排序即可将最大值移动到最后, 进行多次排序即可。 遍历n-1次*/public static bubbleSort(int[] arr){ for(int i = 0; i < arr.length - 1; i++){ for(int n = 0; n < arr.length - i - 1; n++){ if(arr[n] > arr[n+1]){ int temp = arr[n];
2022-04-04 11:57:46 106
原创 快速排序【递归的两种实现】
快速排序public static void quickSort(int[] arr){ quick(arr,0,arr.length-1);}//挖坑法实现private static void quick(int[] arr,int l,int r){ if(l < r){ int index = arr[l],i=l,n=r; while ( l < r){ //l<r为了防止溢出 while(l<r&&arr[r] &g
2022-04-04 11:51:49 250
原创 JVM垃圾收集器【Serial、ParNew、PS、CMS、Serial Old、PO、G1】总结
JVM垃圾收集器【Serial、ParNew、PS、CMS、Serial Old、PO、G1】总结
2022-02-05 22:42:43 1969
原创 一、List常见问题【多线程】
一、为什么ArrayList不是线程安全? private int size;//size在size++中不能保证原子性,从而产生值覆盖问题public boolean add(E e) { ensureCapacityInternal(size + 1); // Increments modCount!! elementData[size++] = e; return true; }private void ensureCapaci
2021-05-09 01:37:23 442 1
原创 Java后端通用性框架
Java后端通用性框架一、框架技术站单体框架----> springboot + shiro + mybatis-plus + Druid + Redis前后端分离(后端框架)---->springboot + shiro + JWT + mybatis-plus + Druid + Redis二、技术栈分析1、单体框架shiro作为安全框架,功能:认证、授权mybatis-plus作为数据库交互,优势:在不改变原有基础上对mybatis进行二次封装Druid处理高
2021-04-26 16:58:06 237
原创 二、shiro授权流程
一、基本流程概括继承AuthorizingRealm类重写doGetAuthorizationInfo方法实现认证。配置ShiroFilterFactoryBean中的setFilterChainDefinitionMap配置认证规则【PermissionsAuthorizationFilter路径配置权限】二、code配置自定义Realmpublic class MyShiroRealm extends AuthorizingRealm { @Autowired ICom
2021-04-25 23:06:19 248
原创 shiro认证流程
shiro-web认证流程一、认证流程访问Controller接口,获取Subject对象,实现UsernamePasswordToken,调用subject对象login方法,进入AuthenticationRealm对象中的getAuthenticationInfo方法中。先判断缓存中是否存在认证信息,若没有跳转到自定义Realm【注册到SubjectManager中[并且在Realm中配置加密策略]】的doGetAuthenticationInfo中,通过token获取用户名调用数据库获取用户
2021-04-24 14:04:19 443
原创 数据的商业帝国
目前是2021/1/28号的凌晨0:48分,在思考未来数据的用处。展望未来 2020年算是一个IT行业时代变迁的年份,慢慢走向数据时代。目前抖音日活量高达4亿,其背后蕴藏巨大商业价值,广告推广、流量变现,成为网络中的新名词,未来更是数据即是金钱的时代。数据有何用处 产品推广由于目前工作接触跟数据相关,就聊一聊目前淘宝和抖音数据结合。众所周知,淘宝作为一家电商平台,抖音作为一家短视频平台,淘宝负责卖货,抖音负责推广产品,两者相结合不久类似于扩大产品销量,提高产业额。试想一家数据.
2021-01-28 01:01:15 160
原创 快手接口分析(三)——点赞
前两篇文章主要讲解如何获取cookie以及关注,该篇介绍如何实现作品点赞协议接口:https://video.kuaishou.com/graphql【POST】请求格式:Content-type:application/json请求头参数:Cookie请求体参数:{“operationName”:“visionVideoLike”,“variables”:{“photoId”:“3x8dxnirihidx54”,“photoAuthorId”:“3x22qzwuwri3ec4”,“cance.
2021-01-27 23:38:04 5075 1
原创 快手接口分析(二)——关注
快手接口分析(二)——关注实现上一篇文章讲解如何获取快手cookie以及用户信息,这一篇讲解如何通过协议实现关注协议接口:https://video.kuaishou.com/graphql【POST】请求格式:Content-type:application/json请求头参数:Cookie、Referer(必填)请求参数:{“operationName”:“visionFollow”,“variables”:{“touid”:“3x4ww5srw5civu4”,“ftype”:1,“fo
2021-01-27 23:24:22 5259
原创 解析聚合网登录
聚合网登录分析一、_token 查找_token查找:访问 https://passport.juhe.cn/cas/login?s=cas/login 【GET】在返回的text/html文件中header中返现csrf-token并在body里找到**_token**【惊奇发现_token和csrf-token值相同】二、publicKey查找publicKey获取:先访问 https://passport.juhe.cn/cas/login?s=cas/login 【GET】
2021-01-14 16:40:10 1529
转载 java中的Set集合
原文链接:https://blog.csdn.net/mashaokang1314/article/details/83721792概述Set集合类似于一个罐子,程序可以依次把多个对象“丢进”Set集合,而Set集合通常不能记住元素的添加顺序。实际上Set就是Collection只是行为略有不同(Set不允许包含重复元素)。Set集合不允许包含相同的元素,如果试图把两个相同元素加入同一个Set集合中,则添加操作失败,add()方法返回false,且新元素不会被加入。HashSet类HashSet是
2020-11-05 18:20:58 119
原创 Java——深入了解BlockingQueue
什么是BlockingQueue?BlockingQueue隶属JUC中的接口,使用它主要用来解决多线程队列问题。它是java.util.concurrent 中的接口 BlockingQueue<E>,今天我们主要通过ArrayBlockingQueue来分析如何实现安全多线程的队列。ArrayBlockingQueue?ArrayBlockingQueue是BlockingQueue的一个实现类。BlockingQueue和Queue的区别?一:首先BlockingQueu
2020-10-20 21:40:30 99 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人