随笔分类 - spring & springboot / cloud
摘要:背景: 使用 springboot,要从spring容器里面取到一个bean,那是很容易的。 但从静态方法里面取出一个bean,有什么方法呢? 比如: 场景1:要写一个工具类,可以提供静态方法去获取一个bean。 场景2:要写一个工具类,可以提供静态方法去获取一个bean,并且这个工具类不能给spr
阅读全文
摘要:参考于: https://blog.csdn.net/weixin_40783112/article/details/80396830 背景 springcloud 服务注册到 eureka, 但部署的节点存在多网卡,导致服务注册到eureka的服务信息,被另外的服务无法调用到。 解决方案: 通过启
阅读全文
摘要:背景 在一些业务开发,经常会写一些工具类,但这些工具类时常需要调用到 Spring管理的bean,这些Spring管理的bean 注入, 平常用的都是 @Autowired 注解一个成员变量, 问题就来了: (1)成员变量(即Spring管理的bean)是非静态的,但工具类都是想写静态方法,静态方法
阅读全文
摘要:背景 业务开发,经常要处理各种各样的异常,然后一层处理,确实也不太舒服,也不够规整。 只管抛异常,不用每个地方都去判断catch 一下,会舒服得多。 但项目上还没有统一去做这个事情,虽然知道是好事,但没做就是没做, 业务来了 最近添加了一个全局异常处理类,是因为近来有一个业务,大概是根据当前登录人,
阅读全文
摘要:springboot 日志, 配置文件中, logging: level: org.springframework.web.servlet.DispatcherServlet: INFO com.dy.springboot.server.mapper: INFO com.carrot.logging
阅读全文
摘要:原文参考:https://www.cnblogs.com/kinome/p/12468421.html HttpGetBody import javax.servlet.ServletRequest; import java.io.BufferedReader; import java.io.IOE
阅读全文
摘要:1、指定读取的配置路径 配置在 application.yml 文件里面 server: port: ${SERVER_PORT:10102} spring: application: name: config profiles: active: ${PROFILE:native} manageme
阅读全文
摘要:先来说一个总结: 1、通过构造函数的方式进行的BEAN创建,出现了循环依赖,没有办解决 2、单例BEAN通过SET方法进行属性注入,可以通过提前暴露的方式(即三层缓存)进行解决 3、如果是原型模式的BEAN(作用域是 prototype)无办法解决,因为它不在SPRING容器中进行缓存。无法进行提前
阅读全文
摘要:spring 注入的3种方式 属性注入 就是平时使用最多的 在属性上加一个 @Autowired set 方法 在spring3.x及之前推荐使用,通过提交暴露可以解决循环依赖的问题 构造器(构造方法) 在 spring4.x及之后推荐使用 // 属性注入 @Service public class
阅读全文
摘要:背景 使用Caffeine本地缓存,外加@Cacheable注解,想把这个注解加到mapper上,并且把参数id做key的时候,发现参数拿不到。 这样是拿不到的 @Cacheable(value = "xxCache", key="'#id") UserVO queryUserByLdapId(@P
阅读全文
摘要:背景 Springboot + CaffeineCache + 使用@Cacheable注解 请求查询一个方法,因为数据变化频率低,查询频率高,于是使用缓存,并使用注解。 但发现用了 @Cacheable 这个注解,发现并没有生效。 代码是这样子的 ***ServiceImpl.java publi
阅读全文
摘要:背景 业务开发,需要做一个操作日志,操作日志需要记录某一条数据在操作前后的值的变化记录,并写到操作记录表。 这种情况,使用自定义注解,加个切面,再合适不过了。 于是就开干。 代码部分 先写一个切面 @Target({ElementType.METHOD}) @Retention(RetentionP
阅读全文
摘要:参考信息 本人参考的是这一篇,描述方面比本人好得多: springboot线程池的使用和扩展 VisiableThreadPoolTaskExecutor 背景: 简略记一下,笔记: 目标是想在 springboot服务下,自定义一个线程池,然后使用异步,原目的是为了批量导入用。 项目架构 普通的s
阅读全文
摘要:背景 1、使用 Squaretest 生成controller的测试类(略) 生成的代码大概如下: 该文章只简单记录使用的一个过程,和遇到过的一个小问题, 就是,requestbody 传参无效 import com.alibaba.fastjson.JSON; import org.junit.T
阅读全文
摘要:简单记录一下关于对于数据校验的方式,和对应包的引入 1、controller层的参数要加上 @Validated 2、对应参数对象的属性,就用 @NotNull 等注解。 controller 层 定义方法: import org.springframework.validation.annotat
阅读全文
摘要:该文档主要描述,在 springboot项目下相关的一些配置项的使用记录及说明 1、日志文件配置项 对应的配置项就是: logging.file = ./logs/xxx.log 表示这个服务的日志要输出到当前目录的 logs下的 xxx.log 文件。 项目进程之前启动,直接使用 nohup 输出
阅读全文
摘要:1、@ConfigurationProperties 与 @Value 区别 (1)@Value 要写全路径 (2)@ConfigurationProperties 用了这个,并且指定 prefix, 那它的属性就能自动匹配了,不用再写 @Value 了 (3)@ConfigurationPrope
阅读全文
摘要:今天在页面上做一个文件上传,之前上传的文件相对较小,基本不会超过10M,一直也运行得挺好。今天要上传一个功能,大小大概是80M左右,然后在页面的文件上传请求,一直在pending,然后过了大概一两分钟,页面还在转,看接口,是显示:"this request has no response data
阅读全文
摘要:yml 配置数组 project.tools:[ ' aa ',' bb ',' cc ' ] 或 project.tools: - aa - bb - cc @Value 对复杂对象解析不好,复杂对象要用类去配置接收。(好像也和 springboot 版本有关系。 比如某个属性 以下方法貌似是不行
阅读全文
摘要:1、@Autowired 默认是使用类型去识别 @Resource 默认使用beanName 去匹配, 也可以使用bean类型去。。。
阅读全文