📄 minicontainer.java
字号:
/** * Pxb IOC. * Copyright 2008 Panxiaobo. * All rights reserved. * $Id: MiniContainer.java 35 2008-08-18 11:10:07Z Panxiaobo $ */package pxb.ioc;/** * 迷你版的容器 * * @author Panxiaobo [pxb1988@126.com] */public interface MiniContainer extends LifeCycle{ /** * 添加类映射,典型应用就是将接口from映射到实现to, 如果miniContainer需要from类型的实例,容器将实例化from,并返回 * * @param <T> * @param from * @param to */ public <T> void addClassMap(Class<T> from, Class<T> to); /** * 添加直接映射,如果miniContainer需要from类型的实例,容器返回t * * @param <T> * @param from * @param t */ public <T> void addClassMap(Class<T> from, T t); /** * 容器已经完成核心对外功能的执行清理操作可以减小内存占用 */ public void clear(); /** * 获取容器中对应key的配置值 * * @param key * @return */ public String getProperty(String key); /** * 设置容器使用的类加载器 * * @param classLoader * 外部类加载器 */ public void setClassLoader(ClassLoader classLoader); /** * 设置配置文件路径,必须在ClassPath中的路径 * * @param configFile * 文件路径 */ public void setConfigFile(String configFile); /** * 为容器设置属性值 * * @param key * 属性的key * @param value * 属性的value */ public void setProperty(String key, String value); /** * 实例化好类型type并为他注射必要的属性 * * @param <T> * @param type * @return * @throws Exception */ public <T> T inject(Class<T> type) throws Exception; /** * 为t注射属性 * * @param <T> * @param t * 要注射的实例 * @return * @throws Exception */ public <T> T inject(T t) throws Exception; /** * 返回容器的版本 * * @return */ public String getVersion(); public interface MiniModule { public void configure(MiniContainer miniContainer); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -