springboot注解如何工作,求原理解析

img


实体中用自定义注解解析数据字典没问题,但是嵌套一个实体类型的就不可以。如图TreeCaseVO中的字段数据字典翻译则无效,dubug到改实体时不调用注解的方法

这个问题我只能试着通过文字给你说一下处理问题思路,能否理解就看你的技术造化了。

@Dist(disCode="case_status")

这个注解来说,通常描述在MVC的M层,也就是model类创建的实体对象中,是对实体属性的描述。

那么必然有对应的一套实体属性注解的面向切面的解析处理逻辑。

如果程序出错或者没有按想的逻辑运行得到结果,你只需要debug一下这个注解的解析器,看一下注解解析过程即可。

这需要你在嵌套的实体类需要解析字典的字段上,也加上@Dict注解。
同时,你的逻辑代码肯定是遍历字段看哪些有@Dict注解进行处理吧,假如是a()方法,当你的实体遍历发现嵌套的实体时,要递归调用自己实现;
再有,如果是List<实体>这种,你还需要自定义一个新的注解,如@BatchDict,当你的实体遍历发现嵌套的实体集合时,你调用一下新的batchA()方法,这个方法很简单,就是把参数强转成List,对这个list遍历调用a();