- 博客(58)
- 收藏
- 关注
原创 SpringBoot项目根据配置文件初始化并向容器注册Bean
在开发过程种有这种场景,我们在使用数据存储的时候定义了一个接口,接口的实现有很多,例如有es的数据存储实现,mysql的数据存储实现,每个项目只能选择一种数据库。这个时候我们再写代码的时候就可以考虑在配置文件中配置一个数据库类型,启动的时候只对配置的数据库进行初始化,并向容器注册对应的bean定义Condition实现类的目的是获取配置文件配置,判断是否需要加载注入某个bean/*** 是否初始化Milvus*/@Override} else {/*** 是否初始化es*/
2024-03-15 15:30:35 610
原创 深入学习Elasticsearch 系列文章链接汇总
以上是自己在学习以及使用elasticsearch中总结的一些经验以及踩过的一些坑,希望对家有帮助,有需要可以私信联系。
2024-02-26 10:57:49 566
原创 SpringBoot集成MongoDB(3)|(MongoTemplate的List操作)
MongoDB是一种高性能、可扩展的文档数据库,它使用类似于JavaScript的语言查询数据。在Java中,Spring Data MongoDB提供了一个MongoTemplate类,用于简化MongoDB的操作。本文将重点介绍如何使用MongoTemplate进行List操作。以上就是SpringBoot集成MongoDb数据库内容实现如何使用MongoTemplate进行List操作的技术分享,希望对大家有用,也可以进群交流。
2024-01-31 16:10:38 724
原创 计算机存储空间大小换算(汉字->存储空间)
项目场景:在文本存储以及向量化场景中,经常会遇到客户问,我的1G文档对应的数据落地大概需要占用多少的磁盘空间呢,为此整理了一个换算方式。
2024-01-28 11:51:41 2327
原创 Lambda表达式(5)|(List求和、求平均、求最大最小、分组求)
Lambda表达式是Java 8中引入的一个新特性,它提供了一种清晰简洁的方式来表示一段单行的代码。Lambda表达式主要用于实现简单的接口,特别是只有一个方法的接口(函数式接口)。在集合操作中,Lambda表达式可以极大地简化代码,提高开发效率。本文将通过一个简单的例子来展示如何使用Lambda表达式进行列表中元素的求和与求平均、求最大值、最小值等一些操作。通过上述例子,我们可以看到Lambda表达式在集合操作中的威力。它不仅使代码更加简洁,而且提高了代码的可读性。
2024-01-25 17:46:17 2602
原创 图数据库Gremlin语法(2)| 边的操作
Gremlin语言是图数据库最主流的查询语言,是Apache TinkerPop框架下规范的图语言,相当于SQL之于关系型数据库。为了图数据库使用者更好的掌握Gremlin这门图语言,我们对Gremlin Steps进行了分类与总结,接下来将会出一个Gremlin系列文章(分25期来完成这个计划),每一期会针对一类Step进行语法讲解与实例分析。深入学习Gremlin 系列文章链接汇总连接:https://blog.csdn.net/javeme/article/details/82631834s。
2024-01-25 10:51:48 1098
原创 SpringBoot集成Milvus2.3.4(2) |(实现向量的增删改查)
Milvus向量数据库简介:Milvus是一个开源的、可扩展的、高性能的向量数据库,采用分布式架构,支持海量向量数据的存储、检索和管理。它主要应用于计算机视觉、自然语言处理、推荐系统等人工智能领域,可以实现相似度检索、聚类分析、降维等功能。高性能:采用分布式架构和高效的索引算法,实现高速的向量检索和计算。可扩展: 支持动态扩容和负载均衡,满足不断增长的数据存储和处理需求。易用性: 提供Python、Java、C++等多种语言的SDK,方便用户快速接入和开发应用。
2024-01-24 17:25:50 1635
原创 图数据库Gremlin语法(1)| 图基本概念与操作
Gremlin语言是图数据库最主流的查询语言,是Apache TinkerPop框架下规范的图语言,相当于SQL之于关系型数据库。为了图数据库使用者更好的掌握Gremlin这门图语言,我们对Gremlin Steps进行了分类与总结,接下来将会出一个Gremlin系列文章(分25期来完成这个计划),每一期会针对一类Step进行语法讲解与实例分析。深入学习Gremlin 系列文章链接汇总连接:https://blog.csdn.net/javeme/article/details/82631834s。
2024-01-10 18:22:11 639
原创 Java中的跨站脚本攻击(XSS)处理技术
跨站脚本攻击(XSS)是网络攻击中非常常见的一种形式,对网站的安全性和用户的隐私构成了严重威胁。在Java开发中,我们应该采取一系列措施来防范和处理XSS攻击,包括输入验证、编码输出、使用安全的API、设置HTTP头、内容安全策略、输入过滤和使用安全的框架等。同时,我们还需要定期进行安全审计、更新和修补漏洞、监控和日志记录、定期培训、代码审查、测试和验证等措施来确保应用程序的安全性。
2023-12-18 19:24:18 1790
原创 SpringBoot集成websocket(5)|(使用OkHttpClient实现websocket以及详细介绍)
上篇文章介绍了为什么选用OkHttpClient来实现websocket,本篇章就不过多的讲述,本章主要介绍OkHttpClient实现websocket多级代理跳转中的问题优化以及springboot实现websocket的一些常见问题。本文主要介绍了为什么选用OkHttpClient来实现websocket,本篇章就不过多的讲述,本章主要介绍OkHttpClient实现websocket多级代理跳转中的问题优化以及springboot实现websocket的一些常见问题。
2023-12-15 11:59:06 1730
原创 SpringBoot集成Elasticsearch8.x(9)|(RestClient实现Elasticsearch DSL操作)
Elasticsearch curl命令-XGET一种请求方法-d 标识以post形式传入参数 ,写在请求正文里面?pretty=true 以格式的形式显示结果pretty --查询elasticsearch的健康信息curl -XGET http://localhost:9200/ --查询实例的相关信息curl -XGET http://localhost:9200/_cluster/nodes/ --得到集群中节点的相关信息。
2023-12-06 14:37:44 727
原创 Lambda表达式(4)|(函数式接口)
Lambda表达式(也称为闭包)是Java 8中最大和最令人期待的语言改变。它允许我们将函数当成参数传递给某个方法,或者把代码本身当作数据处理:函数式开发者非常熟悉这些概念函数式接口(Functional Interface)就是有且仅有一个抽象方法,但是可以有多个非抽象方法的接口。函数式接口可以被隐式转换为 lambda 表达式。函数式接口,即适用于函数式编程场景的接口。而Java中的函数式编程体现就是Lambda,所以函数式接口就是可以适用于Lambda使用的接口。
2023-10-08 15:32:31 142
原创 Docker-部署docker-compose以及管理服务
Docker 是一个开源的容器化平台,可以帮助我们快速构建、打包和运行应用程序。而 Docker Compose 则是用于管理多个容器应用的工具,可以轻松定义和管理多个容器之间的关系。Docker Compose是一个用来定义和运行复杂应用的Docker工具。
2023-09-22 17:31:25 466 2
原创 Docker-如何获取docker官网x86、ARM、AMD等不同架构下的镜像资源
开发过程中经常会使用到一些开源的资源,比如经常使用的milvus数据库,x86架构的大家使用的比较多,国内的镜像厂库已经有了对应的镜像,但arm版本的就比较少见。由于外放访问很不方便经常让费时间去找资源、试资源,本文将会介绍如何借助梯子拉去hub.docker.com上的镜像资源。注意:如果一个镜像既支持x86也支持arm64,那需要下载arm版的话就需要在arm机器上拉去。希望可以帮助到大家。随便用一个邮箱可以注册一个账号,记住用户密码,后面需要。随便用一个邮箱可以注册一个账号,记住用户密码,后面需要。
2023-09-20 10:26:13 2887
原创 SpringBoot集成websocket(4)|(使用okhttp3实现websocket)
HTTP是现代应用常用的一种交换数据和媒体的网络方式,高效地使用HTTP能让资源加载更快,节省带宽。OkHttp是一个高效的HTTP客户端,它有以下默认特性:支持HTTP/2,允许所有同一个主机地址的请求共享同一个socket连接连接池减少请求延时透明的GZIP压缩减少响应数据的大小缓存响应内容,避免一些完全重复的请求请求失败时自动重试主机的其他 IP,自动重定向当握手失败时会回退到TLS 1.0。
2023-09-04 14:50:35 2185
原创 SpringBoot异步任务(2)|(线程池使用)
线程池开启异步任务在springboot中的使用上面的方式实现了自定义一个ThreadPoolTaskExecutor线程池,然后执行任务的时候获取线程池并执行任务。
2023-08-09 09:30:45 757 1
原创 SpringBoot集成websocket(3)|(websocket调用websocket采用回调方式实现数据互传)
本节主要介绍的是springboot实现websocket的客户端服务端,以及客户端与服务端的数据互传。以下为伪代码,业务逻辑删除导致不能直接拷贝运行,大家可以参考其中的思路实现。本文主要介绍websocket客户端、服务端的实现,同时通过连接工具中转websocket请求参数,捉到实时同步,以及数据收集。代码为伪代码,删除了实际使用当中的业务逻辑,介绍的是实现实录,大家可以参考。
2023-08-08 16:02:41 1695
原创 正则表达式系列|(以xx开头xx结尾提取、切分、替换)
正则表达式是对字符串操作的一种逻辑公式;作用:检索、替换、切分那些符合某个模式(规则)的文本,可以通过一些设定的规则来匹配一些字符串,是一个强大的字符串匹配工具。以上就是正则表达式用来检索、替换那些符合某个模式(规则)的文本案例,后续会陆续补充完善。
2023-08-01 11:26:17 2103
原创 SpringBoot集成Elasticsearch8.x(8)|(新版本Java API Client的Painless语言脚本script使用)
Painless Scripting 简介:Painless是一种简单,安全的脚本语言,专为与Elasticsearch一起使用而设计。从ES5.0开始,它是Elasticsearch的默认脚本语言,可以安全地用于内联和存储脚本。Painless特点:性能牛逼:Painless脚本运行速度比备选方案(包括Groovy)快几倍。安全性强:使用白名单来限制函数与字段的访问,避免了可能的安全隐患。可选输入:变量和参数可以使用显式类型或动态def类型。
2023-07-31 15:13:20 1995
原创 springboot项目调用xxx.so文件常见问题
springboot调用.so文件,java项目需要使用System.loadLibrary("xxx")来调用.so的类库,在集成过程中国遇到的问题以及问题的处理
2023-06-16 11:19:40 1618 2
原创 SpringBoot集成Elasticsearch8.x(7)|(新版本Java API Client使用完整示例)
在Es7.15版本之后,es官方将它的高级客户端RestHighLevelClient标记为弃用状态。同时推出了全新的java API客户端Elasticsearch Java API Client,该客户端也将在Elasticsearch8.0及以后版本中成为官方推荐使用的客户端。定义一个实体,用于向ES中存储数据@Data@Builder} ## 4. 调用测试实现 > 实现索引的创建以及数据的存储查询示例```c"ES操作" }) @RestController。
2023-06-01 19:41:50 8778 15
原创 SpringBoot集成websocket(2)|(websocket服务端实现以及websocket中转实现)
本节主要介绍的是springboot实现websocket的客户端服务端,以及作为中转服务实现客户端长连接服务端,服务端长连接第三方websocket服务的数据传输。本文主要介绍websocket客户端、服务端的实现,以及客户端通过websocket连接服务端,服务端连接第三方的websocket接口,并且将第三个方数据直接返回给客户端,起一个中间websockey代理服务作用,实现数据的中转。
2023-05-17 15:02:04 1404 2
原创 SpringBoot集成websocket(1)|(websocket客户端实现)
WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。以上就是SpringBoot集成websocket客户端的内容,用于后端服务调用websocket请求。具体业务逻辑执行在代码中自己实现,这里只是给了具体的demo和实例。
2023-05-17 14:17:58 2139
原创 GraphHub使用Gremlin图遍历语言查询经过某一点的路径
项目场景:在一个案件中警方排查到了受害人的身份信息,现在要根据受害人的信息查询出来所有和受害人相关联的人员信息。这个时候我们就用到了图谱中根据某个顶点查询所有路径的场景。
2023-04-23 11:57:41 294
原创 SpringBoot集成Milvus|(实现向量的存储和查询)
随着互联网不断发展,电子邮件、论文、物联网传感数据、社交媒体照片、蛋白质分子结构等非结构化数据已经变得越来越普遍。如果想要使用计算机来处理这些数据,需要使用 embedding 技术将这些数据转化为向量。随后,Milvus 会存储这些向量,并为其建立索引。Milvus 能够根据两个向量之间的距离来分析他们的相关性。如果两个向量十分相似,这说明向量所代表的源数据也十分相似Milvus 是一款云原生向量数据库,它具备高可用、高性能、易拓展的特点,用于海量向量数据的实时召回。
2023-04-17 15:34:47 4067 1
原创 SpringBoot集成ChartGpt
ChatGPT(Chatbot Generative Pre-trained Transformer)是一种新型的聊天机器人技术,它可以帮助用户与虚拟助手进行自然语言对话,从而节省时间和解决繁重的任务。ChatGPT使用自然语言处理技术,可以让机器认识自然语言,并分析人类的意图,并根据人类的意图提供相应的回复。ChatGPT可以让机器模仿真实的人类对话,并能智能地回答问题,从而帮助客户解决问题。上述是springboot 集成chatGPT的的基本实现。
2023-04-17 14:32:54 2112
原创 GraphHub使用Gremlin图遍历语言查询边最多的顶点数据
项目场景:在可视化展示界面中,需要展示一个关系数据比较丰富的图结构。因此需要实现在图数据库中查询,边最多的顶点数据。
2023-02-20 16:32:11 564
原创 SpringBoot项目EasyExcel使用
EasyExcel是一个基于Java的、快速、简洁、解决大文件内存溢出的Excel处理工具。他能让你在不用考虑性能、内存的等因素的情况下,快速完成Excel的读、写等功能。将表头写入excel并通过浏览器下载
2023-02-17 11:04:13 857 1
原创 SpringBoot集成Elasticsearch8.x(6)|(新版本Java API Client使用)
ElasticSearch在7.17版本之前使用的java客户端是Java REST Client,但是从7.17版本开始,官方将Java REST Client标记为弃用(deprecated),推荐使用新版Java Client。本文介绍新版ElasticSearch Java Client的基本用法1、JAVA REST client ES提供了两个REST客户端版本(7.17版本后使用)Java Low Level REST Client :用于Elasticsearch的官方低级客户端。
2023-02-15 17:24:52 4548 8
原创 SpringBoot异步任务(1)|(异步任务执行以及回调)
异步任务在springboot中的使用,介绍异步多线程执行的思想,大家可以参考该模式使用在设计场景中。
2023-02-15 17:03:49 672
原创 图数据库批量导入(HugeGraph-Loader )
HugeGraph-Loader 是 HugeGragh 的数据导入组件,能够将多种数据源的数据转化为图的顶点和边并批量导入到图数据库中。本地磁盘文件或目录,支持 TEXT、CSV 和 JSON 格式的文件,支持压缩文件HDFS 文件或目录,支持压缩文件主流关系型数据库,如 MySQL、PostgreSQL、Oracle、SQL Server本地磁盘文件和HDFS 文件,支持断点续传。
2023-01-19 10:54:31 1213
原创 SpringBoot集成security(4)|(security基于JWT实现前后端分离自定义登录)
上一章节我们介绍了springboot基于security的用户配置,权限配置,资源配置。并且我们重写了login表单登录,且认证授权异常的报错都做了统一处理,但是这样还是有一些问题例如有的希望自己定义一个接口,并且实现token认证管理,实现前后端分离,鉴于现在大多项目都是前后端分离,我们这个章节来实现基于前后端分离的JWT登录.
2022-12-09 11:32:24 485 1
原创 SpringBoot集成security(3)|(security的自定义登录以及异常处理)
上一章节我们介绍了springboot基于security的用户配置,权限配置,资源配置。但是实际中发现,认证用的是默认的login表单登录,且认证授权异常的报错都比较粗暴直接放回一串JSON,这样很不友好,基于这个我们本节来介绍实现前后端分离自定义登录以及相应处理
2022-12-05 17:36:56 814
原创 SpringBoot集成security(2)|(security自定义配置)
上一章节我们简单的介绍了,springSecurity的集成,并实现了简单的登录功能,以及security登录的一些原理,本章我们将介绍security的基于数据库用户的配置,权限控制以及资源访问控制的配置本片文章是在上一篇基础上进行的扩展,如果大家对项目基础不是很清楚请查看上一篇文章要实现自定义配置,首先创建一个继承于WebSecurityConfigurerAdapter的配置类,在代码实现之前我们来了解一下WebSecurityConfigurerAdapter配置类。
2022-12-02 11:01:39 629
原创 SpringBoot集成security(1)|(security入门)
本系列文章将会介绍springsecurit从入门到深入了解,并能够在项目中实际运用。本系列文章大致分为几个阶段,第一阶段了解security,第二阶段实现在springboot中集成登录,第三阶段接入Oauth2、JWT,第四阶段实现第三方授权登录等。到此springboot集成了security,并且security已经能够安全的保护我们的接口不被无认证请求访问,而且还能配置用户密码。
2022-11-18 11:04:59 756
原创 SpringBoot集成redis(3)|(Redisson方式实现分布式锁)
本章节主要介绍SpringBoot项目集成Redis的一些相关知识,主要介绍的是基于Springboot的Redisson方式,实现在分布式场景下锁机制。以上就是SpringBoot集成redisson实现分布式锁的代码,改方式实现可普通单机情况下的所有问题,广泛使用于分布式高并发场景下,存在的问题主要是特殊情况下,主机宕机造成锁异常问题,后面将介绍开源Redisson解决该问题的方式。
2022-10-09 11:43:10 2002
原创 SpringBoot集成redis(2)|(redisTemplate+lua方式实现分布式锁)
本章节主要介绍SpringBoot项目集成Redis的一些相关知识,主要介绍的是基于Springboot自带的redisTemplate+lua方式,实现在分布式场景下锁机制。
2022-09-30 10:14:05 869
milvus安装资源以及zilliz安装资源
2023-05-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人