📄 actiondefinemanagerimpl.java
字号:
package pp.mvc.core.impl;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import pp.mvc.core.ActionDefineManager;
import pp.mvc.core.XmlProcesser;
import pp.mvc.domain.ActionDefine;
import pxb.ioc.Inject;
import pxb.ioc.LifeCycle;
/**
*
* @author panhuizi
*
*/
public class ActionDefineManagerImpl implements ActionDefineManager, LifeCycle {
XmlProcesser xmlProcesser;
Map<String, ActionDefine> map = new HashMap<String, ActionDefine>();
public ActionDefine getActionDefine(HttpServletRequest request) {
String servletPath = request.getServletPath();
if (servletPath.endsWith(".action")) {
String s = servletPath.substring(0, servletPath.lastIndexOf("."));
ActionDefine ad = map.get(s);
if (ad == null) {
String namespace = servletPath.substring(0, servletPath
.lastIndexOf("/"));
if (namespace.equals("")) {
namespace = "/";
}
String actionname = servletPath.substring(servletPath
.lastIndexOf("/") + 1, servletPath.lastIndexOf("."));
throw new RuntimeException("在namespace为[" + namespace
+ "]中不存在action名为[" + actionname + "]的映射");
}
return ad;
}
return null;
}
public void destroy() throws Exception {
}
public void init() throws Exception {
map = xmlProcesser.getAllActionDefineMapsByPpXmlFile();
}
@Inject
public void setXmlProcesser(XmlProcesser xmlProcesser) {
this.xmlProcesser = xmlProcesser;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -