http://www.jdon.com/jdonframework/download.html
[该贴被admin于2009-07-20 17:41修改过]
jdonframework 6.0具体变动如下:(一)增加Annotation注射功能, @Service或@Component替代了原来XML配置:<pojoService name="给自己类取的名称" class="完整类的名称"/>或者在具体类代码上加入:@Service("给自己类取的名称")<component name="给自己类取的名称" class="完整类的名称"/>或者在具体类代码上加入@Component("给自己类取的名称")Service和Component都表示组件构建概念,可以是一个类,也可以是一个类为主的多个类,如果这个组件供客户端调用,那么就称为服务。两者在Jdon框架中没有区别,只是使用时称呼不同而已。@Component(“给自己类取的名称”)也可以简化为@Component,这样,Component的名称就是该类的完整类名称(getClass,getName());@Service则不可以这样,因为是供Jdon框架容器以外的外部客户端调用的,一定要取一个名称。因为需要被客户端调用,那么就要指定服务的名称,所以,@Service与@Component的区别就是,@Service必须规定一个名称@Service("给自己类取的名称");而@Component则没有name属性,缺省是类名称getClass().getName()名称,如果客户端有时需要临时直接调用@Component标注的组件,也可以按类名称调用。(二).增加@Singleton Annotation,缺省客户端调用getService时,每次请求获得一个新的Service实例,也可以使用@Poolable对象池来对代码比较大的Service类进行性能提高,现在又提供了另外一种方法,使用单例@Singleton。单例和对象池区别主要是:对象池可以进行实例最多个数控制,这样,能够保护服务器不会被尖峰冲击造成资源耗尽。在Service服务代码比较简单小的情况下,Service实例三个创建方式:单例、对象池以及每次请求生成一个新实例,在性能上几乎没有太大差别,已经使用框架源码包中examples目录下的testWeb经过测试了。(三).没有将有关Action的配置转为Annotation,原来的配置如下继续保留:<model key="username" class="com.jdon.jivejdon.model.Account"> <actionForm name="accountForm"/> <handler> <service ref="accountService"> <initMethod name="initAccount"/> <getMethod name="getAccountByName"/> <createMethod name="createAccount"/> <updateMethod name="updateAccount"/> <deleteMethod name="deleteAccount"/> </service> </handler></model>因为这个配置是有关MVC表现层,而表现层不是Jdon框架的核心,所以,Jdon框架核心是业务层,对Domain Model和Service服务组件进行管理,所以,不能在业务层耦合具体表现层。上述配置可以认为是表现层和业务层的桥连接配置。
http://www.jdon.com/jivejdon/thread/36618.html
http://www.jdon.com/jivejdon/thread/36650.html
[该贴被admin于2009-07-29 11:56修改过]
@Component public class InFilterManager { private Collection inFilters; public InFilterManager(String[] inFilterClassNames) { initFilters(inFilterClassNames); } private void initFilters(String[] filters) { try { inFilters = new ArrayList(); for (int i = 0; i < filters.length; i++) { String className = filters[i]; inFilters.add((MessageRendering) Class.forName(className).newInstance()); } } catch (InstantiationException e) { throw new ForumException(e); } catch (IllegalAccessException e) { throw new ForumException(e); } catch (ClassNotFoundException e) { throw new ForumException(e); } } } <p class="indent">
[该贴被oojdon于2009-07-22 16:33修改过]
http://www.jdon.com/jivejdon/thread/36633.html
[该贴被admin于2009-07-25 17:49修改过]