- 博客(75)
- 资源 (7)
- 收藏
- 关注
原创 Meven
Maven是一个Java项目管理和构建工具,他可以定义项目结构项目依赖,并使用同意的方式进行自动化构建,是Java项目中不可缺少的工具。了解maven本质上就是了解pom.xml文件夹--版本相关--> < modelVersion > 4.0.0 </ modelVersion > <!--本项目坐标信息(每个maven项目都会有唯一的坐标)--> <!--通过这这三项组成的,通过坐标信息可以定位到具体的Jar包信息--> <!
2024-06-29 23:22:57
804
原创 JVM、JRE、JDK
Java EE(Java Platform, Enterprise Edition ):Java 平台企业版,建立在 Java SE 的基础上,包含了支持企业级应用程序开发和部署的标准和规范(比如 Servlet、JSP、EJB、JDBC、JPA、JTA、JavaMail、JMS)。Java SE(java Standard Edition)是Java SE的标准版Java 平台标准版,Java 编程语言的基础,它包含了支持 Java 应用程序开发和运行的核心类库以及虚拟机等核心组件。
2023-10-23 11:35:34
404
原创 Java面试——RPC协议
RPC协议是一种通过网络从远程计算机程序获取服务的协议。通俗理解:A计算机提供一个服务,B计算机可以像使用本地服务一样去调用(或使用)A计算机的服务。具体来说RPC协议可以分成4个角色Client、Client stub、Server、Server Stub。Client是调用方、Server是服务的提供方Client调用Server中的服务。Client Stub表示客户端存根,专门用来存储服务端服务的地方。
2023-10-22 17:28:37
480
2
原创 Java面试题-UDP\TCP\HTTP
(1)UDP是:发送数据之前不需要像TCP一样建立连接,也不需要释放连接,所以减少了发送和接收数据的开销(2)UDP 使用尽最大努力交付:即不保证可靠交付(3) UDP是面向报文的。UDP在发送数据时会将数据划分为一个个(既不合并,也不分拆),每个报文都有自己的边界。这意味着在接收端,可以轻松地将每个报文视为独立的消息。这有助于接收端明确地识别每个消息的开始和结束。(4)UDP支持一对一、一对多、多对一的交互通信。(5)UDP首部开销比较小,只有八字节。
2023-10-21 22:05:58
1689
原创 JAVA中关键字
java中,抽象类(Abstract class)是一种特殊的类,它不能被实例化,一般作为其他类的基类(父类),它定义了一些方法的声明,但不提供方法的实现,留给它的子类来完成实现。声明抽象类// 抽象方法,没有方法体// 普通方法,有方法体System.out.print("这是一个普通方法");继承抽象方法子类继承抽象类,并实现其中的抽象方法。// 实现抽象方法System.out.print("这是抽象方法的实现");实例化子类// 调用子类的实现注意!
2023-10-18 16:03:20
249
原创 利用MQ实现mysql与elasticsearch数据同步
1.声明exchange、queue、RoutingKey2. 在hotel-admin中进行增删改(SQL),完成消息发送3. 在hotel-demo中完成消息监听,并更新elasticsearch数据4. 测试同步。
2023-09-05 10:57:29
639
原创 分布式环境下的数据同步
一般而言elasticsearch负责搜索(查询),而sql数据负责记录(增删改),elasticsearch中的数据来自于sql数据库,因此sql数据发生改变时,elasticsearch也必须跟着改变,这个就是elasticsearch与mysql之间的。
2023-09-04 20:14:32
862
原创 Elasticsearch 分布式搜索——聚合
默认情况下,Bucket聚合是对索引库的所有文档做聚合,但真实场景下,用户会输入搜索条件,因此聚合必须是对搜索结果聚合。那么聚合必须添加限定条件。这就要用到Metric聚合了,例如stat聚合:就可以获取min、max、avg等结果。**度量(Metric)**聚合:用以计算一些值,比如:最大值、最小值、平均值等。**注意:**参加聚合的字段必须是keyword、日期、数值、布尔类型。**管道(pipeline)**聚合:其它聚合的结果为基础做聚合。**桶(Bucket)**聚合:用来对文档做分组。
2023-09-02 22:03:34
782
1
原创 RabbitMQ
最基础的消息队列模型,只包括三个角色:publisher:消息发布者,将消息发送到队列queuequeue:消息队列,负责接受并缓存消息consumer:订阅队列,处理队列中的消息我们创建一个mevan的问文件,其中在consumer上实现消费者,在publisher上实现发布者。pom.xml导入依赖。
2023-08-28 14:31:38
690
原创 微服务 Nacos配置热部署
在配置列表中添加配置,注意:项目的核心配置,需要热更新的配置才有放到nacos管理的必要。基本不会变更的一些配置还是保存在微服务本地比较好。
2023-08-24 14:49:23
1873
原创 微服务 Eureka
Eureka是Netflix开源的一个用于构建基于微服务架构的服务发现和注册中心技术。在微服务架构中,系统被拆分成多个小型、自治的服务,每个服务负责特定的业务功能。这些服务需要能够相互发现和通信,这就是Eureka所提供的功能。Eureka主要包括两个角色:Eureka Server和Eureka Client。
2023-08-23 21:11:46
1203
原创 SprintBoot Bean管理
下面这段代码在测试类中进行,下面通过三种方式获取bean对象。输出如下,这三个Bean对象结果都是一样的。我们调用了三次,但是发现获取的是一个实例对象:因为在springboot中Bean对象默认是单例的。
2023-08-21 23:25:45
171
原创 SpringBoot 配置优先级
一般而言,SpringBoot支持配置文件进行配置,即在resources下的application.properties或application.yml。优先级中命令行参数 --server.port的优先级最高,其次是java系统属性的优先级,最后的springboot配置。另外JAVA程序程序还支持java系统配置和命令行参数配置,这两个配置可以在idea中找到并配置。关于配置优先级而言,
2023-08-21 23:07:55
1156
原创 Spring AOP
面向切片编程、面向方面编程,其实就说面向特定方法编程。动态代理是面向切面编程最主流的实现。而SpringAOP是Spring框架的高级技术,目的是在管理bean对象的过程中,通过底层的动态代理机制,对特定方法进行编程。
2023-08-21 19:50:32
336
原创 Web 事务管理
Web在执行的过程中需要保证一致性,从而需要引入事务来对SQL事件进行事务的管理。具体而言可以参考这篇博客。具体而言,我们获得一个这样的需求,删除一个部门,在删除部门的过程中需要删除部门下的所有员工正常而言这段代码是可以正常执行的,但是我们在中间引入一个错误,即在两个请求过程中加入一个运行时错误,此时执行成功,执行失败,这时部门删除了,但是该部门下的所有员工并没有删除(这就导致了数据库的不一致性)。
2023-08-21 15:54:34
203
原创 Web 拦截器-interceptor
com.ztt.interceptor包下实现LoginCheckInterceptor类;LoginCheckInterceptor类中主要有三个方法preHandle()、postHandle()、afterCompletion();这三个方法spring已经实现好,可以不重写,但是为了实现拦截作用,一般需要对preHandle()方法进行重写。preHandle()的返回值是布尔类型,true表示放行、false表示拦截。
2023-08-21 13:05:58
351
原创 Web会话技术
用户打开浏览器,访问web服务器的资源,会话建立,直到有一方断开连接,会话结束。在一次会话中可以包含多次请求和响应:一种维护浏览器状态的方法,服务器需要识别多次请求是否来自于同一浏览器,以便在同一次会话的多次请求间共享数据。
2023-08-21 00:26:51
203
1
原创 SpringBoot-lombok
Lombok是一个通过注解以达到减少代码的Java库,如通过注解的方式减少getter,setter方法,构造方法等。通过注解的形式自动生成构造器、getter/setter、equals、hashcode、toString等方法,并可以自动化生成日志变量,简化java开发、提高效率。平时我们在编写JAVA实体类过程中,通常要生成大量Getter、Setter以及构造方法。而引入Lombok通过注解可以简化几乎所有工作。2.引入方法Lombok坐标。为什么要使用lombok?1.直接在依赖中配置。
2023-08-18 00:06:25
551
原创 SpringBoot-Mybatis 入门(数据库增删改查)
创建新项目,注意Type要选择MavenSpring Boot的版本没啥硬性要求,一般开开发环境依赖必选MySQL Driver、MyBatis Framework;选Spring Web是为了辅助未来的web开发;Lombok是个人开发习惯。
2023-08-17 18:48:44
312
原创 MySQL索引(Index)
数据库中的索引(Index)是一种数据结构,用于提高数据库查询性能和加速数据检索过程。索引可以看作是数据库表中某个或多个列的数据结构,类似于书中的目录,可以帮助数据库管理系统更快地定位和访问数据。它们是数据库优化的重要工具,特别是在处理大量数据时。传统的Select搜索策略为:线性搜索,从数据集的开头开始,按顺序逐个比较每个元素,直到找到目标元素或者遍历完整个数据集。而Index搜索策略为:B-Tree(平衡树)或者B+Tree。: B-Tree 是一种常见的索引数据结构,适用于范围查询和等值查询。
2023-08-17 12:03:46
454
原创 MySQL事务(transaction)
通过引入事务,以上问题可以得到解决。例如,用户执行存款和取款操作时,这两个操作会被包装在一个事务中。如果取款操作失败,整个事务会被回滚,包括之前的存款操作,确保账户余额的一致性。如果所有操作都成功,事务会被提交,账户余额更新。如果没有事务支持,存款操作会保留,账户余额将不正确,用户的资金可能会丢失。隔离性(Isolaction):各个事务的操作相互隔离,一个事务的操作在提交之前对其他事务是不可见的。默认MySQL的事务是自动提交的,也就是说,当执行一个DML语句,MySQL会立即隐式的提交实物。
2023-08-17 11:45:16
239
原创 SringBoot-响应
如何加载响应数据呢其实在SpringBoot,已经有名为@RessponseBody的方法注解为我们提供的响应的方法,他的作用是将方法返回值直接响应,如果返回值类型为实体对象/集合,则会转换为JSON格式响应。而@RestController已经在内部集成好了@RessponseBody。我们可以看到@RestController的定义,他已经在内部同时集成了Controller和ResponseBody。
2023-08-15 15:12:50
117
原创 SpringBoot请求响应
Controller方法形参中声明httpServletRequest对象调用对象的getParameter参数名。
2023-08-15 00:27:37
1179
1
原创 HTTP协议
Hyper Text Transfer protocol,超文本传输协议,规定了浏览器和服务器之间数据传输的规则,主要包含了两项请求和响应。HTTP的特点1.基于TCP协议:面向连接,安全2.基于请求-响应模型的:一次请求对应一次响应3.HTTP协议是的:对事物的处理没有记忆能力。每次请求-响应都是独立的。这使得多次请求之间不能共享数据,(这个问题可以通过web会话技术解决)但是也意味着凭借这种无状态协议,有更快的速度。HTTP协议又分为:请求协议和响应协议。
2023-08-14 16:13:54
223
原创 SpringBoot-Hello World
创建好之后可以点击pom.xml进行查看,可以看到整个项目的<parent>,他的意思是继承于springboot.</</</</另外springboot为我们自动创建了名字为SpringbootWebQuickstartApplication的启动类。在com.ztt下创建controller.Hello这个类,import org// 请求处理类 @RestController // 进行标注,通过此标注告诉JAVA程序这是一个请求处理类 public class Hello {
2023-08-14 12:57:09
739
原创 Maven依赖管理
依赖指的是项目在运行时所需要的jar包,一个项目中可以引入多个依赖配置方法1.在项目pom.xml中编写标签2.在标签中使用引入坐标3.定义坐标的groupId,artifactId,version4. 刷新按钮,引入最新加入的坐标ps:如果我们本地没有这个依赖需要从中央仓库或私服中下载,需要消耗一定时间可以试着把这个依赖加进去
2023-08-11 20:12:43
878
原创 Apache-Maven
Maven目录如下bin:目录中存放的是可执行文件,JAVA项目中的编译执行打包都要使用bin.conf:存放的是Maven的配置文件,本地配置、私服配置都需要在conf下的settings.xml进行配置。lib下存放的是Maven所依赖的jar包。
2023-08-11 12:00:38
1012
原创 Hololens2二维码识别
目前大部分Hololens进行二维码识别的开发都是基于ZXing的包完成,首先需要完成zxing.unity.dll,很多地方应该都能下载,也可以直接上github上下载(下载时注意一下版本就好,过老的zxing兼容性可能存疑,我这边使用的是 0.16.8.0的版本。直接在项目Assets下新建Plugins,将dll拖入文件。配置的话,用默认的就可以(这里面最重要的是UMP的平台配置,不过不用管,默认就支持了)。
2023-08-02 20:18:43
1168
原创 ORB+FLANN
对于基于 FLANN 的匹配器,我们需要传递两个字典,指定要使用的算法、相关参数等。第一个是IndexParams。对于各种算法,要传递的信息在 FLANN 文档中进行了解释。作为总结,对于SIFT,SURF等算法。FLANN 代表 近似最近邻的快速库。它包含针对大型数据集中的快速最近邻搜索和高维特征优化的算法集合。对于大型数据集,它比BFMatcher工作得更快。使用 ORB 时,可以传递以下内容。根据文档,建议使用注释值,但在某些情况下,它没有提供所需的结果。
2023-07-17 17:26:54
699
2
原创 图像特征检测(python代码实例)
SIFT描述子最大的问题在于计算量大、效率不高,不利于后面的特征点匹配.事实上,并不是所有维都在匹配中有着实质性的作用.因而可以用PCA、LDA等特征降维的方法来压缩特征描述子的维度.在此基础上,发展出一大批的改进算法,例如SURF算法、PCA-SIFT算法、 SSIFT算法。xfeatures2d高版本的opencv已经不兼容,同时由于版权问题,高版本的opencv同时已经不能使用BRIEF算法,所以下面这段代码只能在低版本的opencv环境下使用。
2023-07-14 14:30:00
701
原创 在新建环境下配置低版本opencv
我这边是要解决 python报错:AttributeError: ‘module’ object has no attribute 'xfeatures2d’的问题,xfeatures2d在新版本已经被取消,但是需要使用老版本的一个函数。
2023-07-14 11:45:38
2317
原创 JAVA基础
jre(java runtime environment)是java程序的运行时环境,包含jvm和运行时需要的核心类库(上面提到了jvm是面向不同平台的跨平台翻译)。其中包含javac.exe(编译工具)和java.exe(运行工具)。想要开发全新的java程序就必须安装jdk。jdk(java development kit)是java开发程序工具包,包含jre和开发人员使用的工具。我们想要运行一共已有的java程序,那么只需要安装jre即可。
2023-07-13 10:56:29
210
原创 Git学习与使用
所有版本信息仓库全部同步到本地的每个用户,这样就可以在本地查看所有版本历史,可以离线在本地提交,只需在连网时push到相应的服务器或其他用户那里。由于每个用户那里保存的都是所有的版本数据,只要有一个用户的设备没有问题就可以恢复所有的数据,但这增加了本地存储空间的占用。版本控制就是对文件的版本控制,要对文件进行修改、提交等操作,首先要知道文件当前在什么状态,不然可能会提交了现在不想要提交的文件,或者要提交的文件没提交上。记录文件每次的更新,可以对每个版本做一个快照,或是记录补丁文件,适合个人用,如RCS。
2023-07-13 00:03:32
588
原创 Unity Canvas与MRTK Canvas
特别注意同时要注意的是一般来说MRTK canvas的事件相机(Event Camera)应该设置为None。
2023-06-05 17:32:31
786
1
Relation-Aware-Global-Attention-Networks-master源码
2023-06-01
Kaggle著名数据集elo-merchant-category-recommendation
2023-03-08
AIGC与扩散模型(Denoising Diffusion Probabiblistic Model)
2023-03-07
All One Needs to Know about Metaverse
2022-11-15
Awesome Charts and Graphs 1.1.6.unitypackage
2022-10-09
互联网电影数据库IMDB数据集
2022-07-03
自然语言处理SMSSpamCollection数据集(免费分享)
2022-06-08
Fashion-MNIST数据集.zip
2021-10-17
Rossler求数谱图.zip
2021-06-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人