经验教程 Springboot 使用 nacos 时固定注册 ip 最近使用 idea 开发 springboot 项目时,经常遇到注册 nacos 的 ip 为 169.xx.xx.xx 的问题。之前有过多网卡上送时 ip 不对的问题,但是把对应网卡禁用就好了。 这次无论是重启项目或者是电脑,还是禁用网卡都不好用,想想只是为了本地开发使用,于是直接修改本地配置文件好了: spring: cloud: nacos: discovery: ip: 172.21.9….
瞎折腾 给 Springboot 容器添加健康检查 微服务架构下,如果注册中心使用 nacos,此时微服务都需要注册到 nacos 上。但是如果单机部署所有微服务和中间件的情况下,机器性能不够,开机时 CPU 会占满,nacos 启动要很久,同时业务服务也在启动,会发现连不上 nacos,这种情况是注册不上但也不是完全无法连接,因为无法连接启动会报错。这个时候,服务会报错 java.net.ConnectException: [NACOS HTTP…
程序开发 Springboot 配置 https 前言 Spring Boot 本身是一个 Java 应用程序框架,它可以内嵌一个嵌入式的 Web 服务器(如 Tomcat、Jetty 等),用于处理客户端请求。它默认使用的是 Java Keystore(JKS)格式的证书文件,用于配置内嵌的 Web 服务器的 SSL/TLS 加密。 JKS 是一种密钥库格式,用于在 Java 平台上存储密钥和证书,它可以包含一个或多个密钥对以及与这些密钥对关联…
程序开发 Springboot 打包出来的 jar 很小不能启动 这种情况大概率是因为资源没有打包进去,在 pom 文件引入 maven 插件: <build> <finalName>${project.artifactId}</finalName> <plugins> <plugin> <groupId>org.springframework.boot</groupId> &l…
程序开发 Springboot 定义在字段上数据校验注解详解 在进行数据处理时,对于数据的正确性校验是必不可少的。在Java中,可以使用注解来实现对数据的校验。这些注解可以在实体类中的字段上进行标注,用来验证字段的数据是否符合规定。 @Null: 限制只能为null。 @NotNull: 限制必须不为null。 @AssertFalse: 限制必须为false。 @AssertTrue: 限制必须为true。 @DecimalMax(value): 限制必须…
程序开发 Springboot 常见注解以及说明 @SpringBootApplication: 启动 Spring Boot 应用的注解,等价于 @Configuration、@EnableAutoConfiguration、@ComponentScan 三个注解的组合。 @RestController: 用于标识 RESTful Web 服务的控制器,返回结果是 JSON 数据。 @Controller: Spring MVC 控制器注解,用…
瞎折腾 Docker 多阶段构建 SpringBoot 项目 一、什么是多阶段构建? 我们知道 docker 镜像是分层的,每多一层都会让构建出来的镜像变大。而且构建环境有很多运行时不必要的东西,也就意味着很有可能构建出来 1-2g 的镜像运行其实只需要 100m,那有没有办法能够解决这种尴尬的情况呢? Docker 17.05 版本以后允许 Dockerfile 支持多个 FROM 指令了,这也就意味着我们可以将构建环境与运行环境分开。多个 FROM 命令…