Webx框架:依赖注入

Webx的依赖注入和Spring的依赖注入非常像,只是有一点点的区别。


注入的时候只能让生命周期长的注入到生命周期短的对象中,比如requestScope对象注入到singleton时就会发生错误。但是对于一些特殊的对象,比如request、session、response它们的生命周期是requestScope,而它们可以注入到任意对象中。这是因为webx对这些对象进行了特殊的处理。


依赖注入有多种方式。可以通过Spring中的Autowired字段进行注入。

@Autowired
private UserManager userManager;


参数注入。可以通过@Param @Params注入URL中的query参数。请看下面的例子。

void doGetInt(@Param("aaa") int i)
void doSetData(@Params MyData myData)


注入框架对象。不需要任何注解。请看下面的例子。

void doGetNavigator(Navigator nav)
void doGetContext(Context context)
void execute(ControlParameters params)


注入Context和Control中的对象。请看下面的例子。

void execute(@ContextValue("myvalue") int value)


注入整个表单。

void doGetGroup(@FormGroup("myGroup1") Group group)
void doGetGroups(@FormGroups("myGroup1") Group[] groups)
void doGetGroupsBeans(@FormGroups("myGroup1") MyData[] data)

相关文章

迭代器模式(Iterator)迭代器模式(Iterator)[Cursor]意图...
高性能IO模型浅析服务器端编程经常需要构造高性能的IO模型,...
策略模式(Strategy)策略模式(Strategy)[Policy]意图:定...
访问者模式(Visitor)访问者模式(Visitor)意图:表示一个...
命令模式(Command)命令模式(Command)[Action/Transactio...
生成器模式(Builder)生成器模式(Builder)意图:将一个对...