public class Factory {
public static Product newInstance() {
return new ConcreteProduct();
}
}
public abstract Product {
}
public class ConcreteProduct extends Product {
public ConcreteProduct() {}
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) {
String flag = request.getParameter("flag");
if(flag.equals("service1")) {
service1();
}else if(flag.equals("service2")) {
service2();
}
...
}
@WebFilter("/TransRequest")
public class TransRequest implements Filter{
private String servletName;
@Override
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
HttpServletRequest myRequest = (HttpServletRequest)request;
//拿到请求的servlet名字, 这里我们约定请求都是/servletName形式
String names[] = myRequest.getRequestURI().trim().split("/");
servletName = names[2];
if( servletName != null) {
//以下是最典型的两句简单工厂的例子
Servlet servlet = ServletFactory.createServlet(servletName);
servlet.service(request, response);
}else
chain.doFilter(request, response);
}
public class ServletFactory {
public static Servlet createServlet(String servletName) throws ServletException {
if(servletName.equals("servletName1")) {
return new Service1();
}else if(servletName.equals("servletName2")){
return new Service2();
}else{
throw new ServletException("No such servlet");
}
}
}
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有