自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 jdk21之FFM API (Third Preview)]详细预览

之前写的两个项目中,有使用过java调用dll,之前一直使用jni进行调用。最近在了解jdk21时,其中有个更新让我感兴趣,JEP 442[Foreign Function & Memory API (Third Preview)],是对外部函数和堆外内存访问的API更新。并且在检索发现,jdk17孵化的版本和jdk21的三次预览的版本的api还是不太一样的。Memory segment...

2023-10-12 01:05:34 83

原创 yolov5从零开始,自动瞄准不再是天方夜谭

本文篇幅较长,可按目录跳过观看。搭建yolov5运行环境训练自己的模型利用yolov5编写自动瞄准拟人移动鼠标双机架构一、搭建yolov5运行环境硬件前提:n卡,需要利用cuda软件准备:更新最新的n卡驱动,安装cuda11.7,安装cudnn,安装TensorRTgit代码管理,官网下载基于anaconda来配置python虚拟环境,anaconda官网下载p...

2023-10-08 20:51:19 233

原创 Graalvm编译spring boot 3 + jpa 的原生镜像

当然他们向下兼容,如果你运行中出现了问题,尝试更换对应的版本。在笔者编写该文章时,最新的springboot的ga版本已经是3.1.1了。有可能会有读者会将springboot的版本提升到最新。springboot3.0配置文件中已经添加了插件依赖,插件的作用就是编译java并且使用操作系统的可执行内核程序进行编译。的提醒,我将springboot的版本降低到了上一个GA版本3.0.8,然后再编译十分顺利了。过程中可能会出现status 137的异常,该异常的出现是编译时内存不足导致oom,请在编辑。

2023-07-08 00:45:08 687

原创 Graalvm编译spring boot 3 + jpa 的原生镜像

当然他们向下兼容,如果你运行中出现了问题,尝试更换对应的版本。在笔者编写该文章时,最新的springboot的ga版本已经是3.1.1了。有可能会有读者会将springboot的版本提升到最新。springboot3.0配置文件中已经添加了插件依赖,插件的作用就是编译java并且使用操作系统的可执行内核程序进行编译。的提醒,我将springboot的版本降低到了上一个GA版本3.0.8,然后再编译十分顺利了。过程中可能会出现status 137的异常,该异常的出现是编译时内存不足导致oom,请在编辑。

2023-07-08 00:44:06 732

原创 k8s集成kube-prometheus

正文下载kube-prometheus,注意与k8s版本对应支持,k8s-1.25版本使用kube-prometheus-release-0.12克隆仓库,按照指引使用kubectl安装prometheusgit clone -b release-0.12 https://github.com/prometheus-operator/kube-prometheus.gitcd kube-p...

2023-01-30 21:36:15 528

原创 最简单的k8s安装记录(包含dashboard)

使用sealos一键安装k8s集群sealos-githubsealos使用文档wget https://github.com/labring/sealos/releases/download/v4.1.4/sealos_4.1.4_linux_amd64.tar.gz && \ tar -zxvf sealos_4.1.4_linux_amd64.tar.gz s...

2023-01-29 19:51:06 365

原创 Harbor安装对接Containerd

使用docker-compose安装harbor先决条件:安装docker安装docker-compose安装参考下载并解压wget -c https://github.com/goharbor/harbor/releases/download/v2.3.5/harbor-offline-installer-v2.3.5.tgztar -zxvf harbor-offline-...

2023-01-28 23:42:32 1334

原创 解决Failure to find org.glassfish:javax.el:pom:3.0.1-b06-SNAPSHOT

问题描述Maven项目编译打包报错Failure to find org.glassfish:javax.el:pom:3.0.1-b06-SNAPSHOT.Failure to find org.glassfish:javax.el:pom:3.0.1-b07-SNAPSHOT.Failure to find org.glassfish:javax.el:pom:3.0.1-b08-SN...

2022-09-07 20:29:33 3752 1

原创 通过WireGuard搭建隧道实现内网穿透

1、安装wireguard官方安装手册:https://www.wireguard.com/install/docker安装:https://hub.docker.com/r/linuxserver/wireguardWireGuard 的安装条件非常苛刻,对内核版本要求极高,不仅如此,在不同的系统中,内核,内核源码包,内核头文件必须存在且这三者版本要一致,Red Hat、CentO...

2022-08-20 23:25:04 4148 2

原创 vsfpd主被动模式与可配置参数

一、主动被动模式ftp工作模式.drawio二、配置参数1. 登录和对匿名用户的设置write_enable=YES是否对登录用户开启写权限。属全局性设置。默认NOlocal_enable=YES是否允许本地用户登录FTP服务器。默认为NOanonymous_enable=YES设置是否允许匿名用户登录FTP服务器。默认为YESftp_...

2021-11-18 22:06:14 454

原创 使用Graalvm简单编译native-image

下载graalvm,解压并配置graalvm_home环境变量,若原有java_home需要将其指向graalvm_home:GRAALVM_HOME=C:\graalvm-ee-java11-21.3.0path=path;%GRAALVM_HOME%\binJAVA_HOME=%GRAALVM_HOME%使用gu安装native-image:gu install native-ima...

2021-11-18 22:04:49 3521 1

原创 zookeeper与kafka基础集群搭建记录

一、zookeeper1. 下载官方下载本文相同版本zookeeper3.7.0,百度云盘提取码:f2582. 安装(1)简单单机安装脚本拿着压缩包一次安装成功,没什么意外,贴上安装指令。#!/bin/bashtar -zxvf apache-zookeeper-3.7.0-bin.tar.gzmv apache-zookeeper-3.7.0-bin /usr/local/...

2021-10-23 21:18:01 148

原创 datax启动流程

组件datax采集流程Reader:Reader为数据采集模块,负责采集数据源的数据,将数据发送给Framework。Writer: Writer为数据写入模块,负责不断向Framework取数据,并将数据写入到目的端。Transformer:在数据同步、传输过程中,存在用户对于数据传输进行特殊定制化的需求场景,包括裁剪列、转换列等工作Job: Job是DataX用以描...

2021-07-24 19:18:49 1035

原创 手写一个面向接口的动态代理

如题,手写一个面向接口的动态代理。我们需要先了解jdk中的动态代理是怎么实现的。理解生成的代码和调用过程设置vm参数,-Dsun.misc.ProxyGenerator.saveGeneratedFiles=true,可以使jdk动态生成的class文件输出到磁盘中。设置vm options使用下面代码进行调试public interface IService { pu...

2020-12-16 22:55:12 229

原创 记广州联晟现场面

mysql的优化mysql中not exsit和not in的区别mybatis的一级二级缓存springmvc的处理流程spring管理的方法是否线程安全,为什么,如何设定为线程安全的描述一下我的跟打器项目的表创建思路或者处理流程vue的标签有哪些vif和vshow的区别arraylist的底层数据结构,扩容机制hashmap的扩容机制上面两种扩容,扩容时的位运算是向左还是向...

2020-12-03 13:08:16 108

原创 记多益视频面

自我介绍和项目介绍java的缺点哈希的碰撞冲突,我引用到了hashmap里,并说了hashmap的扩容机制和碰撞处理如何防止死锁平衡二叉树是什么,他的作用,为什么会有这种作用你的学习方式是什么。使用递归调用的注意事项怎么判断链表有循环引用你项目中的cicd,是怎么部署的,部署架构是怎样的遇到的最困难的问题。给定一个集合S(没有重复元素), 输出它所有的子集输入 1 2 3输...

2020-12-03 13:07:17 111

原创 监控服务运行状态并发送通知邮件文档

使用的是QQ邮箱,需要先在邮箱中开通smtp服务QQ邮箱开通stmp目录结构根目录 /var/haofangproject/email├── alive.sh 监控脚本├── emailStatus.txt 服务运行状态├── isRun.txt 服务故障转变正常运行发送内容├── noRun.txt 服务...

2020-11-18 16:33:05 880

原创 acme申请泛域名证书

阿里云授权腾讯云dnspod授权curl https://get.acme.sh | sh##阿里云export Ali_Key=""export Ali_Secret=""./acme.sh --issue --dns dns_ali -d 域名 -d '*.域名'##腾讯云export DP_Id=""export DP_Key=""./acme.sh --issue -...

2020-10-13 20:13:21 1595

原创 spring cloud微服务体系

微服务涉及组件服务注册与发现服务调用服务网关服务降级熔断服务配置中心和服务总线中间件消息驱动链路追踪当下springcloud中的可选方案服务注册,发现,调用服务注册中心维护着服务提供者的信息,能使得服务消费者调用。三者关系如下三者关系服务注册中心拥有着已注册服务的ip,端口,调用地址等基本信息。通过api可以获取的到全部服务的信息。在程序中,可...

2020-10-13 18:02:03 120

原创 systemctl服务目录

centos:/usr/lib/systemd/systemubuntu:/etc/systemd/system,但实际部分是从/lib/systemd/system中软连接的

2020-10-01 16:45:45 4168 1

原创 idea devtools热部署

添加pom依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope>runtime</scope> <op...

2020-09-18 21:23:35 285

原创 项目持续部署文档

部署方式部署架构使用docker简化原有的宿主机手动安装jdk,tomcat,mysql的部署。项目使用Jenkins来持续部署,提供了docker直接部署和docker-compose来管理docker部署两种方式默认使用docker-compose来部署,若想直接使用docker来部署,请将Jenkinsfile与Jenkinsfile2替换后push后生效下方生成文件列...

2020-09-11 00:08:09 227

原创 docker部署gitlab改端口

gitlab改启动端口为8880udo docker pull gitlab/gitlab-ce:latestdocker run \ --rm -d \ --hostname 192.168.123.150:8880 \ --publish 1443:443 --publish 8880:8880 --publish 2222:22 \ --name gitlab \ -...

2020-09-01 10:26:21 2236

原创 android

四大组件:Activity、Service、ContentProvider、BroadcastReceiver常用权限:<uses-permission android:name="android.permission.INTERNET" /> 允许网络访问<uses-permission android:name="android.permission.WRITE_EXT...

2020-08-27 22:54:53 117

原创 分析aqs源码自记

独占模式请求锁acquire()尝试获取锁tryAcquiretrue => 继续运行false=>执行addWaiter,获取返回的node作为acquireQueued的参数执行acquireQueued(addWaiter())==true=>acquireQueued(addWaiter())==false=>addWaiter...

2020-07-23 15:45:12 86

原创 apache commons-collections 反序列漏洞分析

在这里只记录下对jdk1.8可用的apache commons-collections中执行任意类任意执行方法链,实际程序代码与原作者相同,想知道更多分析思路,请参考原文环境jdk1.8commons-collections-3.2完整程序import org.apache.commons.collections.Transformer;import org.apache.common...

2020-06-19 22:40:49 732 2

原创 base64特性导致的不等串解码相同

base64是将原串以三个字符一组,转化成24个二进制位再分成四个字符的编码方式。下图就是将Man字符转为TWFu的过程。Man在很多时候,其实原字串的长度都不是3的倍数,这时候转出来的二进制位长度必然不是24的整数倍。这时候就需要对二进制位进行补零操作。在6个二进制位都为零的时候,base64中就呈现=号。base64对照表例如只有M字符时,转出来的编码为TQ...

2020-06-11 14:35:05 1144

原创 记第一次开发面试

环节一:自我介绍环节二:java基础和数据库基础String和StringBuilder的区别List有几类linkedList和ArrayList的区别CopyOnWriteArrayList的线程安全树与链表的区别java异常有哪几种栈溢出和OOM的场景如何改变栈内存大小除了内存与栈最大可容纳数有关外,还受什么因素影响线程的特性有哪些,线程的创建方式有...

2020-05-29 01:00:47 219

原创 JUC

JUCvolatile关键字不具备“互斥性”。不能保证变量的“原子性”内存可见性问题:当多个线程操作共享数据时,彼此不可见先看如下代码,创建一个线程去运行ThreadDemo,在运行时更改flag的值为true,然后在main线程中读取flag的值,如果为true则输出。public class TestVolatile { public static void main(...

2020-05-20 18:20:39 141

原创 java多线程基础

多线程线程,进程,多线程一、java线程1. 线程状态线程五大状态状态具体2. 线程方法方法说明setPriority(int newPriority)更改线程的优先级static void sleep(long millis)在指定的毫秒数内让当前正在执行的线程休眠void join()等待该线程终止static v...

2020-05-10 14:23:18 166

原创 JVM

未完待续……帧数据区:JVM类加载子系统运行时数据区程序计数器虚拟机栈本地方法接口本地方法栈堆方法区直接内存执行引擎String Table垃圾回收一、JVM与java体系结构使用HosSpot VM1. jvm整体结构jvm整体结构image-202004281915411532. 架构图1) jvm整体结构详细图...

2020-05-07 12:48:21 301

原创 redis知识归纳

一、linux redis搭建环境分为docker安装和官网下载手动安装,docker就不描述了1. 下载官网redis下载下载获得redis-版本号.tar.gz后将它放入我们的Linux目录/opt/opt目录下,解压命令:tar -zxvf redis-版本号.tar.gz解压完成后出现文件夹:redis-版本号,进入目录:cd redis-版本号2. make...

2020-04-22 21:12:02 117

原创 vue入门归纳

VUE搭建环境一、安装node.js二、安装vue的脚手架npm install --global vue-cli三、创建项目vue init webpack 项目名字init后不选择 eslint,其他任意cd 项目名字cnpm install / npm installnpm run dev四、引入需要依赖1.axios1)安装cnpm install...

2020-04-22 16:28:41 117

原创 反射构造器wrong number of arguments错误

记一次在获取构造器时报出wrong number of arguments错误,在通过反射来使用数组或可变参数构造器时,反射出来的构造方法里使用的参数是数组类型。这时不能直接使用类型数组去入参给newInstance。我们看一下newInstance的代码public T newInstance(Object ... initargs) throws Insta...

2020-03-31 13:27:39 11050

原创 尝试使用jdk8函数式接口与方法引用

序在之前学习java时,基本没有使用到函数式接口与方法引用这一部分特性,只用过lambda表达式作为参数传递给方法使用。java1.8有如下接口函数式接口使用在这里尝试使用6种函数式接口,并且将方法引用传递给声名的接口对象。接口名称接口作用Function<T,R>T 作为输入,返回的 R 作为输出Supplier&l...

2020-03-15 13:14:19 98

原创 YogurtCat Simple Demo

序一开始因为大项目权限原因源码拉不下来,后来下载的simple分支,看的是simple Demo。下载源码后看了一下依赖,发现主要是使用springboot-web,springboot-date-jpa,h2,还使用了freemarker模板引擎,以下是目录结构。目录结构由于之前学过的是ssm,springboot和mybatis-plus的使用,并且数据库一...

2020-02-19 16:52:16 192

原创 JNA User32 Api使用参考

常用的user32API说明JNA改变窗口状态和键盘钩子键盘钩子

2020-02-07 23:19:32 1574

原创 内聚与耦合的类型与举例(转)

内聚和耦合的举例内聚类型:1.偶然内聚模块的各成分之间没有关联,只是把分散的功能合并在一起。例:A模块中有三条语句(一条赋值,一条求和,一条传参),表面上看不出任何联系,但是B、C模块中都用到了这三条语句,于是将这三条语句合并成了模块A。模块A中就是偶然内聚。2.逻辑内聚逻辑上相关的功能被放在同一模块中。例:A模块实现的是将对应的人员信息发送给技术部,人事部和财政部,...

2020-01-04 14:28:32 3304

原创 springboot中thymeleaf使用editor.md

前在给拖拉机编写社区时需要用到markDown文本编辑,在这里我先列举部署流程,再写一些我遇到的坑。上一篇,富文本UEditor部署editor.md的部署在使用editor.md部署时没有这么多坑,也并不需要查看太多的源码,但是上传图片的接口需要自己写。下载地址解压之后将文件夹改名为editor然后让入static下。目录如下图。图片.png然后将ex...

2019-12-29 17:01:21 1050

原创 springboot中thymeleaf使用UEditor

前在给拖拉机编写社区时需要用到富文本编辑,在这里我先列举部署流程,再写一些我遇到的坑image部署UEditor使编辑器显示直接上UEditor官网下载下载地址将一个完整源码和一个JSP-utf8版下载下来。image打开完整源码的zip,进入/euditor-1.4.3.3/jsp/src/com/baidu,将整个ueditor放入你的项...

2019-12-29 17:00:45 326

空空如也

空空如也

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

TA关注的人

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