?? enginefactory.java
字號:
package com.laozizhu.search;
import java.util.Iterator;
import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
* 解析引擎工廠。<br>
* 通過Spring注入可用的引擎數(shù)據(jù).<br>
* 當(dāng)然,你也可以通過set方法動態(tài)添加。
*
* @author 老紫竹(laozizhu.com)
*/
public class EngineFactory {
public Map<String, Engine> getEngineMap() {
return engineMap;
}
public void setEngineMap(Map<String, Engine> engineMap) {
this.engineMap = engineMap;
}
private Map<String, Engine> engineMap;
public Engine getInstance(String url) {
Iterator<String> it = getEngineMap().keySet().iterator();
Pattern p;
Matcher m = null;
String s;
while (it.hasNext()) {
s = it.next();
p = Pattern.compile(s);
m = p.matcher(url);
if (m.find()) {
return getEngineMap().get(s);
}
}
return null;
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -