package org.nutz.mvc.annotation; import java.lang.annotation.Documented; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; /** * 本注解可以声明在入口函数上,框架会从自身的 Ioc 容器中取得一个对象赋给相应的参数 * <p> * 如果你使用了这个注解,但是没有为框架声明 Ioc 容器,那么在运行时,会抛出一个运行时异常 * <p> * * @author zozoh(zozohtnt@gmail.com) * * @see org.nutz.mvc.annotation.IocBy IocBy:为系统声明 Ioc 容器 * @see org.nutz.mvc.adaptor.injector.IocObjInjector IocObjInjector:具体的注入行为 */ @Retention(RetentionPolicy.RUNTIME) @Target({ElementType.PARAMETER}) @Documented public @interface IocObj { /** * 声明了容器中对象的名称,如果为空,则表示自动通过 ioc.get(MyObject.class) 方式获取对象 * * @return Ioc 容器中对象的名称 */ String value() default ""; }