自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 资源 (2)
  • 收藏
  • 关注

原创 Mysql的四种索引实现方式

总结起来,MySQL的索引实现方式包括Btree索引(默认索引类型,适用于大部分查询场景)、Hash索引(适用于等值查询且效率要求高的场景)、R-Tree索引(适用于空间数据检索)和全文索引(适用于文本全文搜索)。选择合适的索引类型需根据实际的查询需求、数据特性和性能要求来决定。

2024-04-08 12:30:42 552

原创 JVM常量池

请注意,上述信息基于已知的JDK版本发展情况,具体实现可能会因JVM的具体实现(如HotSpot、OpenJ9等)和版本细节有所不同。随着JVM技术的持续演进,未来可能存在进一步的变化。如果您在处理特定版本的JVM时,建议查阅对应版本的官方文档或最新研究资料以获取最准确的信息。

2024-04-07 10:56:04 394

原创 jstack命令

通过分析这些信息,您可以了解每个线程当前所处的状态、它们在做什么以及是否有线程因等待资源而阻塞或陷入死锁等情况。这对于排查多线程应用中的并发问题、性能瓶颈或死锁等现象非常有用。我们想获取该进程在某一时刻的线程堆栈信息,以便诊断可能存在的死锁、线程阻塞或其他并发问题。假设有一个正在运行的 Java 应用程序,其进程标识符(PID)为。

2024-04-02 17:13:45 433

原创 jhat命令

(Java Heap Analysis Tool)是一个用于分析Java堆转储(heap dump)文件的命令行工具,它允许您通过浏览器查看堆转储中的对象、类、引用关系等信息,帮助诊断内存泄漏、对象占用、类分布等问题。会启动一个内置的HTTP服务器,分析堆转储文件并将结果以HTML形式展示。提供的堆分析界面,可以浏览类摘要、对象查询、引用查询、类直方图等信息,帮助您深入分析内存使用情况。首先,您需要获得一个Java堆转储文件。命令分析生成的堆转储文件。的堆转储文件,可以按照以下方式运行。

2024-04-02 17:12:59 429

原创 jstat命令

是一个强大的命令行工具,用于监控 Java 应用程序的运行时状态,特别是与垃圾收集(GC)相关的统计信息和内存使用情况。监控 Java 应用程序的 GC 统计信息。根据实际需要,您可以调整选项、间隔时间和查询次数以适应不同的监控场景。假设有一个正在运行的 Java 应用程序,其进程标识符(PID)为。我们想要每两秒刷新一次数据,连续监控10次其 GC 的统计信息。这个例子展示了如何使用。

2024-04-02 17:12:27 254

原创 windows版本-idea中下载的java版本在哪

1、点击idea的file-projectStructure。copy下来之后设置到系统环境变量中。找到bin目录,copy该目录地址。通过电脑目录进入该目录。

2024-04-02 16:30:59 462

原创 简述双亲委派机制

它定义了当一个类加载器接收到类加载请求时,首先将加载任务委托给其父类加载器,直至请求到达最顶级的类加载器。双亲委派机制是Java类加载系统的核心设计,通过规定类加载请求必须从顶层类加载器逐级向下委派,确保了类的唯一性、加载顺序的有序性以及系统的安全性。双亲委派机制确保了类加载的有序性,即越基础的类越优先加载,且由更上层的类加载器负责。父类加载器可以优先加载已加载过的类,避免子类加载器重复加载相同的类,有利于资源共享和类加载性能的优化。例如,标准库中的类只需加载一次,所有类加载器都可以共享这些类的定义。

2024-04-02 16:02:47 523

原创 JVM将虚拟机分成了哪几块区域?

综上所述,Java 8之后的JVM内存区域主要分为堆、方法区(与元空间的关系需根据上下文理解)、栈(包括Java虚拟机栈和本地方法栈)以及程序计数器。其中,堆被细分为新生代和老年代,而类的元数据信息存储在元空间中。这些区域各自承担着不同的职责,共同协作以支持Java程序的运行。

2024-04-02 11:43:27 545

原创 HashMap为什么用String作为key更快

Java的String类使用了一种称为“DJB2”的算法(由Daniel J. Bernstein提出),该算法通过字符的ASCII值与一个固定素数(通常是31)进行乘法和位移操作,快速计算出哈希码。这种算法计算速度快,且对于不同的字符串,其哈希码分布较为均匀,减少了哈希冲突的可能性。2、String 类内部有一个名为 hash 的 int 类型字段,用于存储已经计算好的哈希码进行缓存,因为String是不可变得,因此每次计算hashCode用的都是缓存的值,速度很快。Sring的hashCode计算。

2024-04-01 19:48:40 618

原创 简述java反射

Java反射机制是一种在运行时分析类和对象的能力,它允许我们在运行时获得类的信息(如类名、方法、字段等),并且动态地操作这些类和对象。通过反射API,我们可以在运行时创建类的实例、访问和修改对象的字段值、调用对象的方法,甚至构造新的类或接口实例。此外,我们还通过反射调用了构造器创建了另一个实例,并展示了如何获取类上的注解信息。类的Class对象,然后创建了一个实例,并通过反射操作了其私有字段。在上述示例中,我们首先通过。

2024-04-01 16:15:54 298

原创 Git使用

git checkout -b f1 origin.f2 给远程的f2分支建立一个本地分支。git merge feature1 把feature1分支合并到当前分支上。git是一个分布式的版本管理系统、每个人有一个自己档案馆,可以合并开发。git stash和git stash apply用于储藏和恢复。github、gitgee是git的一个托管平台。不明白的可以通过这种git -h 查看所有命令。git branch --list 显示分支。git fetch 拉取远程仓库的分支。

2024-04-01 15:57:09 392

原创 java静态变量,代码块,和静态方法的执行顺序

类中声明的顺序进行初始化。

2024-03-31 19:06:32 309

原创 static修饰的方法为什么不能被覆盖?

方法与类的实例无关、遵循静态绑定原则以及面向对象设计的特点,Java设计时并未赋予。这也保证了程序行为的明确性和一致性。

2024-03-31 18:58:28 358

原创 @RequestParam、@PathVariable、@RequestBody

则是用于处理整个请求体的内容并将其映射到Java对象中。这三个注解分别解决了不同类型的HTTP请求参数的处理问题。是Spring MVC中用于处理不同来源HTTP请求参数的注解,它们各有特点,适用于不同的场景。用于获取GET查询参数或POST表单数据,用于从URL路径中提取动态值,而。

2024-03-30 22:26:41 371

原创 @Controller与@RestController的区别

当在一个带有@Controller注解的类或方法上同时使用@RequestMapping和@ResponseBody注解时,该方法的返回值会被转化为HTTP响应体的内容,就和@RestController的效果一样了。因此,虽然单独使用@Controller配合每个方法上的@RequestMapping和@ResponseBody能达到同样的效果,但@RestController提供了更加简洁和明确的声明方式。在这个例子中,当访问。

2024-03-30 22:16:45 333

原创 什么是适配器模式

适配器模式(Adapter Pattern)是一种结构型设计模式,它允许将一个接口转换为客户希望的另一个接口,目的是使原本由于接口不兼容而无法一起工作的类能够协同工作。适配器类(Adapter Class)通过继承或组合的方式实现了目标接口,并负责将被适配者的接口转换为目标接口期望的行为。的实例,将老式播放器的接口转换为音响系统期望的接口。这样,即使老式播放器接口与音响系统所需接口不一致,也能通过适配器顺利协同工作。以下是一个简单的Java示例,假设我们有一个老式的音频播放器接口(

2024-03-30 21:56:02 397

原创 @RequestMapping和@GetMapping的区别

在SpringMVC的较新版本中,为了提高代码的可读性和意图的清晰度,通常鼓励使用。在功能上是等效的,但在语义上。等专门针对HTTP方法的注解。

2024-03-30 21:52:17 898

原创 springMVC中的适配器模式是怎么使用的

Spring MVC中的适配器模式体现在对Controller接口的不同实现进行统一处理的过程。在Spring MVC中,是适配器模式的具体体现,它允许DispatcherServlet与各种类型的Controller进行交互,而不必关心Controller的具体实现细节。

2024-03-30 21:47:43 623

原创 @SpringBootApplication注解

注解在 Spring Boot 应用中起到了核心作用,它通过集成自动配置、组件扫描和主配置类的功能,简化了 Spring 应用的配置和启动流程,使开发者能够快速构建出独立、生产级别的应用程序。只需在主类上添加该注解,就能享受到 Spring Boot 带来的诸多便利,如依赖自动管理、自动配置、快速启动、健康检查、外部化配置等特性。注解是 Spring Boot 框架中最重要的注解之一,它集成了多个功能于一身,用于简化 Spring 应用的配置和启动过程。

2024-03-29 15:39:48 145

原创 spring的循环依赖问题

Spring循环依赖问题是指在Spring IoC容器管理的Bean(即组件)之间存在的一种相互依赖关系,具体表现为两个或多个Bean在初始化时形成一个闭环,每个Bean在完成自身实例化或依赖注入的过程中都需要依赖另一个Bean,而这个被依赖的Bean又反过来依赖于原始Bean。这种循环依赖结构可能导致容器无法正常完成Bean的创建和初始化,进而影响应用程序的运行。

2024-03-29 15:38:25 808

原创 spring AOP和AspectJ AOP的区别

Spring AOP(Aspect-Oriented Programming)和AspectJ AOP都是实现面向切面编程(AOP)的技术,但它们在实现机制、语法、适用场景等方面存在一些区别。下面分别介绍两者的区别,并给出相应的示例。

2024-03-29 15:37:53 1198

原创 什么是代理模式

代理模式(Proxy Pattern)是一种设计模式,它为对象提供一种代理或占位符,通过引入一个代理对象来控制对目标对象的访问。代理对象与目标对象具有相同的接口,客户端可以通过代理对象间接地与目标对象交互。代理模式的主要目的是为了在目标对象的操作前后添加额外的行为,或者为原本难以访问的对象提供访问途径,而不改变客户端代码的调用方式。

2024-03-29 15:37:21 526

原创 springMVC是什么?

Spring MVC,全称 Spring Web Model-View-Controller,是Spring框架中用于构建Web应用程序的一个模块,是一种基于Java的、实现了MVC(Model-View-Controller)设计模式的轻量级Web框架。Spring MVC作为Spring生态系统的一部分,提供了构建Web应用程序的全功能MVC框架,旨在简化Web应用程序的开发,使其更加模块化、可测试和易于维护。

2024-03-29 15:36:49 660

原创 source命令行错误

在source数据库脚本文件时You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'c.sql' at line 1出现这样的错误,是因为在source sql语句时在输入路径时采用了一个”\“,目前的sql语言一个“\”会作为反义字符。故把“\”改为“\\”就可以了!...

2020-06-07 09:16:38 1659

原创 E480安装ubuntu18.04出现进入wifi没有无线适配器的处理方案

今天突发奇想,想在自己的电脑上装上ubuntu,实现win10+ubuntu双系统在顺利的装好系统之后,发现wifi界面找不到适配器,也即是无线网卡没有装好E480是rtl8821ce无线网卡,官方不提供linux驱动,github上大佬写的下载需要登陆谷歌邮箱,论坛里以前的不支持最新的ubuntu???无奈之下,只能大海捞针,来找一个能用的 emmmm哭。大家可以在我的百度网盘...

2019-09-14 14:38:31 1111 3

原创 M 个同样的苹果放在N 个同样的盘子里,允许有的盘子空着不放的算法

把 M 个同样的苹果放在N 个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K 表示)注意:5,1,1 和1,5,1 是同一种分法eg:输入7,3 输出 8思路:本题我们采用递归分治的方法,时间复杂度较高,但是思路简单。我们设递归函数为A(int M,int N);我们首先考虑把问题分类,为了保证不重复即 出现5,1,1和1,5,1这种情况,我们分的类应该是互斥的...

2019-09-11 09:34:44 6303

原创 波兰表达式问题

波兰表达式是一种把运算符前置的算术表达式,例如普通的表达式2 + 3 的波兰表示法为+ 2 3。波兰表达式的优点是运算符之间不必有优先级关系,也不必用括号改变运算次序,例如(2 + 3) * 4 的波兰表示法为* + 2 3 4。本题求解波兰表达式的值,其中运算符包括 + - * / 四个。思路:这个问题是一个比较常见的问题,有很多变形。如果不细细分析的话,会觉得这个问题非常的复杂。但是如...

2019-09-10 12:01:27 1789

原创 二叉树问题-递归

如上图所示,由正整数1, 2, 3, ...组成了一棵无限大的二叉树。从某一个结点到根结点(编号是1的结点)都有一条唯一的路径,比如从10到根结点的路径是(10, 5, 2, 1),从4到根结点的路径是(4, 2, 1),从根结点1到根结点的路径上只包含一个结点1,因此路径就是(1)。 对于两个结点x和y,假设他们到根结点的路径分别是(x1, x2, ... ,1)和(y1, ...

2019-09-10 11:32:25 430

原创 tensorflow中在进行手写文字识别实验出现 Cannot feed value of shape类错误的一种情况

请检查在准备数据阶段是否把one_hot=True 写错了,这行代码代表的是将样本标签转化为 one_hot编码当我们不需要用one_hot编码大的时候,是不能把这句加上去的。比如我们想用 sparse交叉熵的时候完 ...

2019-01-14 22:38:40 936

原创 值传递,引用传递和lambda概念简要说明

值传递:传入的是值,如果传入的是一个变量,相当于传递了一个副本,不会改变原有变量引用传递:传递的是一个指针(c++里也有引用),会改变原变量的值。lambda函数:一个形象的图,图来自知乎的Sevenvidia,如侵权立删下面这个图的作用是将一个函数赋值给一个变量,但是在编程中,我们不会讲函数赋给一个表达式,因为看着太繁琐了。我们采用将函数变换为lambda表达式然后再赋给变量。具...

2018-11-27 19:48:37 2029

原创 c++中 基类,派生类,多态,虚函数,纯虚函数概念的简要讲解

基类:父类派生类:子类多态:就是能够允许将子类对象的指针赋值给父类对象的特性。c++中支持,并且是通过虚函数来实现的虚函数:通过virtual([ˈvɜ:tʃuəl],虚拟的)定义虚函数,然后可以用父类的指针来调用子类的这个函数。当然,我们要先将子类对象的指针赋值给父类对象。为什么叫做虚函数呢当我们在子类里面有了一个和父类的函数相同的函数时,我们的虚函数就会转化会子类中的函数。...

2018-11-27 09:24:27 886

原创 QT Cannot find file: 问题解决

初学QT,写这个系列博客记录下学习中遇到的问题在跑一段源代码时出现了以下报错报错原因翻译过来就是:未找到01_QtTest.pro.这个项目。很奇怪,因为我就是打开的这个项目怎么会未找到,网上查找之后发现QT的源代码路径内不能有中文,将路径中的“代码”两个字修改成sourcecode后问题解决Tip:在看代码报错的时候顺序一定要从前往后看,一个一个解决。因为大部分后面代码的...

2018-11-27 08:33:28 5991

目标检测课件14讲.rar

目标检测非常少见的全系列课件。one-stage,two-stage算法都有。从图像预处理开始讲起,从入门到精通

2020-06-14

斯坦福大学redbase源码+实验报告+运行说明

这是自己写的数据库的大作业,是在redbase的源码上进行了小幅度的修改。并且有详细的运行说明文档以及自己写的实验报告。欢迎大家下载

2020-06-14

空空如也

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

TA关注的人

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