2021年12月4日
摘要: 依赖注入 我们在 Spring — 循环依赖 中谈到 Spring 的两种依赖注入方式 构造器注入 属性注入(setter注入也归属于此) @Service public class HelloService { /** * 属性注入 */ @Autowired private BeanFactor 阅读全文
posted @ 2021-12-04 21:56 -CoderLi 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 上一篇的 BeanWrapper 我们介绍了 BeanWrapper 的来由。现在我们继续看看 Spring 是如何构造一个 Bean 的。 代码不长、也不是特别的复杂 /** * 使用合适的实例化策略去创建bean: FactoryMethod,构造器自动注入、或者简单的无参构造器 */ prot 阅读全文
posted @ 2021-12-04 17:44 -CoderLi 阅读(105) 评论(0) 推荐(0) 编辑
摘要: @Service public class HelloService { @Autowired(required = false) public HelloService(ApplicationContext applicationContext) { // 1⃣️ } @Autowired(req 阅读全文
posted @ 2021-12-04 17:44 -CoderLi 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 文章稍微有点儿长........ BeanWrapper 是 Spring 中比较重要的一个接口、我们在 Spring 获取单例流程(三) 中曾见过 PropertyDescriptor 我们在 Java 内省 有介绍过 我们先一个个的介绍它所继承的接口 PropertyEditorRegistry 阅读全文
posted @ 2021-12-04 17:43 -CoderLi 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 何为 JavaBean ? 一种特殊的类、主要用于传递数据信息、这种类中的方法主要用于访问私有的字段、且方法符合某种命名规则。 JavaBean 的特征 属性都是私有的 存在无参构造方法 私有属性的 getter/setter 方法分别为 getXxx/setXxx getter 方法必须有返回值且 阅读全文
posted @ 2021-12-04 17:42 -CoderLi 阅读(137) 评论(0) 推荐(0) 编辑
摘要: OGNL (Object Graph Navigation Language) 是一个开源的表达式引擎。通过使用OGNL,我们能够通过表达式存取Java对象树中的任意属性和调用Java对象树的方法等。也就是说,如果我们把表达式看成是一个带有语义的字符串,那么OGNL就是这个语义字符串与Java对象之 阅读全文
posted @ 2021-12-04 17:41 -CoderLi 阅读(960) 评论(0) 推荐(1) 编辑
摘要: 先介绍一个项目背景、框架使用的是公司在 Spring Boot 、Zookeeper等框架上自己封装的一个自研框架。第一次启动这个项目的时候、就报了如下的错误 比较令人意外的是、只有我启动时出现了这个错误。而其他开发同事并没有出现这个问题。 其实当时解决这个问题还是花费了不少的时间、第一个对这个项目 阅读全文
posted @ 2021-12-04 17:39 -CoderLi 阅读(98) 评论(0) 推荐(0) 编辑
摘要: 单元测试 所谓的单元测试是测试应用程序的功能是否能够按需要正常运行,单元测试是一个对单一实体(类或方法)的测试。 JUnit JUnit是一个Java编程语言的单元测试框架,始源于一个统称为 xUnit的单元测试框架。 JUnit 促进了 “先测试后编码” 的理念,强调建立测试数据的一段代码,可以先 阅读全文
posted @ 2021-12-04 17:37 -CoderLi 阅读(60) 评论(0) 推荐(0) 编辑
  2021年3月13日
摘要: 概述 Environment 这个接口代表应用运行时的环境。它代表了两方面、一个是 profile 一个是 properties。访问 property 的方法通过 Environment 继承的接口 PropertyResolver 暴露出去。 根据 profile 是否被激活、控制着哪些 bea 阅读全文
posted @ 2021-03-13 22:16 -CoderLi 阅读(663) 评论(0) 推荐(0) 编辑
  2021年3月6日
摘要: 什么叫优雅停机 简单说就是、在对应用进程发送停止指令之后、能保证正在执行的业务操作不受影响。 应用接收到停止指令之后的步骤应该是、停止接收访问请求、等待已经接收的请求处理完成、并能成功返回、这时才真正停止应用。 就Java 语言生态来说、底层技术是支持的、所以我们才能实现在 Java 语言上各个 W 阅读全文
posted @ 2021-03-06 15:25 -CoderLi 阅读(346) 评论(0) 推荐(0) 编辑