日期:2014-05-20  浏览次数:20770 次

再问servlet,在线等
我想自己写个servlet能做到象struts里面的Actionservlet一样对来自不同的表单的数据能选择相应的action来处理,请问怎么做?关键怎么识别不同表单但名字一样的参数..
还有我在一个servlet里设置了一个servletContext对象,我能从别的servlet里读取这个servletContext里的值吗?如果不行,那我怎样在servlet里实现jsp里面的application范围效果

------解决方案--------------------
LZ 缺少对Servlet继承关系和Http协议的了解,所以才会迷惑,请先查阅这方面的资料,知道httpservlet和http发送post和get请求的格式后,也许不用别人说Lz就能自己实现了
------解决方案--------------------
servletContext是在根目录以下范围共享的
------解决方案--------------------
1.传来地request中预先含有所选择要处理的action名就可以解析并做对应处理了
给一个类似的例子

String actionID = request.getHeader( "action_class ");

SampleAction action = null;
try {


Class actionClass = Class.forName(PACKAGE_NAME + actionID);

System.out.println(PACKAGE_NAME + actionID);

action = (SampleAction)actionClass.newInstance();

} catch (SecurityException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (InstantiationException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}