12 2021 档案
Pointcut 表达式
摘要:AOP 概念篇 今天介绍 Pointcut 的表达式 通配符 常见的通配符如下 .. 含义一:方法表达式中、代表任意数量的参数 @Service public class HelloService { public void sayHi(String name) { System.out.print
阅读全文
AOP 概念篇
摘要:Spring AOP 系列的第一篇 先介绍一下 AOP 相关的一些概念。 出现的契机 在现实中、我们经常需要记录重要操作的流水以及打印相关的日志到日志文件 // 微信公众号:CoderLi public class BizService01 { public void dealBiz(BizDto
阅读全文
Spring — 自动注入 ?
摘要:我们经常注入的方式都是类似这样子的 @Service public class HelloService { @Autowired private BeanFactory beanFactory; @Autowired public HelloService(ApplicationContext a
阅读全文
Spring--依赖注入 or 方法注入 ?
摘要:依赖注入 我们在 Spring — 循环依赖 中谈到 Spring 的两种依赖注入方式 构造器注入 属性注入(setter注入也归属于此) @Service public class HelloService { /** * 属性注入 */ @Autowired private BeanFactor
阅读全文
Spring 源码--Bean 实例化
摘要:上一篇的 BeanWrapper 我们介绍了 BeanWrapper 的来由。现在我们继续看看 Spring 是如何构造一个 Bean 的。 代码不长、也不是特别的复杂 /** * 使用合适的实例化策略去创建bean: FactoryMethod,构造器自动注入、或者简单的无参构造器 */ prot
阅读全文
Spring 实例化--谁是我的候选人
摘要:@Service public class HelloService { @Autowired(required = false) public HelloService(ApplicationContext applicationContext) { // 1⃣️ } @Autowired(req
阅读全文
BeanWrapper
摘要:文章稍微有点儿长........ BeanWrapper 是 Spring 中比较重要的一个接口、我们在 Spring 获取单例流程(三) 中曾见过 PropertyDescriptor 我们在 Java 内省 有介绍过 我们先一个个的介绍它所继承的接口 PropertyEditorRegistry
阅读全文
Java 内省
摘要:何为 JavaBean ? 一种特殊的类、主要用于传递数据信息、这种类中的方法主要用于访问私有的字段、且方法符合某种命名规则。 JavaBean 的特征 属性都是私有的 存在无参构造方法 私有属性的 getter/setter 方法分别为 getXxx/setXxx getter 方法必须有返回值且
阅读全文
强大的表达式引擎--OGNL
摘要:OGNL (Object Graph Navigation Language) 是一个开源的表达式引擎。通过使用OGNL,我们能够通过表达式存取Java对象树中的任意属性和调用Java对象树的方法等。也就是说,如果我们把表达式看成是一个带有语义的字符串,那么OGNL就是这个语义字符串与Java对象之
阅读全文
一次日志框架问题的解决
摘要:先介绍一个项目背景、框架使用的是公司在 Spring Boot 、Zookeeper等框架上自己封装的一个自研框架。第一次启动这个项目的时候、就报了如下的错误 比较令人意外的是、只有我启动时出现了这个错误。而其他开发同事并没有出现这个问题。 其实当时解决这个问题还是花费了不少的时间、第一个对这个项目
阅读全文
关于 Junit
摘要:单元测试 所谓的单元测试是测试应用程序的功能是否能够按需要正常运行,单元测试是一个对单一实体(类或方法)的测试。 JUnit JUnit是一个Java编程语言的单元测试框架,始源于一个统称为 xUnit的单元测试框架。 JUnit 促进了 “先测试后编码” 的理念,强调建立测试数据的一段代码,可以先
阅读全文