67,513
社区成员
发帖
与我相关
我的任务
分享
Map map=new HashMap();
public void InitMap() {
Digester digester = new Digester();
digester.push(this);
digester.addCallMethod("mvc-config/action", "addaction", 2);
digester.addCallParam("mvc-config/action/name", 0);
digester.addCallParam("mvc-config/action/classs", 1); try {
digester.parse("mvc-config.xml");
} catch (IOException e) {
e.printStackTrace();
} catch (SAXException e) {
e.printStackTrace();
}
}
public void addaction(String name, String classs) {
map.put(name,classs);
}
<?xml version="1.0"?>
<mvc-config>
<action name="login" class="com.weijin.crm.actiom.LoginActiom"></action>
<action name="loginout" class="com.weijin.crm.actiom.LoginOutActiom"></action>
...... 这里就不写那么多了,就是有很多
</mvc-config>
dig.push(this);
dig.addCallMethod("mvc-config/action-mappings", "addAction", 2);
dig.addCallParam("mvc-config/action-mappings/action/path", 0);
dig.addCallParam("mvc-config/action-mappings/action/name", 1);
try {
dig.parse(path);
<servlet>
<description></description>
<servlet-name>ActionServlet</servlet-name>
<servlet-class>
com.weijin.apms.core.action.ActionServlet
</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>WEB-INF\mvcConfig.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>ActionServlet</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
public void init() throws ServletException {
MvcConfig config=MvcConfig.getConfig();
super.init();
// getServlet().getServletContext().getRealPath("/")
String webpath = this.getServletContext().getRealPath("/");
String configpath = this.getInitParameter("config");
System.out.println(new java.io.File(webpath + configpath).isFile() );
config.run(webpath + configpath);
}
public class MvcConfig {
private static MvcConfig config;
private Map<String, String> map = new HashMap<String, String>();
private MvcConfig() {
}
public static MvcConfig getConfig() {
if (config == null) {
config = new MvcConfig();
}
return config;
}
public Map<String, String> getMap() {
return map;
}
public void run(String path) {
//就是这个地方没有读取全部mvc-config.xml中信息 map中只有一条信息
Digester dig = new Digester();
dig.push(this);
dig.addCallMethod("mvc-config/action-mappings", "addAction", 2);
dig.addCallParam("mvc-config/action-mappings/action/path", 0);
dig.addCallParam("mvc-config/action-mappings/action/name", 1);
try {
dig.parse(path);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SAXException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void addAction(String path, String name) {
System.out.println("add Action");
map.put(path, name);
}
}
<mvc-config>
<action-mappings>
<!-- 登陆管理 -->
<action path="login" name="com.softeem.apms.login.action.LoginAction"> </action>
<action path="out" name="com.softeem.apms.login.action.OutAction"> </action>
<action path="randomcode" name="com.softeem.apms.login.action.RandomCode"> </action>
........
</action-mappings>
</mvc-config>
Map map=new HashMap();
public void InitMap() {
Digester digester = new Digester();
digester.push(this);
digester.addCallMethod("mvc-config/action", "addaction", 2);
digester.addCallParam("mvc-config/action/name", 0);
digester.addCallParam("mvc-config/action/classs", 1); try {
digester.parse("mvc-config.xml");
} catch (IOException e) {
e.printStackTrace();
} catch (SAXException e) {
e.printStackTrace();
}
}
public void addaction(String name, String classs) {
map.put(name,classs);
}