求JAVA大神帮解答。。。。

HTTP Status 500 - An exception occurred processing JSP page /products.jsp at line 106
type Exception report
message An exception occurred processing JSP page /products.jsp at line 106
description The server encountered an internal error that prevented it from fulfilling this request.
exception org.apache.jasper.JasperException: An exception occurred processing JSP page /products.jsp at line 106

103: <%
104: Show shows=(Show)request.getAttribute("pages");
105: if(shows==null){
106: request.getRequestDispatcher("ShowServlet?pageIndex=1").forward(request, response);
107: }
108: %>
109: <%

这个是报错的代码。上面是出现的异常。。。
  1. 你没给我你应用的上下文= =,一型缓袜个JasperException只能说明JSP的解析过程出错了,实际错误不卜激能从你的提问得知= =

  2. 看看你这个URL:ShowServlet?pageIndex=1对应的JSP里是不是有类哪蚂似于shows.doFoo(...)或者${pages.foo}的代码= =,直觉告诉我你遇到NullPointer了


1.3
2.成员方法和成员变量
3.error和exception
4.实现接口
5.runnable接口 thread类
6.同步
7.先进先出
8、初始化9、Iterator() 遍历
10、链表 hash值

1√2√3√4√5×6√7√8×9√10√

1.声明一个值类型变量,编译器会在栈上分配一个空间,这个空间对应着该值类型变量,空间里存储的就是该变量的值。引用类型的实例分配在堆上,新建一个引用类型实例,得到的变量值对应的是该实例的内存分配地址.
2.如果数据将在线程间共享。例如正在写的数据以后可能被另一个线程读到缺蚂喊,或者正在读的数据可能已经被另一个线程写过了,那么这些数据就是伏野共享数据,必须进行同步存取。当应用程序在对象上调用了一个需要花费很长时间来执行的方法,并且不希望让程序等待方法的返回时,就应该使用异步编程,在很多情况下采用异步途径往往更有效率。
3.List 以特定次序来持有元素,可有重复元素。Set 无法拥有重复元素,内部排序。Map 保存key-value值,value可多值

/*接口*/interface CanFly{public abstract void fly();}/*飞机和鸟类*/class Plane implements CanFly{public void fly(){System.out.println("飞机会物丛飞");}}class Bird implements CanFly{publicvoid fly(){System.out.println("鸟会飞");}}/*测试类*/public class Test{public static void main(String[] args){Plane p = new Plane();Bird b = new Bird();new Test().makeFly(p,b);}public void makeFly(Plane p,Bird b){new p.fly();new p.fly();} }

console打印结果:
飞机会飞
鸟会飞
请采纳。