2023-06-08
Spring Boot
0

Spring Bean生命周期

流程图

graph TD
Bean在SpringBean应用上下文中的生命周期 --> 实例化
1.ApplicationContext\n2.scope=singleton --> 实例化
实例化 --> 设置属性
setXXX --> 设置属性
设置属性 --> 执行setBeanName方法
可选,bean类继承BeabNameAware接口\n可选,bean类继承BeanFactoryAware接口 --> 执行setBeanName方法
2023-06-07
JAVA
0

彻底理解Java中的各种锁

1. Java中的锁是什么

在Java中,锁(Lock)是一种同步机制,用于保护共享资源,确保多个线程在访问共享资源时按照一定的顺序进行访问,从而避免数据竞争和并发访问引起的问题。

2023-05-30
JAVA
0

Springboot整合Graalvm项目编译启动飞快

1. graalvm官网

2. 介绍

image.png

3. 和jvm的异同点

  • 相同点

    1. GraalVM和JVM都是Java平台的运行时环境,但它们在一些方面有所不同。
  • 差异

    1. JVM(Java虚拟机)是Java平台的标准运行时环境。它负责将Java字节码解释或编译成本地机器码,并在目标平台上执行。JVM提供了垃圾回收、即时编译器、类加载、线程管理等核心功能,使得Java程序能够在不同的操作系统和硬件平台上运行。

    2. GraalVM是一个开源的高性能运行时环境,它支持多种编程语言(包括Java、JavaScript、Python等)在一个共享的虚拟机中运行。GraalVM的一个主要特性是其即时编译器,它基于Graal编译器将Java字节码直接编译成本地机器码,而不是通过解释执行。这种编译方式可以提供更高的执行性能和更低的启动时间。

    3. 此外,GraalVM还提供了一些其他功能,例如支持原生映像(Native Image),可以将Java应用程序编译成独立的本机可执行文件,从而进一步提高性能和减少内存消耗。GraalVM还提供了与其他语言的互操作性,并支持在同一虚拟机中混合使用不同的语言。

总的来说:JVM是Java平台的标准运行时环境,而GraalVM是一个创新性的、支持多语言的高性能运行时环境,具有更好的即时编译性能和其他扩展功能。根据具体的需求和场景,可以选择使用JVM或GraalVM作为Java应用程序的运行时环境。

2023-05-11
VUE
0

Vue实现重定向功能的

场景说明

在Vue.js开发中,有时我们需要在用户完成登录后将其重定向到特定页面。下面的代码示例演示了如何使用JavaScript和Vue.js框架来实现这个功能。

2023-05-05
JAVA
0

基于hutool造一个加解密轮子

前提

  • 搭建springboot项目
  • 引入hutool依赖
  • 建议引入lombok依赖

相关代码

  1. 依赖
xml
<!-- 注意修改版本信息 --> <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>${最新版本}</version> </dependency>
  1. 生成密钥代码