本系列提供Solon 注解方面的知识。且对关键注解会有详细说明。
目前常用注解有:
| 注解 | 说明 |
| @Inject * | 注入托管对象(by type) |
| @Inject("name") | 注入托管对象(by name) |
| @Inject("${name}") | 注入配置(可由基础类型或结构体接收) |
| | |
| @Singleton | 单例声明(Solon 默认是单例) |
| @Singleton(false) | 非单例 |
| | |
| @Import | 导入组件或属性源(作用在启动主类上或 @Configuration 类上,才有效) |
| | |
| @Configuration | 托管配置组件类(与 @Inject, @Bean 共同完成初始化配置、构建托管对象等) |
| @Bean | 配置托管对象(作用在 @Configuration 类的函数上,才有效) |
| @Condition | 配置条件(v2.1.0 支持) |
| | |
| @Component | 托管组件(支持自动代理,v2.5.2 开始支持自动代理) |
| | |
| @SolonMain | Solon 主类标识(即 main 函数所在类) |
| | |
| @SolonTest | Solon 测试标识(一般在测试时使用) |
| @Rollback | 执行回滚(一般在测试时使用) |
MVC / RPC 常用注解:
| 注解 | 说明 |
| @Controller | 控制器组件类(支持函数拦截) |
| @Remoting | 远程控制器类(有类代理;即RPC服务端) |
| | |
| @Mapping... | 映射(可附加 @Get、@Post、@Socket、@Produces、@Consumes 等限定注解) |
| | |
| @Param | 请求参数(一般没什么用处,需要默认值或名字不同时用) |
| @Header | 请求Header |
| @Cookie | 请求Cookie |
| @Path | 请求 path 变量(因为框架会自动处理,所以这个只是标识下方便文档生成用) |
| @Body | 请求体(一般会自动处理。仅在主体的 String, InputSteam, Map 时才需要) |
WebSocket / SocketD 常用注解:
| 注解 | 说明 |
| @ServerEndpoint | WebSocket 与 Socket 的服务端注解(作用在 Listener 接口实现类上有效) |
| @ClientEndpoint | WebSocket 与 Socket 的客户端端注解(作用在 Listener 接口实现类上有效) |