浅谈Android的Lifecycle源码分析
1. 简介很早就听说了Google的Lifecycle组件,因为项目没有使用过,所以并没有过多的接触。不过最近看到了一篇文章,其中的一条评论提到了LiveData。恰巧这两天工作内容不多,所以赶紧研究一波!不过在看LiveData之前,我觉得还是先看下Lifecycle吧(Lifecycle更像是LiveData的基础)。2. Lifecycle的简单介绍L...
2024-01-10Linux系统扩容根目录磁盘空间的操作方法
一、使用背景Linux根目录磁盘空间不够用了,当修改了虚拟机模版增加磁盘大小或者插入了一块新硬盘,但是发现系统里的大小还是没改变。产生的原因是没有给磁盘格式化,没有增加分区。二、操作方法1. 查看磁盘空间大小,使用df -h 命令,发现挂载根目录节点的/dev/mapper/ubuntu14--vg-root 只有28G容...
2024-01-10基于SecureCRT向远程Linux主机上传下载文件步骤图解
有时候直接在Linux服务器上通过 wget 或 curl 工具下截比较大的网络文件时会比较慢,这时我们通常会改用在Windows平台通过迅雷等更加现代化的下载功具下好目标文件(迅雷开会员才能更高速的恶心操作是题外话哈,话说我也送了不少钱给迅雷~~~),这时就面临要把Windows平台下的文件传送到远程Linux...
2024-01-10关于antd tree和父子组件之间的传值问题(react 总结)
项目需求:点击产品树节点时获取该节点的所有父节点,同时回填表格的搜索条件,完成搜索功能,搜索结果展示在下方的table中。写了三个组件:现在有个业务场景交互:在orderTree组件中点击树节点,获取当前节点以及所有的父节点的Id 放入一个对象arrKeys中,并在orderForm组件中使用(回填类型下...
2024-01-107个好用的TypeScript新功能
目录1. 可选链2. 空值合并3. 递归类型别名4. 断言签名5. 为 Promise 提供更好的反馈6. Unicode 标识符7. 增量编译1. 可选链从 v3.7 可用这是当你尝试访问嵌套数据时的一个痛点,嵌套数据越多,代码就会变得越繁琐。在下面的例子中,要访问address,你必须遍历data.customer.address,而且data或customer有可能是undefi...
2024-01-10Java中集合关系图及常见操作详解
下面是一张下载的Java中的集合类型的继承关系图,便于正确的理解和使用相应的集合类型。几个面试常见问题:1.Q:ArrayList和Vector有什么区别?HashMap和HashTable有什么区别? A:Vector和HashTable是线程同步的(synchronized)。性能上,ArrayList和HashMap分别比Vector和Hashtable要好。2.Q:大致讲解java集合的体...
2024-01-10spring集成mybatis实现mysql数据库读写分离
前言 在网站的用户达到一定规模后,数据库因为负载压力过高而成为网站的瓶颈。幸运的是目前大部分的主流数据库都提供主从热备功能,通过配置两台数据库主从关系,可以将一台数据库的数据更新同步到另一台服务器上。网站利用数据库的这一功能,实现数据库读写分离,从而改善数据库...
2024-01-10通过Class类获取对象(实例讲解)
通过Class对象获取对象的方式是通过class.newInstance()方式获取,通过调用默认构造参数实例化一个对象。/** * Created by hunt on 2017/6/27. * 测试的实体类 * @Data 编译后会自动生成set、get、无惨构造、equals、canEqual、hashCode、toString方法 */@Datapublic class Person { private String name; private int age;}/** * Created by...
2024-01-10使用Spring的AbstractRoutingDataSource实现多数据源切换示例
最近因为项目需要在做两个项目间数据同步的需求,具体是项目1的数据通过消息队列同步到项目2中,因为这个更新操作还涉及到更新多个库的数据,所以就需要多数据源切换的操作。下面就讲讲在Spring中如何进行数据源切换。这里是使用AbstractRoutingDataSource类来完成具体的操作,AbstractRoutingDataSource是Sp...
2024-01-10微信企业号验证/发送/接收消息
1. 内网映射由于微信企业号回调模式的URL尽支持域名方式访问,估需要注册花生壳,做一个内网穿透(需要花16块钱,购买一个免费版,购买之后,第二天才能添加上域名)2. 微信企业号注册微信企业号:https://qy.weixin.qq.com/ (选择团队,团队不需要认证)通讯录:新建组织 - > 关注成员企业号 -> 应...
2024-01-10Java使用设计模式中的工厂方法模式实例解析
工厂方法模式的定义工厂方法(Factory Method)模式的意义是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类当中。核心工厂类不再负责产品的创建,这样核心类成为一个抽象工厂角色,仅负责具体工厂子类必须实现的接口,这样进一步抽象化的好处是使得工厂方法模式可以使系统在不修改...
2024-01-10JAVA设计模式之解释器模式详解
在阎宏博士的《JAVA与模式》一书中开头是这样描述解释器(Interpreter)模式的:解释器模式是类的行为模式。给定一个语言之后,解释器模式可以定义出其文法的一种表示,并同时提供一个解释器。客户端可以使用这个解释器来解释这个语言中的句子。解释器模式的结构 下面就以一个示意性的系...
2024-01-10Java进阶教程之异常处理
程序很难做到完美,不免有各种各样的异常。比如程序本身有bug,比如程序打印时打印机没有纸了,比如内存不足。为了解决这些异常,我们需要知道异常发生的原因。对于一些常见的异常,我们还可以提供一定的应对预案。C语言中的异常处理是简单的通过函数返回值来实现的,但返回值代表的含义...
2024-01-10Analysis of CVE-2019-11229 -- From Git Config to RCE
Author: LoRexxar'@Knownsec 404 TeamDate: July 23, 2019Chinese Version: https://paper.seebug.org/989/On April 15, 2019, gitea was once exposed a vulnerability. It happened that I was curious about this vulnerability so I started to study it. The description...
2024-01-10c++中关于lambda表达式和bind函数的问题?
描述你的问题这是c++ primer 的一道习题,练习10.24,其中有一行代码auto predicate = [&](int i){ return bind(check_size, str, i)(); };这行lambda表达式中为什么要在bind()后面多增添一个括号?若不添括号则报错贴上相关代码(不添括号的情况下)auto check_size(string const& str, size_t sz){ return str.size() < sz;}auto find_first...
2024-01-10在事件/委托中使用Thread.Sleep无果,请指点?!
各位好:最近在学习《C#2010图解教程》中的“事件”一章,并照着敲了一遍代码。但是得到的结果和书中的结果不一样。。。。先看代码:大体的框架很简单,就是生成一个我们自定义的事件MyElapsed,利用system.timers.timer中的公共事件Elapsed计时器,把触发自定义事件MyElapsed的私有方法OnOneSecond注册到公...
2024-01-10iOS CGContext 画图在 UIView和CALayer用相同代码画出来之后线有差异?
这是图,上面的是用UIView,下面的使用CALayer。明显Layer上面有锯齿。这种个情况如何解决呢?代码如下CGContextRef ctx = UIGraphicsGetCurrentContext();CGContextSetLineWidth(ctx, 10);CGContextSetLineJoin(ctx, kCGLineJoinRound);CGContextSetStrokeColorWithColor(ctx, [UIColor redColor].CGColor);CGContext...
2024-01-10Finagle 和其他 RPC 协议之间的关系?
这几天接触了 Finagle 框架,有点疑惑它和其他 RPC 协议之间的关系。首先,阅读博客 深入理解 RPC 之协议篇 | 徐靖峰|个人博客 的时候了解到,RPC 框架可以分为 protocol > transport > codec > serialize 的层次。而 RPC 协议 主要用于配置 refer(发现服务) 和 exporter(暴露服务) 的实现方式。但是看这张图,RPC ...
2024-01-10Java:使用VisualVM远程连接时为何不能观察线程?
工程已打包成jar发布到远程服务器上,想使用VisualVM远程连接JVM观察线程,但发现远程连接不支持线程上图是本地JVM,可以看到线程的详细信息,下图是用jstatd连接到远程JVM,不能查看线程,并且其他信息也少了很多,这是为什么呢?是功能所限还是我没配置好呢?如果是功能所限那用什么工具可以...
2024-01-10php 如何 decode JAVA base64的数据,JAVA 用的自带的base64,非apache.commons
刚对接一个数据接口,需要用 base64 进行转码。正常转码都没问题,但这次一直对接不一致。原因是他们 (java) 用的自带的 base64 类库,而非 apache.commons 的标准库,导致我没有办法解码出正确数据。而他们的 post 接口已经被写成公有方法,且有其他对接方在使用,无法单独给我重写一个接口。所以,需要...
2024-01-10