这个是看别人问题自己就测试玩玩而已,如有不对,敬请指教。
运行结果:
第一次访问:http://localhost:8080/MyHome/login/login1.do
构造函数——null
java.lang.NullPointerException
at test.LoginAction1.execute(LoginAction1.java:20)。
第二次刷新:
http://localhost:8080/MyHome/login/login1.do
构造函数——null
java.lang.NullPointerException
at test.LoginAction1.execute(LoginAction1.java:20)
不管刷新多少次,都是一样的。
参考文章:http://topic.csdn.net/u/20090415/15/9ff3b792-f21c-4ab9-b225-cbba06cbbfad.html
第一次:http://localhost:8080/MyHome/login/login1.do
构造函数——null
前session_null
前ext_null
后session_{}
后ext_null
Seesion2_{}
2个session相等吗_false
如果Seesion2_{} , 那么{} 是一个对象了而不是null,那么session就已经实例化好了,当第二次执行的
execute——{s1=s1, s2=s2}
come
刷新第二次:
构造函数——null //null
前session_null //NULL
前ext_null
后session_{s1=s1, s2=s2} //这里区别别
后ext_null
Seesion2_{s1=s1, s2=s2} //这2个和上面是一样
2个session相等吗_false
如果Seesion2_{} , 那么{} 是一个对象了而不是null,那么session就已经实例化好了,当第二次执行的
execute——{s1=s1, s2=s2}
come
//这里只是看看struts2 是多线程安全的,而且是以action proxy模式创建的
//所以当再次刷新的时候 public void prepare() throws Exception { 里面的2个输出时null
spring的配置文件
<bean id="LoginAction2" class="test.LoginAction2" scope="prototype">
</bean>
scope="prototype"