程序开发 SpringBean 的生命周期以及如何解决循环引用 1. SpringBean的生命周期 Spring Bean 的生命周期从 Bean 实例化开始,即通过反射创建对象,到 Bean 成为一个完整的对象,最终存储到单例池中。整个过程被称为 Spring Bean 的生命周期,大致分为三个阶段。 第一阶段是 Bean 的实例化。Spring 框架根据 BeanDefinition 的信息判断 Bean 的范围是否是 singleton,是否延迟加载,…
程序开发 Spring 实例化 Bean 对象的基本流程 一、 实例化基本流程 基本流程图如下: Spring 容器在进行初始化时,会将 xml 配置的 <bean> 的信息封装成一个 BeanDefinition 对象,所有的 BeanDefinition 存储到一个名为 beanDefinitionMap 的 Map 集合中。 Spring 框架再对该 beanDefinitionMap 进行遍历,使用反射创建 Bean 实例对象,创建好…
经验教程 maven 常用配置以及如何配置代理 1. 常用配置 配置本地仓库地址。 <localRepository>D:\Maven</localRepository> 配置阿里云镜像 <mirrors> <!– 阿里云仓库 –> <mirror> <id>aliyunmaven</id> <mirrorOf>*</mirrorOf>…
程序开发 Spring 基于 xml 方式的 bean 的配置 一、简介 spring 可以通过读取 xml 配置文件的方式,生成 bean 实例对象。 现有如下 beans.xml 配置文件和实体类与接口。 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/be…
经验教程 Apifox 接口调试前置操作脚本 项目加了鉴权以后,调试会变得比较麻烦,因为 token 随时可能失效,每次都要手动调用登录接口重新设置 token 比较麻烦。 好在大部分接口调试工具都可以配置前置脚本,比如在 postman 和 apifox 中可以设置如下前置脚本进行 token 的获取,设置为环境变量 ACCESS_TOKEN,然后在 Auth 引用变量即可。 相关环境变量,这里设置的是每个环境自己的环境变量,而不是全局变量…
程序开发 Jackson 常用注解 一、 Read+Write注解 Jackson包含一组注解,这些注解会影响从 JSON 读取 Java 对象以及将 Java 对象写入 JSON,这些称为 Read + Write 注解。 1. @JsonIgnore @JsonIgnore 用于告诉 Jackson 忽略 Java 对象的某个属性(字段)。 在将 JSON 读取到 Java 对象中以及将 Java 对象写入 JSON 时,都将忽…
程序开发 为什么 java 里面的布尔类型的字段不建议 is 开头 阿里开发手册里面强制规定,布尔类型的数据,无论是 boolean 还是 Boolean 都不准使用 isXXX 来命名,要理解为什么,首先要明确以下几点: 对于非 boolean 类型的参数,getter 和 setter 方法命名的规范是以 get 和 set 开头 对于 boolean 类型的参数,setter 方法是以 set 开头,但是 getter 方法命名的规范是以 is 开头 包装类…
运维开发 Centos 安装 nodejs 最好根据该文档进行操作:https://github.com/nodesource/distributions yum安装设置Node.js v16版本 curl –silent –location https://rpm.nodesource.com/setup_16.x | sudo bash setup_16里16是版本号,可根据自己需要修改。 yum方式安装 sudo yum -y i…
程序开发 Springboot 配置 https 前言 Spring Boot 本身是一个 Java 应用程序框架,它可以内嵌一个嵌入式的 Web 服务器(如 Tomcat、Jetty 等),用于处理客户端请求。它默认使用的是 Java Keystore(JKS)格式的证书文件,用于配置内嵌的 Web 服务器的 SSL/TLS 加密。 JKS 是一种密钥库格式,用于在 Java 平台上存储密钥和证书,它可以包含一个或多个密钥对以及与这些密钥对关联…
运维开发 Linux 关于环境变量和自启脚本笔记 linux 里面有很多文件实现的功能类似,但是深究其实还是有点区别,一般来说可能不重要,但是涉及到的时候一定要注意区别。 1. /etc/profile 和 .bashrc 什么是 /etc/profile 文件 /etc/profile 文件为系统的每个用户设置环境变量信息,此文件的修改会影响到所有用户。想了解更多细节内容可以用:vim /etc/profile 命令进行查看。 /etc/pro…
程序开发 Springboot 打包出来的 jar 很小不能启动 这种情况大概率是因为资源没有打包进去,在 pom 文件引入 maven 插件: <build> <finalName>${project.artifactId}</finalName> <plugins> <plugin> <groupId>org.springframework.boot</groupId> &l…
运维开发 PVE 配置硬盘直通 前言 为什么需要直通,因为如果先挂载到 pve 宿主机上,然后创建对应的存储不太方便使用。 需要注意:直通后不能创建快照 1、格式化 如果硬盘没有进行格式化和分区,需要先进行格式化和分区,参考 Linux下磁盘分区、格式化、挂载以及开机自动挂载。 2、查看硬盘的序列号 root@pve:~# ls /dev/disk/by-id ata-Colorful_SL500_256GB_202105250…
瞎折腾 Docker 两种方式搭建 nacos 现在很多 java 后端都是用的 springboot,随着业务的升级,很多架构也逐渐升级为微服务,而微服务架构总是少不了服务注册中心和服务配置中心等等。 接下来介绍的 nacos 是阿里巴巴开源的一款服务发现和配置管理平台,取代了 Eureka 和 Spring cloud config,包括服务发现、配置管理、动态 DNS 服务以及流量管理等功能。 并且 Nacos 支持多种部署方式,如单机模…