Java
JS时间戳转日期(相互转化)
1、将时间戳转换成日期格式: 2、将日期格式转换成时间戳: 另外一种方式参考: 在上面的代码中,我们使用了Date对象中的getFullYear、getMonth、getDate、getHours、getMinutes和getSeconds方法获取年、月、日、小时、分钟和秒数,并将它们拼接成一个格式化后的日期字符串,最后通过console.log输出。
java 多线程:volatile 详解
可以保证多线程的 可见性、有序性,不能保证原子性 为什么不能保证原子性 每个单独的读写操作都会及时刷新到主存中,后续操作如果失败,没有什么回滚机制(感觉理所当然,但是现在行业卷,面试时就要问你zzz) 怎么保证可见性的 内存屏障保证的。什么是内存屏障?就是一条特殊的 cpu 指令,lock 前缀指令。 当线程 A 对 volatile 变量执行了写操作,会发一条 lock 前缀指令把工作内存的值刷
JUC:cas 算法、原子类、原子引用类
什么是 CAS 全称是 Compare-And-Swap,对数据进行 原子性 操作,sun.misc.Unsafe 类的各个 native 方法实现的 比较当前工作内存中的值和主内存中的值,如果相同则执行规定操作,否则什么都不做或者重来一次,重来就是自旋锁了 java各种锁看这里 CAS VS volatile VS synchronized CAS:保证原子性 volatile:保证可见性
Hystrix(服务熔断,服务降级)
分布式系统面临的服务雪崩问题 当用户发起请求时,假设处理请求的服务器1运行时需要调用到服务器2,服务器2运行时需要调用到服务器3,而如果服务器2因为某些原因始终不能正常调用到服务器3,这时候后面其他用户的请求也都会阻塞在服务器1,在并发量极大的情况下容易导致多个服务器崩溃已经许多其他级联问题的发生,这就是服务雪崩。 测试熔断机制, 为了方便后续复习,直接新建一个有熔断机制的provi
JUC:LockSuport
是 JUC 的核心之一,AQS 的 await()、signal() 等方法底层就是 LockSuport 实现的 实现线程挂起和唤醒的操作,和每个线程关联一个许可(permit),核心方式就是 park 和 unpark,底层是 Unsafe 类的 native 方法实现 功能类似 object 的 wait 和 notify/notifyAll 方法 核心方法 方法 解释 备注
【Java读取串口】[rxtxSerial.dll+0x5b00]报错(使用RXTXcomm.dll)
使用RXTXcomm报错 EXCEPTION_ACCESS_VIOLATION (0xc0000005) C [rxtxSerial.dll+0x5b00] 原文链接:https://blog.csdn.net/Loveme_CN/article/details/115918493 1. 背景项目中需要将信息通过串口方式发送至单片机,从而使用了RXTXxcomm这个工具包,本机已完成与串口工具的调
手机投屏音频流转在无系统权限中的应用
背景 在手机投屏处理音频流转问题 中介绍了反射android.media.AudioSystem类的setDeviceConnectionState方法来达到音频流转方案,此方案是基于系统权限的,也就是说具有系统签名并且拥有android:sharedUserId="android.uid.system",如果没有这个权限咋整? 因公司需要把之前的投屏项目脱离系统权限并准备上Google Play
java 反射:类和属性是否有注解
boolean isAnnotationPresent(Class<? extends Annotation> annotationClass) 元素上是否包含指定类型的注解,存在则返回 true,否则返回 false <A extends Annotation> A getAnnotation(Class<A> annotationClass) 获取元素上指
【JAVA】JSONObject的用法
配置 pom.iml 1、通过原生生成json 执行结果: 2、通过hashMap数据结构生成 执行结果: 3、通过实体生成 执行结果: 4、JSON字符串转换成JSON对象 执行结果: 5、list对象与listJson的转换 执行结果: &nbs
idea Maven插件 项目多环境打包配置
1.准备配置文件 这里local为本地开发环境 可改为dev 名称自定义 test为测试环境 prod为生产环境 根据项目业务自行定义 application.yml配置: 2.配置pom.xml 根据自身业务需求配置pom文件 目前我的项目业务添加如下: 以下是可自定义修改maven插件配
软件工程日报——课程总结
最近王建民老师给我们布置了一个最新的作业,让我们对软件工程这门课的一学期的学习做一个课程总结。 回顾这学期的软件工程的学习,可以说是“历经九九八十一难”,现在想想这“噩梦”般的生活。我确实感觉自己收获了很多。 还记得在上半年的这个时候,我专业分流选择了软件工程这个专业,当时选择这个专业,一方面感觉这个专业很实用,会学很多技术,另一方面就是对王建民老师在导论课上的表现感兴趣。在暑假期间,建民老师就开
Maven Web项目
1、Web项目创建 官方文档 cmd进入web项目工作空间,执行以下代码: 构建成功.实际目录结构如下: 这里注意和java项目的几个区别:没有test项目、没有在主项目源码下面建立指定的包结构层次. 2、pom.xml 生成的xml内容如下: 和java项目相比,定位jar包的参数是一样的,区别是打包方式web项目是war包 注:这里删除了build
maven中profiles使用详解,多环境开发配置文件(开发,测试,生产)+ pom中resources部分标签介绍
使用的场景 常常遇到一些项目中多环境切换的问题。比如在开发过程中用到开发环境,在测试中使用测试环境,在生产中用生产环境的情况。springboot中提供了 spring.profile.active的方式来实现多环境的切换,通过设置环境变量和启动参数的方式。但是这样做终究不能一劳永逸,要么需要修改yml文件,要么需要记得启动的时候带上参数。 而利用maven的profiles,可以减少很多工作。
深入浅出 C++ 11 右值引用
彻底搞清楚:右值引用/移动语义/拷贝省略/通用引用/完美转发 —— 以最短的篇幅,介绍常见误解(什么时候要用 move?什么时候不能 move?为什么 move 失败?)和基础知识(为什么右值引用变量是左值?为什么会调用移动构造函数?),一步步解释“为什么/是什么/怎么做”。 写在前面 如果你还不知道 C++ 11 引入的右值引用是什么,可以读读这篇文章,看看有什么 启发;如果你已经对右
Mybatis多表查询(一对多)
1、两个实体类(部门表、员工表)一个部门包含许多员工(一对多关系),将员工表信息写到部门实体类中 点击查看代码 点击查看代码 2、写dao接口 点击查看代码 3、写mapper.xml文件 点击查看代码 4、导入mapper到mybatis.xml 点击查看代码 5、测试 点击查看代码
MTK平台 MtkSettings添加memory一级菜单显示内存信息
1.矢量图 用Androidstudio画的 vendormediatekproprietarypackagesappsMtkSettingsresdrawableic_settings_memory_test.xml <vector android:autoMirrored="true" android:height="24dp" android:tint="
【JAVA】MD5加密方式
一、对字符串进行MD5加密 1、pom.xml 配置依赖包 2、代码 3、测试 4、执行结果 二、对文件进行MD5加密 参考地址:https://blog.csdn.net/qq_43666423/article/details/105312559 1、代码 MD5Utils.jav
html屏蔽右键、禁止复制与禁止查看源代码的几种方法
方法一:左右键屏蔽 先来一种最简单的方法,它直接在body属性定义了oncontextmenu,使得右键的值为false,起到了屏蔽右键的效果。 1 <body oncontextmenu=self.event.returnValue=false> 这个方式虽然屏蔽掉了右键的功能,但是左键还可以使用,自然Ctrl+c,Ctrl+v的功能
根据域名获取对应的网络IP
1.情景展示 2.解决方案 方式一:CMD命令 window+r → cmd 进入dos窗口 命令构成: nslookup 域名 我们可以看到: 博客园对应的IP地址是:118.31.180.41 方式二:在线查询(推荐使用) 地址:https://seo.chinaz.com/ 方式三:ping命令 命令构成: ping 域名 我们可以看到: 三种查询方式,得到的IP地址都不一样
Java大文件分片上传/多线程上传控件
4GB以上超大文件上传和断点续传服务器的实现 随着视频网站和大数据应用的普及,特别是高清视频和4K视频应用的到来,超大文件上传已经成为了日常的基础应用需求。 但是在很多情况下,平台运营方并没有大文件上传和断点续传的开发经验,往往在网上找一些简单的PHP或者Java程序来实现基本的上传功能,然而在实际使用中会发现,这些基于脚本语言实现的上传功能模块性能很弱,一是不支持2GB以上的内容
IntelliJ IDEA 2018 下载 和 破解
1,下载( 安装包和破解jar包的) 链接: https://pan.baidu.com/s/1rMbtpYRjwMOR2wxzL-32zA?pwd=cccc 提取码: cccc 2,安装: 傻瓜式安装,一路Next 接着Next,选择安装路径。路径要记牢哦,后面会用到 .耐心等待安装  
SpringBoot中操作Redis解析JsonArray数据为对象List(ruoyi字典值sys_dict为例)
场景 若依前后端分离版手把手教你本地搭建环境并运行项目: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/108465662 在上面搭建系统的基础上,会将系统的字典值缓存进redis中。 看数据格式存储的是Json数组,如何从redis中读取并解析成对象的list从而进行数据处理。 注: 博客: https://blog.csd
python 清除字符串中的 emoji 表情
https://pypi.org/project/emoji/ pip install emoji 复制 字符串中间有 emoji 表情,替换掉。 text = "🐰贝贝有点甜🐰" res = emoji.demojize(text) # ':rabbit_face:贝贝有点甜:rabbit_face:' # 正则表达式替换为 r"想换的字符串" res = re.sub(emoji.get
测试工程师需要掌握的linux知识
1. 测试人员学习Linux用途 查看日志 环境搭建 性能监控 2. 测试常用命令 用途 命令 示例 常见的操作 常看当前路径 pwd 查看文件夹中的文件的详细信息 ll 查看文件夹中的文件 ls 打开文件夹 cd