自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【个人学习】JVM(8): 对象的实例化、内存布局、访问定位

因此一般来说(由字节码中跟随invokespecial指令所决定),new指令之后会接着就是执行init方法,把对象按照程序员的意愿进行初始化,这样一个真正可用的对象才算完成创建出来。将对象的所属类(即类的元数据信息)、对象的HashCode和对象的GC信息、锁信息等数据存储在对象的对象头中。在Java程序的视角看来,初始化才正式开始。初始化成员变量,执行实例化代码块,调用类的构造方法,并把堆内对象的首地址赋值给引用变量。所有属性设置默认值,保证对象实例字段在不赋值可以直接使用。

2024-08-23 21:00:00 920

原创 【个人学习】JVM(7):方法区概述、方法区内部结构、垃圾回收等

不是虚拟机运行时数据区的一部分,也不是《Java虚拟机规范》中定义的内存区域。直接内存是在Java堆外的、直接向系统申请的内存区间。来源于NIO,通过存在堆中的DirectByteBuffer操作Native内存通常,访问直接内存的速度会优于Java堆。即读写性能高。因此出于性能考虑,读写频繁的场合可能会考虑使用直接内存。Java的NIO库允许Java程序使用直接内存,用于数据缓冲区/*** 查看直接内存的占用与释放*///1GB//直接分配本地内存空间。

2024-08-21 20:30:00 1400

原创 【个人学习】JVM(6):堆、堆空间分配、GC、堆空间参数设置、代码优化

从内存模型而不是垃圾收集的角度,对Eden区域继续进行划分,JVM为每个线程分配了一个私有缓存区域,它包含在Eden空间内。多线程同时分配内存时,使用TLAB可以避免一系列的非线程安全问题,同时还能够提升内存分配的吞吐量,因此我们可以将这种内存分配方式称之为快速分配策略。据我所知所有OpenJDK衍生出来的JVM都提供了TLAB的设计。1、每个线程都有一个TLAB空间2、当一个线程的TLAB存满时,可以使用公共区域(蓝色)的。

2024-08-19 23:30:00 719

原创 【个人学习】JVM(5):本地方法接口、本地方法栈

简单地讲,一个Native Methodt是一个Java调用非Java代码的接囗。一个Native Method是这样一个Java方法:该方法的实现由非Java语言实现,比如C。这个特征并非Java所特有,很多其它的编程语言都有这一机制,比如在C++中,你可以用extern “c” 告知c++编译器去调用一个c的函数。

2024-08-17 18:45:00 1319

原创 【个人学习】JVM(4):虚拟机栈

具体问题具体分析如果只有一个线程才可以操作此数据,则必是线程安全的。如果有多个线程操作此数据,则此数据是共享数据。如果不考虑同步机制的话,会存在线程安全问题。如果对象是在内部产生,并在内部消亡,没有返回到外部,那么它就是线程安全的,反之则是线程不安全的。/*** 面试题:* 方法中定义的局部变量是否线程安全?具体情况具体分析* 何为线程安全?* 如果只有一个线程才可以操作此数据,则必是线程安全的。* 如果有多个线程操作此数据,则此数据是共享数据。如果不考虑同步机制的话,会存在线程安全问题。

2024-08-15 20:00:00 832

原创 【个人学习】JVM(3):程序计数器

官方文档网址:https://docs.oracle.com/javase/specs/jvms/se8/html/index.html。

2024-08-13 20:30:00 744

原创 【个人学习】JVM(2):运行时数据区概述及线程

本节主要讲的是运行时数据区,也就是下图这部分,它是在类加载完成后的阶段当我们通过前面的:类的加载-> 验证 -> 准备 -> 解析 -> 初始化 这几个阶段完成后,就会用到执行引擎对我们的类进行使用,同时执行引擎将会使用到我们运行时数据区也就是大厨做饭,我们把大厨后面的东西(切好的菜,刀,调料),比作是运行时数据区。而厨师可以类比于执行引擎,将通过准备的东西进行制作成精美的菜品。

2024-08-11 21:15:00 246

原创 【个人学习】JVM(1):类加载子系统

在Java的日常应用程序开发中,类的加载几乎是由上述3种类加载器相互配合执行的,在必要时,我们还可以自定义类加载器,来定制类的加载方式。为什么要自定义类加载器?隔离加载类修改类加载的方式扩展加载源防止源码泄漏开发人员可以通过继承抽象类ava.1ang.ClassLoader类的方式,实现自己的类加载器,以满足一些特殊的需求。

2024-08-09 20:00:00 522

原创 【学习笔记】:Maven初级

项目依赖jar包多jar包来源、版本问题jar包导入问题jar包之间的依赖脱离IDE环境的项目构建操作,需要专门的工具Archetype 是一个 Maven 项目模板工具包。用于快速创建项目。目前提供41中模板。mvnarchetype:generate可以查看当前支持的骨架。1: internal -> appfuse-basic-jsf (创建一个基于Hibernate,Spring和JSF的Web应用程序的原型)

2024-08-07 20:00:00 1003

原创 【问题记录】path变量点击编辑无法展开

今天想把jdk11改成jdk8,照着网上自己改了之后发现path变量点击编辑无法展开,上网上搜了原因,应该是自己添加变量的时候把%JAVA_HOME%\bin和%JAVA_HOME%\jre\bin都上移到了最上面,两个在一起的原因。

2024-07-28 18:00:00 260 1

原创 【个人记录】pkg可以将Node.js应用打包为可执行文件

之前按客户需求做了一个简易定时任务应用,完成后为方便客户使用需要打包为可执行文件。

2024-07-26 20:00:00 1213

原创 【个人记录】:Android中.9.png制作

绘制完了图片的拉伸区域之后,我们还需要绘制图片包裹的内容的显示区域,如果没有绘制的话,里边的内容是会从左到右依次显示,这样有时达不到我们想要的效果。通过对四条边的描黑边处理,我们就成功了避免了使用图片时拉伸边角的问题,拉伸的都是我们设置的区域,显示的也是我们想要显示的位置。我们先绘制左上两边,控制拉伸位置,如下绘制完成了之后,可以看右边的阅览图,明显比没有绘制时边角的清晰度更高。Demo中的图片我想要图片里面的文本显示在中央区域,即不显示在文本区域,所以我的黑色描边可以这样描。绘制内容显示区域/完成图。

2024-07-24 21:00:00 576

原创 【个人记录】HbuilderX 配置使用MUMU模拟器调试

一、配置HbuilderX中的路径: 点击顶部的工具=>设置=>运行配置,需要配置其中的 adb路径和 模拟器端口(如下图),adb路径是HuildeX的安装路径下的plugins文件=>文件=>tools文件=>adbs文件然后可以看见adb.exe或者adb。然后复制这个整的路径放到adb路径配中(如下图),MUMU模拟器端口号:7555,所以端口配置7555。

2024-07-19 20:30:00 889

原创 【记录】一个简单的定时任务调用mqtt接口

【代码】【记录】一个简单的定时任务调用mqtt接口。

2024-07-16 18:00:00 105

原创 【错误解决】No validator could be found for constraint ‘jakarta.validation.constraints.NotBlank‘

由于出此错误前已两天没有提交代码,修改内容过多,一开始不知道是哪里出了问题。但看输出的异常信息很明显可以看出是字段验证出了问题。类型的字段,但是这个验证器不支持这种类型。@NotBlank 主要用于验证单个字符串字段,确保它不是空的或者只包含空白字符。而我们修改字段类型时将String修改为Long,所以出了问题。调查后发现使用 @NotBlank 验证器来验证一个。起因:修改了数据库字段及后端数据层代码后出现问题。使用@NotNull。

2024-07-09 12:00:00 257

原创 【学习笔记】Mybatis-Plus(四):MP中内置的插件

这个被@Version标识的字段就是版本,当然数据库中的字段不一定叫version。总之在更新的时候,sql语句会自动加上这个版本的条件。mysql,oracle,db2,h2,hsql,sqlite,postgresql,sqlserver等几乎市面上所有常用的数据库。其他内置的插件,自行通过官网进行了解:https://baomidou.com/pages/2976a3/更新时,通过加入版本号来进行更新。用来防止第二类丢失更新问题。

2024-07-07 20:15:00 930

原创 记录-前端相关(1):Vue3表单组件el-form校验规则rules属性

在使用 Element UI (现在称为 Element Plus) 的表单组件el-form时,rules属性用于定义表单项的校验规则。这些规则可以帮助你确保用户输入的数据符合预期的格式和要求。rules: {{ required: true, message: '密码不能为空', trigger: 'blur' },{ min: 6, max: 20, message: '密码长度应在6到20个字符之间', trigger: 'blur' },if (!

2024-07-03 23:00:00 695

原创 【学习笔记】Mybatis-Plus(三):MP中Wrapper的使用

注意:查询用QueryWrapper和LambdaQueryWrapper来封装updateWrapper和LambdaUPdateWrapper不但能封装查询还能更改要更新的对象。

2024-06-23 21:00:00 376

原创 【学习笔记】Mybatis-Plus(二) :常用注解

增加了这个注解的字段就是标识是否逻辑删除了,通常这个字段就0和1两个值。这个注解的属性有很多,不过基本都用默认即可。而我们的实体类还是叫user,那么就需要用这个注解。MP默认主键的名字是id,如果表中不叫id而是叫uid或者userid的话,就需要标识为id主键了。比如我们User表中的address字段,在实体类中非要叫addr,此时就可以通过这个注解进行配置。逻辑删除时用,delete变成update,而且删改查都会加上这个逻辑删除的条件。比如我们的主键现在叫userid而且是自增长类型的。

2024-06-21 19:00:00 778

原创 【解决错误】IDEA启动SpringBoot项目 出现:Command line is too long

长类路径被写入文件,然后由应用程序启动器读取并通过系统类加载器加载。虚拟机上的,而大多数的操作系统都会有命令行的最大长度限制,超过这个限定值时就会导致。和整个应用无法成功启动,那为什么会报这样一个错误呢?通过翻译后的报错信息来看,可知是。底层是通过命令行或者文件的方式将。选项,最后apply。按修改命令行的方式,

2024-06-20 23:00:00 562

原创 [学习笔记]-MyBatis-Plus简介

Mybatis-Plus(简称 MP)是一个的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。简言之就是对单表的增删改查有了很好的封装。基本不用再单独写sql语句了。目前此类基于mybats的增强工具有很多,但是目前MP可以算是国内最主流的了。而且它的功能也是最全的。github地址:https://github.com/baomidou/mybatis-plusgitee地址:https://gitee.com/baomidou/mybatis-plus。

2024-06-19 21:00:00 973

原创 【记录】ChatGLM3-6B大模型部署、微调(二):微调

包括界面语言、模型名称和模型路径,以及训练的轮数(看情况自行选择,训练后不够可继续训练)此处记录了所有的数据集点击预览。

2024-06-15 21:30:00 505

原创 【记录】ChatGLM3-6B大模型部署、微调(一):部署

以上完成了ChatGLM3-6B本地模型的部署和简单测试。

2024-06-13 20:00:00 1215

原创 【记录】Conda安装及使用方法

Conda是一种通用包管理系统,旨在构建和管理任何语言和任何类型的软件。举个例子:包管理与pip的使用类似,环境管理则允许用户方便地安装不同版本的python并可以快速切换。Anaconda是一个打包的集合,里面预装好了Conda、Python以及一大堆安装好的工具包,比如:numpy、pandas等,拥有众多packages、科学计算工具等,就是把很多常用的不常用的库都给你装好了。

2024-06-11 21:00:00 752

原创 【记录】微信小程序开发和发布及一些问题解决

阿迪斯

2024-06-09 20:00:00 1567

原创 【知识拓展】HTTP、WebSocket 和 RPC:区别与使用场景详解

HTTP(Hypertext Transfer Protocol)是一种用于分布式、协作、超媒体信息系统的应用层协议。它是万维网(WWW)的基础,通过它,客户端(通常是浏览器)和服务器之间可以进行通信。WebSocket是一种在单个TCP连接上进行全双工通信的协议。它由HTML5引入,旨在解决HTTP的实时性和效率问题。

2024-06-08 18:00:00 2274

原创 【记录】LangChain+本地模型的文档问答(webUI)

已在notebook测试无误。

2024-06-07 20:15:00 1294

原创 【记录】基于qwen/Qwen1.5-7B-Chat离线模型的chat应用

使用 ngrok 将本地的 Gradio 服务器端口转发到公共 URL。# 输出公共 URL。

2024-06-05 21:00:00 264

原创 【记录】基于LangChain+本地模型的文档问答Demo

一个文档问答测试Demo记录,已在modelscope notebook测试正常。

2024-06-03 20:00:00 1146

原创 【知识拓展】机器学习基础(二):什么是模型、自定义模型、模型训练、模型调优

接上文,前文对模型没有过多介绍,随着看的资料增多,对模型有了更多的自我认识,记录一下。要了解模型,我们先从零开始创建一个模型开始:最简单的方法是使用Python和scikit-learn库。关于scikit-learn库,在这做个简单介绍,类似的库和框架有很多如NumPy、Pandas、TensorFlow、PyTorch,这些不是本文重点,后续有必要再补充,这里不做详细介绍。

2024-05-31 20:00:00 872

原创 【知识拓展】机器学习基础(一):什么是预处理对象、模型对象 、pipeline、Tokenizer

定义自定义预处理对象# 简单的预处理逻辑:转小写并去除标点符号import re# 加载预训练模型# 创建自定义预处理对象实例# 创建 pipeline,传入自定义预处理对象和模型对象# 输入文本input_text = "今天的天气真好!# 进行预测。

2024-05-29 20:30:00 848

原创 【问题解决】huggingface 离线模型下载

因业务需要在本机测试embedding分词模型,使用 huggingface上的transformers 加载模型时,因为网络无法访问,不能从 huggingface 平台下载模型并加载出现如下错误。下面提供几种模型下载办法。

2024-05-28 19:00:00 663

原创 【记录】初次本地搭建的模型-MiniCPM 2B

查阅后,打算动手尝试搭建端侧模型,看看效果。选中主要是因为参数小,同时中文支持相对较好。首先对按照官网提供的demo进行了尝试,然后在colab中完成了一个webui程序并测试,最后通过docker环境在本地搭建并测试成功。

2024-05-27 22:00:00 1056

原创 【知识拓展】LocalTunnel-高性价比的内网穿透工具(2)

LocalTunnel 是一个轻量级的代理服务,它允许您通过一个公共 URL 访问您的本地开发环境。它创建了一个隧道,并将流量转发到您的本地服务器上。这样,即使您的本地机器在防火墙或 NAT 路由器后面,也可以轻松地访问和共享您的本地 Web 应用程序。

2024-05-26 21:00:00 999

原创 【知识拓展】ngrok-高性价比的内网穿透工具

使用google colab运行的web应用无法打开进行测试。第一时间想到是否有相关工具能将内网映射到外网供访问。于是找到了ngrok。

2024-05-25 20:00:00 959

原创 【错误解决】使用HuggingFaceInstructEmbeddings时的一个错误

查看代码发现,HuggingFaceInstructEmbeddings和sentence-transformers模块版本不兼容导致。安装sentence-transformers时带上版本号,否则默认会安装最新版本。起因:使用huggingface构建一个问答程序时出现的问题。可以明显看到方法参数不同。

2024-05-24 22:45:00 357

原创 【解决】python安装sdk出错

后续会对该内容进行分享。

2024-05-20 20:00:00 429

原创 【记录】Docker笔记(九):Docker Swarm简介

Docker Swarm 是由 Docker 公司推出的 Docker 的原生集群管理系统,它将一个 Docker 主机池变成了一个单独的虚拟主机,用户只需通过简单的 API 即可实现与 Docker 集群的通信。Docker Swarm 使用 GO 语言开发。从 Docker 1.12.0 版本开始,Docker Swarm 已经内置于 Docker 引擎中,无需再专门的进行安装配置。

2024-05-19 20:00:00 872

原创 【记录】docker笔记(八):Docker网络-none网络、host网络

由于容器与宿主机共用一个 Network Namespace,所以无论是 IP 还是应用程序的 Port,容器与宿主机的都是相同的,所以对于容器中应用程序的 Port 不存在映射的问题,host 中的 Port 与容器中的 Port 相同。也正因为 host 与容器中的应用使用的是相同的端口号,所以当采用 host 网络模式时,在一个宿主机中只能启动一个应用的一个容器,否则会出现端口号冲突问题。该网络类型的容器没有独立的网络空间,没有独立的 IP,全部与 host 共用。none 网络,即没有网络。

2024-05-18 21:00:00 381

原创 【记录】docker笔记(七):Docker网络-bridge网络(2)

对于自定义的 bridge 网络,其具有一个特性:该网络上的容器可以通过容器名互 ping。如果在默认的 bridge 网络上实现通过容器名进行的连接,则需要创建容器时通过。上面的命令创建了一个 bb1-1 的容器,其共享了 bb1 容器的 Network Namespace。查看容器 bb1-1 的详情,可以发现,其没有自身的网络设置。在创建容器时可以指定其与某已经存在的容器共享 Network Namespace,但要求该已经存在的容器采用的是 bridge 网络模式。所以,--link 指定的连接。

2024-05-17 21:00:00 267

空空如也

空空如也

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

TA关注的人

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