Solon

Solon 开发之常用注解

本系列提供Solon 注解方面的知识。且对关键注解会有详细说明。目前常用注解有:

注解说明
@Inject *注入托管对象(by type)
@Inject("name")注入托管对象(by name)
@Inject("${name}")注入配置(可由基础类型或结构体接收)
@Singleton单例申明(Solon 默认是单例)
@Singleton(false)非单例
@Component托管组件(可自动处理特殊对象,且可被注解提取函数)
@Init *构造完成并注入后的初始化(在容器加载完成后被执行)
@Configuration托管配置组件类(与 @Inject, @Bean 共同完成初始化配置、构建托管对象等)
@Bean配置托管对象(作用在 @Configuration 类的函数上,才有效)
@Import导入或扫描组件(作用在启动主类上或 @Configuration 类上,才有效)
@Controller控制器组件类(支持函数拦截)
@Mapping映射(可附加 @Get、@Post、@Socket 等限定注解)
@Param请求参数(一般没什么用处,需要默认值或名字不同时用)
@Body请求体(一般没什么用处。仅在注入 body string 时用,其它场景可略)
@ServerEndpointWebSocket 与 Socket 的服务端注解(作用在 Listener 接口实现类上有效)
@ClientEndpointWebSocket 与 Socket 的客户端端注解(作用在 Listener 接口实现类上有效)
@Service托管服务组件类(采用 asm 代理;支持函数拦截)
@Dao托管数据访问组件类(采用 asm 代理;支持函数拦截)
@Repository托管仓库组件类(采用 asm 代理;支持函数拦截)

托管组件的初始化顺序:new() - > @Inject - > @Init