- 博客(27)
- 收藏
- 关注
原创 Android面试真题解析火爆全网,源码+原理+手写框架
本篇文章主要记录分享我的面试准备过程。很多朋友问我为什么离职在之前的小厂薪资倒挂现象严重,新入职的员工工资明显高过老员工,企业宁愿高薪招聘一位新员工,也不愿给我们老员工加工资,这让老员工十分寒心。接地造成老员工离职。继而还有一种,当感觉自己的劳动并未收获到相应的价值之时,继续在原公司呆下去意义也不大。在小型软件公司干的三年时间里,其实只拥有了一年的技术经验之时。技术视野较窄,能力提升缓慢,没了技术上升的空间,日复一日,年复一年,只干着同样的事情,往高处走才是必然的选择。1.UI绘制流程及其原理。
2025-01-20 15:03:03
474
原创 Android实现自定义View的方法
没有进行View控件封装的后果就是代码冗余,阅读困难,而且View的功能如果要变动的话,所有调用的地方都得变动。我们重写了OnMeasure和OnDraw两个方法,前面也说到了,这两个方法是View绘制过程中用到的,可以按需重写,关于OnMeasure和OnLayout具体的内容这里就暂不详述了。左边的图片和右边的文字可以做成一个新的View控件,这样如果调用的地方多了,可以节省不少的代码量,因为实现的逻辑都在新的控件中处理了。//1.获取自定义View的宽度,高度的模式。
2025-01-20 14:18:09
438
原创 Android 屏幕适配之dimens适配
等多套dimens文件,其实大可不必,只需要1776x1080这一套就够了,因为系统找不到对应尺寸的dimens文件,会使用比它略小的分辨率的dimens文件,如此一来我们的dimens文件会大大减少的。对于dimens文件这里我想说一下,其实一个文件夹下面一个dimens文件即可,没必要弄两个(lay_x和lay_y,网上不少博客是使用两个dimens文件,至少分辨率是16:9的手机用一个dimens文件是可以的,因为lay_y.xml里面的内容已经包括lay_x.xml文件中的了)
2025-01-20 13:22:57
997
原创 AI自动生成代码,那还需要程序员吗?
只要复制对应网站的cURl数据,复制粘贴到生成器里,3秒就能生成对应语言的爬虫脚本,而且12种语言任意选择转换(Python,AnsibleURI,MATLAB,Node.js,R,PHP,Strest,Go,Dart,JSON,Elixir,Rust)当然,从0-100的过程,人工智能很难实现,但要是精尖的程序员把从0-1的部分理出来,剩下的就让代码来生成呢?这要是在增量市场还好,提不完的需求,KPI蹭蹭上升,要是在增量市场,只能说同事可能会越来越少了。
2025-01-20 12:23:43
509
原创 7个绝佳的学习 Python 编程的开源库_python开源库
这个存储库一共有19本Jupyter笔记本。它涵盖了字符串和条件之类的基础知识,然后讨论了面向对象编程,以及如何处理异常和一些Python标准库的特性等。每一个主题都有一个“notebook”链接,它会向你介绍该主题和一些示例代码,当你完成这些内容之后,还有一个练习链接,点击后你就可以做一些测试题。这个存储库还可以作为Python的介绍,帮助你从初级水平上升至中级,这里的中级指的是熟练地使用这种编程语言,而不仅仅是简单的循环和算法。
2025-01-20 11:58:47
553
原创 2021最新css3面试题理论,前端css面试题,移动端面试题理论。
Flex 是 Flexible Box 的缩写,意为”弹性布局”,用来为盒状模型提供最大 的 灵活性。任何一个容器都可以指定为 Flex 布局。14、Flex父项常见属性。rem是一个相对单位,rem的是相对于html元素的字体大小,没********有继承性****em是一个相对单位,是相对于父元素字体大小,有继承性。****px是一个“绝对单位”,就是css中定义的像素,利用px设置字体大小及元素的宽高等,比较稳定和精确。19、什么是媒体查询。在pc端中,视口指的是在pc端中浏览器的可视区域;
2025-01-20 10:27:06
878
原创 “终于懂了“系列:Jetpack AAC完整解析(一)Lifecycle 完全掌握!
在Activity中调用getLifecycle()能获取到Lifecycle实例,那getLifecycle()是哪里定义的方法呢?是接口LifecycleOwner,顾明来思义,生命周期拥有者:/**生命周期拥有者生命周期事件可被 自定义的组件 用来 处理生命周期事件的变化,同时不会在Activity/Fragmen中写任何代码*/@NonNull复制代码。
2025-01-15 08:59:38
476
原创 Vue+ElementUI技巧分享:结合Sortablejs实现表格行拖拽_vue element-ui 实现表格拖拽
通过结合 Vue.js、Element UI 和sortablejs,我们可以有效地实现一个交云用户友好的拖拽表格界面,并确保数据的一致性通过与后端服务的交互维护。这不仅提高了应用程序的交互性,还增强了用户体验。
2025-01-14 16:45:55
467
原创 Vue+Electron打包桌面应用(从零到一完整教程)_vue打包桌面应用
打包后还是加载http://localhost:5173是无法运行的,因此,此处需要先用vite打包好,然后使用electron-builder加载vite打包后的文件进行打包。为了使vite和electron正常运行,需要先运行vite,使得其开发服务器的url可以正常访问,然后再开启electron去加载url。为了代码能够根据不同环境在运行时加载http://localhost:5173,在打包时加载文件,此处需要使用环境变量来切换生产和开发环境。即可,当修改项目文件时,桌面应用也将自动更新。
2025-01-14 16:42:13
1369
原创 Vue 项目接入 echarts
使用引入 echarts 插件。也可以在main.js全局引用,觉得没必要,看情况吧。在绘图前我们需要为 ECharts 准备一个具备高宽的 DOM 容器。
2025-01-14 16:38:32
93
原创 SpringBoot面试题
由于Spring Boot官方提供了大量的非常方便的开箱即用的Starter,包括Spring Security的Starter,使得在SpringBoot中使用Spring Security变得更加容易,甚至只需要添加一个一来就可以保护所有接口,所以如果是SpringBoot项目,一般选择Spring Security。普通的 jar 包,解压后直接就是包名,包里就是我们的代码,而 Spring Boot 打包成的可执行 jar 解压后,在。启动器是一套方便的依赖描述符,它可以放在自己的程序中。
2025-01-14 00:05:09
292
原创 SpringBoot缓存管理
2、编写数据库表对应的实体类,并使用JPA相关注解配置映射关系/***/@Entity(name = “t_comment”) // 设置ORM实体类,并指定映射的表名@Id // 映射对应的主键id@GeneratedValue(strategy = GenerationType.IDENTITY) // 设置主键自增策略@Column(name = “a_id”) // 指定映射的表字段名return id;return aId;
2025-01-14 00:01:28
899
原创 SpringBoot的监控(Actuator) 功能_actuator监控如何清空
采用(1)中的方法的缺点是我不想把项目的名称或者版本号写死,我想动态获取(比如从maven中动态获取当前项目的项目名称和版本,因为项目名称或者版本可能会变动)。根据上面查出来的指标,再具体查看每个指标的详细信息,比如如下图查看系统CPU利用率指标。这个请求,如下图是默认返回的信息,只显示一个汇总后的结果告诉我们当前服务是什么状态。把上面的配置改成如下方式,即单独针对每一个监控端点的开启与禁用进行控制。【查看系统中所有的bean组件】【查看系统中激活的组件,如下图】【查看系统中配置的属性,如下图】
2025-01-13 23:57:47
839
原创 RSA加密,解密,加签及验签
③加密是可逆的,也就是说加密后的密文可以进行解密。加签是不可逆的,只能通过验签来验明真伪。④加密是明文长度是有限制的,明文的最大长度=密文长度-11(单位是字节),当设置密钥为1024位时,1024/8-11=117字节,所以明文的最大长度为117个字节,解密的最大长度为127个字节,相差11个字节是因为加密时使用了填充模式。加签是没有长度限制的。
2025-01-13 17:15:13
475
原创 RocketMQ消息发送常见错误与解决方案
经过上面的步骤,基本就能解决该错误。2、消息发送超时消息发送超时,通常客户端的日志如下:客户端报消息发送超时,通常第一怀疑的对象是RocketMQ服务器,是不是Broker性能出现了抖动,无法抗住当前的量。那我们如何来排查RocketMQ当前是否有性能瓶颈呢?
2025-01-13 17:11:33
1005
原创 MVCC的含义,如何实现的?
事务开始时刻的系统版本号会作为事务的版本号,用来和查询到的每行记录的版本号进行比较。1、InnoDB只查找版本早于当前事务版本的数据行(也就是,行的系统版本号小于或等于事务的系统版本号),这样可以确保事务读取的行,要么是在事务开始前已经存在的,要么是事务自身插入或者修改过的。事务4执行完毕,开始执行事务2 语句2,由于事务2只能查询创建时间小于等于2的,所以事务修改的记录在事务2中是查不出来的,这样就保证了事务在两次读取时读取到的数据的状态是一致的。这可以确保事务读取到的行,在事务开始之前未被删除。
2025-01-13 01:36:28
314
原创 MSP432学习笔记10:串口接收字符串命令并执行任务
MSP432串口接收上位机发来的字符串命令,并做相应的响应回复:1.开机发送串口测试字符串TEST2.接收到上位机发送"START\r\n\0"时,先重复发送接收到的命令,再回复发送"OVER\r\n"3.接收到上位机发送"Hi\r\n\0"时,先重复发送接收到的命令,再回复发送"Hello,MSP432!\r\n"4.接收到上位机发送其他命令时,先重复发送接收到的命令,再回复发送"ERROR!\r\n"//定义串口程序需要用到的变量//存字符串命令的数组//帮助数组下标位移//接收完成标志。
2025-01-13 01:32:47
270
原创 MongoDB文档更新操作
{“_id” : ObjectId(“59f005402844ff254a1b68f6”),“name” : “三国演义”,“authorName” : “罗贯中”,“authorGender” : “男”,“authorAge” : 99.0}这是一本书,有书名和作者信息,但是作者是一个独立的实体,所以我想将之提取出来,变成下面这样:{“_id” : ObjectId(“59f005402844ff254a1b68f6”),“name” : “三国演义”,“author” : {“name” : “罗贯中
2025-01-13 01:29:05
336
原创 FFmpeg-之音视频解码与音视频同步(二)
Override@OverridemProgressDialog.setMessage(“正在解码…”);break;break;mProgressDialog.setMessage(“正在解码…”);break;
2025-01-11 23:25:44
937
原创 FFmpeg 之X264视频编码与FAAC音频编码(四)
(1)初始化并设定x264_param_t(2)初始化并设定 x264_picture_t(3)x264编码二、音频编解码·实战篇WAV转至AAC(AAC编码)这里利用FAAC来实现AAC编码。另外,WAV的数据段是PCM,代码会出现很多PCM缩写。1 下载安装 FAAC这里的安装过程是在 Mac 和 Linux 上实现的,Windows可以类似参考。make如果才用默认的 configure 中的 prefix path,那么安装后的 lib 和 .h 文件分别在。
2025-01-11 23:22:02
915
原创 ctfshow-WEB-web7_ctfshow web7
先来判断显示位,此处id传一个-1,由于id通常不为负数,后端根据id查询不到内容,就只能展示联合查询的结果,从而帮助我们判断字段显示的位置。从url地址栏中可以看到,页面通过文章的id值来查询文章内容,我们可以考虑SQL注入漏洞。接下来判断当前使用的数据库,盲猜flag就藏在当前使用的数据库中。首先判断注入点,输入以下payload,使SQL恒成立。有一个flag表,那flag肯定就藏在这个表里面。接下来查询flag表的flag字段,获取flag。,页面中有显示位,可以尝试。可以看到,页面空显示。
2025-01-11 18:59:49
215
原创 css中的选择器
🍓基础选择器基础选择器又包括:标签选择器、类选择器、 id 选择器和通配符选择器。| 基础选择器 | 作用 | 特点 | 使用情况 | 用法 || 标签选择器 | 可以选出所有相同的标签,比如 p | 不能差异化选择 | 较多 | p {color : red;} || 类选择器 | 可以选出1个或者多个标签 | 可以根据需求选择 | 非常多 | .nav {color: red;} |
2025-01-11 18:56:08
624
原创 CSS3圆角的制作
在CSS3中用来生成圆角效果的属性是.这个属性跟大家熟知的width等属性的用法相似:上面的这句代码的作用是设置一个元素的四个角的弧度半径值都为10px。你也可以对每个角单独指定:如果你觉得上面的写法太复杂,可以使用下面简写的方法:/* or */四个值分别代表的是top-left, top-right, bottom-right, bottom-left四个角。
2025-01-11 18:52:26
733
原创 Android一键生成包含
到此我们知识点和功能也都基本完善了,按照上面的操作流程,Demo也能正常的运行起来,用着用着,因为项目的需求,独立出来的module越来越多,每个module的build.gradle文件中都有一大坨clearJar、makeJar的任务代码,看着有些碍眼,这是其一,其二就是每次都需要将编译好的jar拷贝到指定目录通过命令再生成包含dex的jar,这重复机械性的工作做多了也是有点头皮发麻,所以针对这个下面做了一些优化。优化后的字节码文件可以存在一个.jar中,只要其内部存放的是.dex即可使用。
2025-01-11 10:20:47
939
原创 Android~使用Service还是Thread
Service是Android的四大组件之一,被用来执行长时间的后台任务,同样,线程也可以实现在后台执行任务,它们的区别在哪呢?何时使用Service何时使用Thread呢?今天我也来说说我的理解和总结。默认情况下,Service其实是运行在主线程中的,如果需要执行复杂耗时的操作,必须在Service中再创建一个Thread来执行任务。
2025-01-11 10:17:06
850
原创 android-带进度条的系统通知栏消息
Toast.makeText(TestAndroid4Activity.this, “下载完成”, 0).show();notif.tickerText = “新通知”;//点击通知栏后打开的activity。//通知栏显示所用到的布局文件。
2025-01-11 10:09:38
442
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人