自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(47)
  • 收藏
  • 关注

转载 Android构建自己的基础组件库

随着计蒙学习Android时间的增长,在接手了多个项目后,各种功能模块代码也写得比较多,在新旧项目的开发中,有很多功能模块是类似的,代码也可重复利用,工作那段时间没有时间整理,每次都得去另一个项目中CV,项目越来越多后,很难找到,只能从头开始敲,浪费了大量的时间。计蒙询问了多个Android开发大佬,给出的建议统一是构建自己的组件库,不要重复造“轮子”。获取应用屏幕的宽度(单位:px)获取应用屏幕的高度(单位:px)获取屏幕的宽度(单位:px)获取屏幕的高度(单位:px)判断App是否是系统应用。

2025-01-20 12:02:55 284

原创 Android Webview H5 秒开方案实现

怎样提高WebView的加载速度其实涉及到的方面很多,需要注意的细节也很多,没有办法一概而论。大家需要按照公司的业务需要量体裁衣,按需配置。本文Demo参考Android:手把手教你构建全面的WebView缓存机制&资源加载方案WebView缓存原理分析和应用H5和移动端WebView缓存机制解析与实战腾讯祭出大招VasSonic,让你的H5页面首屏秒开!《移动端本地H5秒开方案探索与实现》参考Android:手把手教你构建全面的WebView缓存机制&资源加载方案。

2025-01-20 10:45:40 697

原创 2024年最新的babel兼容性实现方案

除了语法转换,另一个重要的功能是**「对api的处理,也就是在代码中引入polyfillcore-jsapicore-jsfalsecore-jsapi7.4.0core-js@2core-js@3corejs「如果设置了选项(不为false)就得设置corejs版本,否则babel将会发出警告」**。“useBuiltIns”:“usage”,//也可配置成entry,配置为false则不需要配置corejs“corejs”:3//也可配置成2是babel7。

2025-01-20 09:12:23 782

原创 mysql进阶(二十八)GRANT REVOKE用法_grant和revoke语法

dba可以查询testdb中的表。–dba可以查询MySQL中所有数据库中的表。–dba可以管理MySQL中的所有数据库。

2025-01-18 09:23:13 806

原创 MySQL索引原理B+树

以根节点为例,关键字为17和35,P1指针指向的子树的数据范围为小于17,P2指针指向的子树的数据范围为17~35,P3指针指向的子树的数据范围为大于35。插入或删除一个节点后,根节点的左孩子(LeftChild)的右孩子(RightChild)还有非空节点,导致根节点的左子树高度比右子树高度高2,AVL树失去平衡。对该二叉树的节点进行查找发现深度为1的节点的查找次数为1,深度为2的查找次数为2,深度为n的节点的查找次数为n,因此其平均查找次数为(1+2+2+3+3+3)/6=2.3次。

2025-01-18 09:17:00 430

原创 【后台开发】0基础上手springboot第一个项目[mysql、jpa进阶教程]_后台第一个项目

可用于配置一些动态的api或者密码单个值映射yml里面自定义配置:baidu:使用:对象映射在类开头直接加前缀,就会自动映射类中同名的字段这个类的各种熟悉都会一一映射baidu.xxx。

2025-01-14 16:47:48 797

原创 【单片机笔记】STM32+ESP8266通过AT指令WIFI连接阿里云MQTT服务器_单片机发送at指令使wi-fi模块进入ap模式并配置好账户密码方便进行云平台的连接

if(_net.Check()==0) //使用AT指令检查ESP8266是否存在。if(FindStr((char*)_net.rxbuf,“OK”,500)==0) //设置不成功。//重启ESP8266。

2025-01-14 16:44:07 1125

原创 【包学包会】从一次请求开始,深入探索OkHttp

复制代码通过构造方法进入,看看这个到底是什么:constructor() : this(Builder()) //默认构造 传入Builder实例internal var dispatcher: Dispatcher = Dispatcher()//调度器internal var connectionPool: ConnectionPool = ConnectionPool()//连接池。

2025-01-14 16:40:24 735

原创 Linux 系统安装 AutoFs 挂载服务_autofs4

[root@localhost ~]# yum install autofsLoaded plugins: langpacks, product-id, subscription-manager…Running transactionInstalling : hesiod-3.2.1-3.el7.x86_64 1/2Installing : 1:autofs-5.0.7-40.el7.x86_64 2/2Verifying : hesiod-3.2.1-3.el7.x86_64 1/2Veri

2025-01-11 22:44:39 658

原创 Linux 性能优化的全景指南,都在这一篇里了,建议收藏!

pidstat -w -u 1 #查看到底哪个进程导致的问题ab -c 10 -n 100 http://XXX.XXX.XXX.XXX:10000/ #测试Nginx服务性能perf top -g -p XXXX #对某一个php-fpm进程进行分析。

2025-01-11 22:40:58 541

原创 Linux Secret

code.c是程序来源,查看其他人的wp,并结合代码,可以尝试利用count二进制文件来读取ssh密钥,然后在文件处理程序被破坏前使程序崩溃,程序崩溃后,会在/var/crashes目录下创建一个core dump文件。所以,可以执行程序,然后让程序读取/root/.ssh/id_rsa密钥文件,在使用ctrl+z置于后台,发送对应信号,当重新把程序置于前台时,就会崩溃并创建转储文件。尝试执行该文件,提示需要输入文件名,所以输入了/root/root.txt,程序统计了文件中的字数,并且提示是否保存文件。

2025-01-11 22:37:16 439

原创 Android 安卓ADB命令远程调试 单个或多个设备调试

本文章适用于Android设备远程调试,计算机与Android开发设备须保证在同一个局域网下,另外准备一根数据线。

2025-01-10 08:02:36 1268

原创 Android 天气APP(二十一)滑动改变UI、增加更多天气数据展示,最多未来15天天气预报

/渲染完成后,定位到今天,因为和风天气预报有时候包括了昨天,有时候又不包括,搞得我很被动。helper.setText(R.id.tv_date_info, DateUtils.Week(item.getFxDate()))//日期描述。.setText(R.id.tv_uvIndex, uvIndexToString(item.getUvIndex()))//紫外线。.setText(R.id.tv_date, DateUtils.dateSplit(item.getFxDate()))//日期。

2025-01-10 07:58:56 496

原创 Android 原生项目集成 Flutter

最终生成了以上文件,注意这里最后的命令。关于 flutter pub get 具体做了什么,可以参考后面的。

2025-01-10 07:55:14 709

原创 HarmonyOS Next 侧滑返回事件拦截案例

有很多小伙伴不知道学习哪些鸿蒙开发技术?不知道需要重点掌握哪些鸿蒙应用开发知识点?而且学习时频繁踩坑,最终浪费大量时间。所以有一份实用的鸿蒙(HarmonyOS NEXT)资料用来跟着学习是非常有必要的。这份鸿蒙(HarmonyOS NEXT)资料包含了鸿蒙开发必掌握的核心知识要点,内容包含了。

2024-12-20 20:42:16 1086

原创 Handler消息机制(二):一个线程有几个Handler

首先就必须要先调用,那这个方法做了些什么呢:= null) {代码其实只有关键性的一句,就是,首先来看看:代表了一个线程局部的变量,每条线程都只能看到自己的值,并不会意识到其它的线程中也存在该变量。在这里的作用是保证了每个线程都有各自的接下来看看创建Looper实例的方法在构造方法里,初始化了和代表当前线程的属性,关于可以看看文章开头的链接,里面有详细的代码解析,这里就不赘述了。

2024-12-20 20:38:35 658

原创 Handler原理你真的弄懂了吗?只要有异步线程与主线程通信的地方就一定会有-Handler!

示例代码如下:@Override= null) {并且再在。

2024-12-20 20:34:54 1012

原创 Hadoop完全分布式搭建(超详细,傻瓜式安装)_hadoop完全分布式集群搭建

Hadoop完全分布式安装配置。

2024-12-20 20:31:24 287

原创 Guava Cache LoadingCache 之 refreshAfterWrites和expireAfterWrite区别_loadingcache refreshafterwrite

*** 对于一些数据查询比较耗时,缓解服务器的压力,高并发的场景下,可以使用refreshAfterWrites这种异步刷新缓存的方法。* 问题:* 1、会不会出现取到的值是过期的旧值?* 2、随着请求的快速上升,连接数是否足够?* LoadingCache 之 refreshAfterWrites 刷新机制* 把数据加入到缓存中,并异步刷新缓存里的数据*/* 加入cache的数据*/* 构建缓存对象*/

2024-12-20 20:27:26 781

原创 ctfshow-web延时注入平替-web217~web220

ifWin64;x64;q=0.2”,mf = 0if//用了单引号返回逻辑//屏蔽危险分子。

2024-12-20 15:58:59 784

原创 css基础(一):简介和引入方式

也称链入式,是将所有的样式放在一个或多个以.css为扩展名的外部样式表文件中,通过link标签将外部样式表文件链接到HTML文档中。CSS以HTML为基础,提供了丰富的功能,如字体、样式、背景的控制及整体排版等,而且可以针对不同的浏览器设置不同的样式。:定义当前文档与被链接文档之间的关系,在这里需要指定为“stylesheet”,表示被链接的文档是一个样式表文件。也称为内嵌式,将CSS代码集中写在HTML文档的head头部标签中,并且用style标签定义。**缺点:**没有实现样式和结构相分离。

2024-12-20 15:55:18 360

原创 CSS入门学习笔记+案例

盒子模型是网页布局的基础,将页面中所有元素都看作是一个盒子,盒子都包含以下几个属性:width 宽度height 高度border 边框padding 内边距margin 外边距通过position属性实现对元素的定位,有四种定位方式常用取值:取值含义说明static默认值按照常规文档流进行显示relative相对定位相对于标签原来的位置进行的定位absolute绝对定位相对于第一个非static定位的父标签的定位fixed固定定位相对于浏览器窗品进行定位。

2024-12-20 15:51:36 654

原创 crashrpt_crachrpt库

其中的XXXX指的是crashrpt的版本号,这篇文章中的版本号为1300。and crAddFile2A() functions.”)函数够将指定的文件加入到错误报告中,例如我们可以将程序相关的日志文件加入到错误报告中,以便我们更好的分析程序的内部状态,然后通过这些信息更快的找到程序出错的原因;最后发一段我使用crashrpt的代码块,我使用的目的是将程序交给测试人员进行测试时,如果程序崩溃后,crashrpt将程序的错误报告保存到本地,测试人员发现程序崩溃后,将该报告发给我进行调试。

2024-12-20 15:47:53 861

原创 Condition源码分析与等待通知机制

就是。

2024-12-20 15:40:25 821

原创 24张图攻克border-image

border-image的背景图使用url()调用,图片可以是相对路径或是绝对路径,也可以不使用图片,即border-image:none;这里有个点要注意:如果存在border-image属性并且图片不是none的话,border-style 会失效。通过图片我们会发现:1. 我们给边框设置的黑色并没有生效。2. border-image的宽度和border的宽度保持一致。3. 如果不设置border的宽度,border-image也就没有宽度,即使你设置了border-image-width:也是没有

2024-12-19 23:18:28 673

原创 22个实用JavaScript编程知识,可帮助你提升面试成功率_[1,100000,21,30,4]

4、lodash包括:检查是否value在中。collection返回true是否value找到,否则返回false。5、findIndex:此方法返回满足提供的测试功能的数组中第一个元素的索引。否则,它返回-1,表明没有任何元素通过测试。6、find:此方法返回提供的数组中满足提供的测试功能的第一个元素的值。如果没有值满足测试功能,则返回undefined。7、 filter:此方法创建一个新数组,其中所有元素都通过了由提供的功能实现的测试。

2024-12-19 23:14:46 500

原创 20分钟学会jQuery,只有一个万能公式:$(selector)

(fuction(){}) 等价于 $(document).ready(function(){})~~~~~~~~~~~~~~~~ 以下的代码是下面公共部分 ~~~~~~~~~~~~~~~~.text() 无参数是获取值,有参数是设置值(修改innerHTML值)只需记住一个公式:$(selector).action()mousedown()(jQuery)----按下(常用)mousemove()(jQuery)----移动(常用).html()无参数是获取值,有参数是设置值。点进去就有相应的例子。

2024-12-19 23:11:04 410

原创 20个 Javascript 技巧,提高我们的摸鱼时间

length: 5复制代码。

2024-12-19 23:07:23 626

原创 2024新一波程序员跳槽季,吊打面试官系列!

如果你看到了这里,觉得文章写得不错就给个赞呗?如果你觉得那里值得改进的,请给我留言。一定会认真查询,修正不足。

2024-12-19 22:56:14 712

原创 2024年金九银十大厂高频Java面试题合集(含答案),让你得面试不再是如履薄冰

165. 一张自增表里面总共有 7 条数据,删除了最后 2 条数据,重启 MySQL 数据库,又插入了一条数据,此时 id 是几?123. 在 hibernate 中 getCurrentSession 和 openSession 的区别是什么?118. 在 hibernate 中使用 Integer 和 int 做映射有什么区别?46. 线程池中 submit() 和 execute() 方法有什么区别?29. 在 Queue 中 poll()和 remove()有什么区别?

2024-12-19 22:52:33 924

原创 2024年最新版68道Redis面试题,整整20000字,赶紧收藏起来备用

比如你的web系统中有一个用户对象,不要为这个用户的名称,姓氏,邮箱,密码设置单独的key,而是应该把这个用户的所有信息存储到一张散列表里面。同时,其可以避免服务宕机导致的锁无法释放,而产生的死锁问题。注意,如果采用了主从架构,那么建议必须开启 master node 的持久化,不建议用 slave node 作为 master node 的数据热备,因为那样的话,如果你关掉 master 的持久化,可能在 master 宕机重启的时候数据是空的,然后可能一经过复制, slave node 的数据也丢了。

2024-12-19 22:48:50 560

原创 2024年度最全面JVM虚拟机,类加载过程与类加载器

JVM的类加载的过程是通过引导类加载器(bootstrap class loader)创建一个初始类(initial class)来完成的,这个类是由JVM的具体实现指定的。如果符号引用指向一个未被加载的类,或者未被加载类的字段或方法,那么解析将触发这个类的加载(但未必触发这个类的链接以及初始化。确保class文件中的字节流包含的信息,符合当前虚拟机的要求,保证这个被加载的class类的正确性,不会危害到虚拟机的安全。在加载类的时候,是采用的双亲委派模型,即把请优求先交给父类处理的一种任务委派模式。

2024-12-19 22:45:07 606

原创 2024年 Vue经典面试题 -- 必问知识点 --(包含答案)

每个组件实例都有相应的 watcher 实例对象,它会在组件渲染的过程中把属性记录为依赖,之后当依赖项的 setter 被调用时,会通知 watcher 重新计算,从而致使它关联的组件得以更新——这是一个典型的观察者模式。当数据发生改变的时候,通知订阅者,并触发对应的回调函数,重新渲染数据。这些都是计算属性无法做到的。:解析 Vue 模板指令,将模板中的变量都替换成数据,然后初始化渲染页面视图,并将每个指令对应的节点绑定更新函数,添加监听数据的订阅者,一旦数据有变动,收到通知,调用更新函数进行数据更新。

2024-12-19 22:37:39 923

原创 Java面向对象三大基本特征之多态_面向对象方法中,多态指的是

/在向下转型过程中,容易出现类型转换异常ClassCastException,将父类引用转换成了其它的子类对象,所以在转换之前需要对父类引用类型进行判断。//将父类Animal作为方法的形参使用,是多态的使用方式之一。//定义一个动物叫的方法。

2024-12-17 19:36:04 283

原创 Java集合框架总结

接口:表示集合的抽象数据类型。接口允许我们操作集合时不必关注具体实现,从而达到“多态”。在面向对象编程语言中,接口通常用来形成规范。实现:集合接口的具体实现,是重用性很高的数据结构。算法:在一个实现了某个集合框架中的接口的对象身上完成某种有用的计算的方法,例如查找、排序等。这些算法通常是多态的,因为相同的方法可以在同一个接口被多个类实现时有不同的表现。事实上,算法是可复用的函数。它减少了程序设计的辛劳。集合框架通过提供有用的数据结构和算法使你能集中注意力于你的程序的重要部分上,而不是为了让程序能正常运转而将

2024-12-17 19:32:23 921

原创 java进销存系统源码,Java面试真题精选

面试官给出的建议是,如果代码再稍微优美一点就很好了,不过也没什么大问题。然后跟我说让我等一等,出去商量商量。哎,真的太难了~~~这一面自我感觉比一面好很多,面试官态度很和蔼,就让我没有那么的紧张,让我稍等一下,我也不知道下一面是情况,或者有没有下一面。第二面问的挺多的内容,只记得个大概,所以也只能分享一个我所能记忆到的面试内容。来了个其他部门更牛B的大佬,感觉自己要凉,我太难了~~~小编整理不易,对这份。

2024-12-17 19:28:42 985

原创 Java语言程序设计与数据结构(基础篇)课后练习题 第六章(二)

/从1970年1月1号0时0分0秒(GMT格林威治时间)创建开始计时的,一直延续到今天。这个程序有点漏洞,可能是因为时差问题,导致日期不符,但是方法和过程都是有理有据,值得借鉴。// System.currentTimeMillis()方法做时间戳。//统一成小写字母。// 从上面方法获得的是毫秒,转化为秒。// 取余,得到当前秒数。// 取余,得到当前分钟。// 取余,得到当前小时。// 得到完整的分钟。

2024-12-17 19:25:00 339

原创 Java语言程序设计与数据结构(基础篇)课后练习题 第八章(四)

这个题,自己做太麻烦,所以看了看网上怎么写的,借鉴一下。

2024-12-17 19:21:17 429

原创 50道Java面试常问的基础知识,虽是基础但是避坑之路可得小心谨慎

甚至有的 JVM,如 Azul,堆内存到 1000G 都是可能的。如果 a 和 b 都是对象,则 a==b 是比较两个对象的引用,只有当 a 和 b 指向的是堆中的同一个对象才会返回 true,而 a.equals(b) 是进行逻辑比较,所以通常需要重写该方法来提供逻辑一致性的比较。是的,我们可以做强制转换,但是 Java 中 int 是 32 位的,而 byte 是 8 位的,所以,如果强制转化是,int 类型的高 24 位将会被丢弃,byte 类型的范围是从 -128 到 128。

2024-12-17 01:13:35 627

原创 4-SpringSecurity:CSRF防护

runtimetruelomboktruetest从官网中可以知道,CSRF防护的关键在于我们发请求时附带一个随机数(CSRF token),而这个随机数不会被浏览器自动携带(eg: Cookie就会被浏览器自动带上)。

2024-12-17 01:06:08 784

空空如也

空空如也

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

TA关注的人

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