
JVM语言
文章平均质量分 53
Java
abcnull
INTP男,好结交志趣相投的朋友,微信:a463279708,希望能共同努力进步!你们的支持将是我写下去的不竭动力......
展开
-
tomcat 目录结构组成
现在非常多的 java web 服务部署在 linux 服务器中,我们服务器中的 tomcat 会有各种文件路径,看下它有哪些文件。原创 2025-04-02 16:52:33 · 274 阅读 · 0 评论 -
java服务生产环境内存陡增排查
你的线上服务某时候开始内存陡增,这个时候你很着急,该怎么办?原创 2024-05-18 13:02:40 · 1272 阅读 · 1 评论 -
maven settings.xml文件(包含了配置阿里云镜像)
注意你要是编辑这块位置需要给 iterm2 或者终端开放磁盘完全访问权限,否则创建文件会失败。如果是编辑 settings.xml 文件,那么需要 chmod 一下。「安全性设置」-「完全磁盘访问权限」原创 2023-09-25 18:54:48 · 1137 阅读 · 0 评论 -
appium自动化中常用的adb命令
文章目录查看连接的设备adb devices抓取包名和 Activityadb logcat | grep -i 'display'安装 appadb install apk路径卸载 appadb uninstall 包名杀掉 adb 进程adb kill-server重启 adb 服务adb start-server电脑发送到手机adb push 电脑路径 手机路径手机发送到电脑adb pull 手机路径 电脑路径手机重启adb reboot...原创 2020-09-09 10:17:02 · 68 阅读 · 0 评论 -
Mac M1安装android sdk
我在网上找了一圈,没有找到合适的 sdk,要么是版本太老,要么是其他原因,后来我直接通过我的 idea 中进行下载,idea 中搜索 android sdk 即可下载。edit 进行安装,之后等待,好了之后进入此路径中,发现 adb --version 正常了。主题你如果在网上下载一些老版本的 sdk,会发现 adb 执行不了,因为不支持 m1 的原因。我这边是 MacBook pro M1芯片的电脑,需要安装android sdk。原创 2023-04-02 16:52:35 · 840 阅读 · 0 评论 -
Mac安装java并配置环境变量
Mac安装java并配置环境变量原创 2023-01-11 15:36:41 · 865 阅读 · 0 评论 -
HttpClient + TestNg 单接口测试框搭建尝试和 GitHub 源码分享
文章目录GitHub 源码框架结构大致思想使用注意重点内容项目缺陷GitHub 源码源码地址:api-auto-test如有意见或建议可以私聊~框架结构api-auto-test - src - main - java - com.abcnull.apiautotest - beans【配置文件或表格的 bean】 - PropertiesBea...原创 2019-12-26 20:40:54 · 687 阅读 · 0 评论 -
HttpClient的简单样例展示
文章目录写在前面实现 GET 请求实现 POST 请求写在前面其实本身 jdk 自带的 net 库是可以实现 http 接口请求的,但是实现起来过于繁琐,httpclient 依赖很好的解决了这个问题,它本身是 Apache Jakarta Common 下的子项目。配合 httpclient 使用的还有 gson 和 fastjson,二者都是可以做对象转 json 和 json 转对象的工作,gson 是谷歌研发的依赖,性能虽然比不过 fastjson 但是效果上是绝对没有问题的,fastjson原创 2020-07-26 19:02:58 · 363 阅读 · 0 评论 -
正则中的捕获组和非捕获组
捕获组和非捕获组文章目录捕获组非捕获组捕获组简单理解正则中()中即为一个捕获组String text = "<textarea rows=\"20\" cols=\"70\">nexus maven repository index properties updating index central</textarea>";String reg = "<textarea.*?>.*?</textarea>";Pattern p = Pattern.原创 2021-05-14 11:48:29 · 670 阅读 · 0 评论 -
mac电脑安装安卓调试桥adb
文章目录第一步:先安装 homebrew 软件包管理工具第二步:安装 adb 工具第三步:验证是否成功第一步:先安装 homebrew 软件包管理工具ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"第二步:安装 adb 工具brew cask install android-platform-tools第三步:验证是否成功adb devices...原创 2020-11-16 20:54:31 · 523 阅读 · 0 评论 -
Failure [INSTALL_FAILED_USER_RESTRICTED: Install canceled by user]‘; Code: ‘1‘错误解决
文章目录本人在使用 appium 测试真机时候报出的错误信息Failure [INSTALL_FAILED_USER_RESTRICTED: Install canceled by user]’; Code: ‘1’大致原因是我是小米系统,需要自己打开开发者选项中的 USB 安装否则在使用 appium 的时候会出现上述报错信息,开启后就正常了,因为开启后实际手机上也需要受程序控制安装 appium 的...原创 2020-08-05 10:17:18 · 669 阅读 · 0 评论 -
手机真机开启开发者模式并开启usb调试
文章目录这里以小米 8 为例子,系统 android 9,MIUI 11设置->我的设备->全部参数->快速连按 MIUI 版本就会显示已经打开了开发者模式设置->搜索开发者选项->我们开启开发者选项和开启 USB 调试即可(还有 USB 调试(安全设置)可以打开)...原创 2020-08-05 09:24:15 · 2998 阅读 · 0 评论 -
解决emulator\qemu\windows-x86_64\qemu-system-x86_64.exe: icmpv6 ICMP6_ECHO_REQUEST fail
文章目录背景介绍解决措施背景介绍本人设置了环境变量 ANDROID_SDK_HOME 并且把新文件夹的路径配好了,它用于做 avd 设备的存储路径,我将其放在 d 盘,之后我再 ide 中启动模拟器,下载 apk 的时候报错emulator\qemu\windows-x86_64\qemu-system-x86_64.exe: icmpv6 ICMP6_ECHO_REQUEST fail解决措施由于我的 avd 设备在ANDROID_SDK_HOME/.android/avd中,其中还有个 ini原创 2020-07-05 00:31:42 · 2670 阅读 · 0 评论 -
解决Failed to open .ini file C:\Users\xxx\.android\emu-update-last-check.ini for writing.
文章目录问题背景解决措施原因思考问题背景本人使用的是比较新的版本的 sdk,集成在 idea 中运行,本人的环境变量是通过配置 ANDROID_AVD_HOME 把 avd 设备专门放到一个地方,但是我发现每次 idea 启动模拟器报出警告Emulator: emulator: WARNING: IniFile.cpp:235: Failed to open .ini file C:\Users\xxx\.android\emu-update-last-check.ini for writing.解原创 2020-07-04 14:58:35 · 3291 阅读 · 0 评论 -
解决报错PANIC: Missing emulator engine program for ‘x86‘ CPU.
文章目录背景介绍解决办法背景介绍本人使用比较新的 android sdk,安装在了 d 盘,然后我自己通过设置环境变量使得 avd 设备存放于 d 盘,本人在 ide 中启动模拟器是没有问题的,模拟器使用的是 x86 架构,但是当我通过 cmd 的 emulator 命令启动设备时候就会报出错误PANIC: Missing emulator engine program for 'x86' CPU.解决办法...原创 2020-07-04 12:43:40 · 3586 阅读 · 1 评论 -
windows下安装配置android sdk
文章目录前言下载 android sdk配置环境变量其他前言目前移动端市场几乎被 android 和 IOS 两大主流阵营所占据,这里我主要做 android sdk 环境的配置安装讲解下载 android sdk我这里提供 sdk 两个下载的地方softonic 下载 sdk腾讯开放平台下载 sdk配置环境变量第一步我们先设置一个环境变量名字ANDROID_HOME,然后我们变量值写D:\JavaTools\androidSDK,当然这是我自己的 sdk 安装的文件夹。然后我们再在PA原创 2020-07-01 16:15:25 · 588 阅读 · 0 评论 -
adb.exe is obsolete and has seriousperformance problems with the android emulator. please update to
文章目录前言显示的错误原因解释解决方式前言我在几年前下载过 sdk,之后有好一段时间没有使用,然后最近使用时候,我先是将模拟器和 idea 配置好,当我打开模拟器时,出现警告类型的弹框,我怀疑是 sdk 版本太低了显示的错误错误的文本如下:adb.exe is obsolete and has seriousperformance problems with the android emulator. please update to a newer version to get signifi原创 2020-07-01 00:23:04 · 2329 阅读 · 0 评论 -
Cannot find AVD system path. Please define ANDROID_SDK_ROOT错误的解决
文章目录前言先说出现这种错误的原因再说解决最后我们谈一下为什么大家都会遇到这种错误前言我在网上看到各种这种错误的报错以及解决方案,搜了几百条没有一条说道正点上去,我也是服气,由于我也遇到了这个错误,所以我打算从原因到解决思路好好的总结一下先说出现这种错误的原因因为模拟器开始启动的时候会在某个特定目录下去寻找你创建的 avd 设备,试想一下要是这几个特定的路径你没有配置进环境变量不就会出现这种错误了!正是这个原因,神坑模拟器启动时候会按照如下顺序查找模拟器设备的路径$ANDROID_AVD_H原创 2020-06-14 14:02:30 · 4123 阅读 · 3 评论 -
飞机大战安卓游戏简介以及 GitHub 源码分享
文章目录IndependentPlaneGameGitHub 地址:[IndependentPlaneGame](https://github.com/abcnull/IndependentPlaneGame)介绍关键代码特色待优化界面IndependentPlaneGameGitHub 地址:IndependentPlaneGame介绍此项目完成比较久远,当初使用 Android Stu...原创 2019-12-09 10:34:06 · 2125 阅读 · 0 评论 -
View实现单击双击和触屏移动
View实现单双击和触屏移动 我们知道常见的有View、SurfaceView、GLSurfaceView游戏开发框架,View可以做一些简单的游戏,SurfaceView做一些稍微复杂一点存在多种线程实现的游戏,GLSurfaceView制作一些3D的游戏。我们做一些简单的小游戏用View就足够了,但是我们会发现View触屏可以监听按下、弹起和触摸事件,双击事件什么的似乎没有直接提供,...原创 2018-05-25 22:49:37 · 1096 阅读 · 0 评论 -
Android游戏中最简单的碰撞检测
Android游戏中最简单的碰撞检测 由于本人在本科毕业时候做的毕设是一个小游戏,其中就有碰撞检测的实现,如下代码,先自己写一个可以得到碰撞点的方法getCollidePoint(Sprite s)返回的是Point类,之后只要这个碰撞点是存在的,则表示两个游戏的精灵发生了碰撞。逻辑比较简单,用得到了sdk的graphics包下的setIntersect()方法看是否相交。//得...原创 2018-05-23 23:39:57 · 1860 阅读 · 0 评论 -
Android游戏添加音乐
Android游戏添加音乐 安卓游戏添加背景音乐并且不断循环播放://播放音乐 private void playMusic(){ MediaPlayer mediaPlayer; try{ //创建音乐媒体对象 mediaPlayer = MediaPlayer.creat...原创 2018-05-22 19:29:50 · 1301 阅读 · 4 评论 -
求游戏界面的FPS帧率
求游戏界面的FPS帧率 下面代码是我在做本科毕业设计时候写的计算FPS帧率的方法,代码比较好理解,在整个项目里头注意有许多的属性。 在整个项目里头还有lastTime属性,保存有最近的上一次计算帧率的时刻,有lastFrame为最近的上一次计算帧率时的帧数,有frame表示游戏绘制到第几帧了。//得到FPSpublic int getFPS(){ //得到当前时刻 ...原创 2018-05-22 19:02:05 · 962 阅读 · 0 评论 -
Android两张图片渐变实现
Android两张图片渐变实现 下面代码实现从bg1.png到bg2.png经过4000ms的转变。主要用到了android.graphics.drawable.TransitionDrawable.TransitionDrawable类//得到此View下的资源Resource res = getResource();//图片渐变对象TransitionDrawable i...原创 2018-05-22 18:48:49 · 3081 阅读 · 0 评论 -
游戏中精灵随机产生常用的方法
游戏中精灵随机产生常用的方法下面代码是我在做毕业设计时候的代码,用java写的,选取关键部分,用到了Math.random()。int[] nums = {0,1,2,3};/*Math.random()取0-1浮点数,**floor是向下取整,**index是数组下表,**type是数组中的元素*/int index = (int)Math.floor(nums.l...原创 2018-05-22 18:24:42 · 953 阅读 · 0 评论 -
android编程添加点击事件的4种方法
android程序中View的点击事件共有四种,除了在布局文件中为按钮设置属性外还有另外3种都用到了OnClickListener接口,只不过形式不同而已。1.在布局文件中为按钮设置点击事件在绑定的布局xml中有相应<Button />中添加android:onClick="click"之后在与xml布局绑定的Activity中添加方法public void click(View v...原创 2018-02-15 14:19:52 · 8535 阅读 · 0 评论 -
jsonpath的简单使用
文章目录简介操作符/函数/运算法操作符函数过滤器运算符示例简介Jsonpath 提取解析 Json 的神器引入依赖:<dependency> <groupId>com.jayway.jsonpath</groupId> <artifactId>json-path</artifactId> <version>RELEASE</version></dependency>操作符/函原创 2020-12-13 00:05:50 · 433 阅读 · 0 评论 -
fastjson的基本使用
文章目录简介常用 APIBean<=>String 举例Bean 转 Json 格式的 StringJson 格式的 String 转 BeanJSONObject简介fastjson 是阿里巴巴开源的一款工具,前后端在进行数据传输交互的时候,常常会遇到 String 和 Json 格式的相互转化依赖引入:<dependency> <groupId>com.alibaba</groupId> <artifactId>fast原创 2020-12-12 23:13:00 · 428 阅读 · 0 评论 -
java泛型简述
文章目录概述泛型类 class Demo泛型接口 interface Demo泛型方法 其他泛型通配符 <?>泛型类中的泛型方法概述泛型是 java 中非常重要的概念,在面向对象编程和设计模式中有非常广泛的运用泛型即参数化类型,操作的数据被指定为一个参数,可以用在类,接口和方法中,分别称为类泛型,接口泛型,方法泛型泛型只在 java 编译阶段起作用,编译之后程序去泛型化,泛型不会进入到程序的运行阶段T 可以随便写为任意标识,常见的如 T、E、K、V 等形式的参数常用于表示泛型,但是传入原创 2020-12-08 17:47:46 · 344 阅读 · 0 评论 -
java的gc垃圾回收机制
文章目录前言java 内存概况完整 gc 回收的过程其他前言java 和 cpp 有个很大的不同就是 java 程序在运行时候不需要程序员编写代码来处理内存的回收释放,java 在 jvm 的基础上增加了垃圾回收 gc 机制,会在合适的时间段触发垃回收器,这提高了代码的安全性,也使得 java 编程更容易了java 内存概况栈内存(线程私有)栈内存数据共享,但线程中是私有的。代码运行时候,每调用一个方法都会在栈内存创建一个栈内存块(栈帧),栈帧由局部变量,操作数,帧数据构成。栈内存满足 FI原创 2020-10-08 23:15:55 · 404 阅读 · 0 评论 -
java中String到底存放在栈中还是堆中?
文章目录第一种第二种== 以及 equals第一种String str = new String("helloworld");new 的这种写法会在堆中创建对象,然后栈中保存堆中的地址第二种String str = "helloworld";这种写法,会现在栈中创建一个引用变量 str,然后查找栈中有没有 “helloworld” 这个字符串,如果有,str 指向它,如果没有就会将 “helloworld” 存进栈,str 再指向它== 以及 equals所以我们在使用==时候比较的实际原创 2020-09-11 17:28:47 · 551 阅读 · 0 评论 -
java面向对象四大特性
文章目录前言封装继承多态抽象前言java 是一个可跨平台(基于 JVM)的应用广泛的(尤其是 web 服务端开发)面向对象的静态语言java 一个非常重要的特点就是面向对象,java 面向对象有四大特性:封装,继承,多态,抽象封装就是对一个事务共有的特性进行了封装,封装有 field 和 function封装可以保证其安全性继承子类向父类继承可以提高代码的重用性,子类对父类的继承,相当于对父类属性的扩展java 中不支持多重继承多态一种事务在多种情况下的不同表现形式比如说多个类对原创 2020-09-11 16:55:34 · 89 阅读 · 0 评论 -
java指定范围的随机数生成代码怎么写
文章目录目标`new Random()``Math.random()``currentTimeMillis()`写在后面目标产生 1-100 数字中的随机数new Random()Random 类有两个构造器,一个空的构造器是以当前时间为随机种子,另一个可以传一个 long 类型的种子。以后产生的每个随机数都与前一个随机数有关Random rm = new Random();for (int i = 0; i < 5; i++) { int num = rm.nextInt(100)原创 2020-08-28 13:53:11 · 1369 阅读 · 0 评论 -
java获取日期时间的方法
获取当前时间// 获取 Calendar 时间实例Calendar calendar = Calendar.getInstance();// 格式的实例SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");// 格式化当前时间返回 StringString currentTime = sdf.format(calendar.getTime());获取之前或者之后的时间// 获取 Calendar 时间实例Calendar原创 2020-08-27 18:02:29 · 350 阅读 · 0 评论 -
java测试中各类断言方式汇总
文章目录java 自带断言testng 断言junit5 断言hamcrest 断言RESTassured 断言java 自带断言assert 作为 java 中的一个关键字,已经可以起到断言的作用了,如下例子assert true;assert false;testng 断言testng 自带有断言类 Assert 类,其中有各种静态的断言方法可供使用,下面列出一些常用的// 断言真假Assert.assertTrue(true);// 断言匹配,前一个参数是期望值,后一个参数是实际原创 2020-08-17 19:23:19 · 2960 阅读 · 0 评论 -
java中子类转父类和父类转子类
文章目录前提概要子类转父类子类的引用指向子类转父类对象父类的引用指向子类转父类对象父类转子类父类的引用指向父类转子类对象父类的引用指向子类转子类对象前提概要已经有父类和子类如下所示:// 父类public class Parent {}// 子类public class Son extends Parent {}子类转父类子类的引用指向子类转父类对象Son son = new Son();Parent parent = (Parent) son;结果运行没问题父类的引用指向子原创 2020-08-02 17:33:22 · 1231 阅读 · 0 评论 -
java中static静态块的执行时机
文章目录JVM 中类的加载顺序static 静态块什么时候执行JVM 中类的加载顺序在 JVM 中的类的创建有以下几个部分装载通过类型的完全限定名,产生一个代表该类型的二进制数据流解析这个二进制数据流为方法区内的内部数据结构创建一个表示该类型的java.lang.Class类的实例连接验证,确认类型符合Java语言的语义,检查各个类之间的二进制兼容性(比如final的类不用拥有子类等),另外还需要进行符号引用的验证准备,Java虚拟机为类变量分配内存,设置默认初始值解析(可选的原创 2020-08-01 00:44:58 · 633 阅读 · 0 评论 -
java中String与空值那些不得不提的事...
文章目录String 的初始值isEmpty() 判空与 null 比较判空equals("") 判空(String)nullString 的初始值当 String 作为类变量时,不管有没有加 static 前缀,其初始值都是 null当 String 作为方法中的变量时,如果没有赋初始值,在做变量方法调用判定空的时候,运行前就直接被检测出错误,显示需要赋初值isEmpty() 判空用来判定字符串是否为空的方法,当然这个空值得是不为 null 的空"",如下String str = "";Sy原创 2020-07-30 23:14:55 · 1247 阅读 · 0 评论 -
java中容易被忽视的语法知识点大汇总
文章目录final 修饰的属性不可被修改?final 修饰的属性不可被修改?这句话是不准确的,我们看一下下面几个例子,写法是错误的,final 的变量一样要求赋初值// 写法错误!public class TestDemo { public final int num;}// 写法错误!public class TestDemo { public final int num = 1; { num = 2; }}再看正确的几个例子// 写法正确public class T原创 2020-07-28 18:16:42 · 345 阅读 · 0 评论 -
java如何读写操作yaml文件展示
文章目录前言java 读取 yamljava 写入 yaml前言yaml 本身是一个标记语言,其文件形式是.yml,常用来作数据配置的文件下面使用的 Yaml 来源于org.yaml.snakeyaml这个依赖包,需要自己导入java 读取 yaml@Test public void read() throws IOException { Yaml yml = new Yaml(); FileReader reader = new FileReader("s原创 2020-06-30 18:51:33 · 3872 阅读 · 0 评论