今天整合SSH 启动服务器之后
console里就一直循环出现
六月 10,2014 8:59:44 下午 org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
INFO: Loading XML bean definitions from class path resource [beans.xml]
最后出现内存溢出异常
六月 10,2014 8:59:44 下午 org.springframework.beans.factory.config.PropertyPlaceholderConfigurer loadProperties
INFO: Loading properties file from class path resource [jdbc.properties]
六月 10,2014 8:59:44 下午 org.springframework.context.support.ClassPathXmlApplicationContext prepareRefresh
INFO: Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@2b9abd5f: startup date [Tue Jun 10 20:59:44 GMT+08:00 2014]; root of context hierarchy
六月 10,2014 8:59:44 下午 org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
INFO: Loading XML bean definitions from class path resource [beans.xml]
六月 10,2014 8:59:44 下午 org.springframework.beans.factory.support.DefaultListablebeanfactory destroyBean
SEVERE: Destroy method on bean with name 'org.springframework.aop.support.DefaultbeanfactoryPointcutAdvisor#0' threw an exception
java.lang.StackOverflowError
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
然后以为是bean.xml 写错了,不管怎么注释 怎么改还是这样 ,同样改过structs.xml和web.xml问题依旧。。。。然后看代码的时候发现 action 忘记设成多例模式了
action类上面加上@Scope("prototype") 启动妥妥的。
ps:在网上找了好久也没找到很具体的出现此现象的原因,大概是因为在这种情况下不适合用单例模式,因为action存储数据,如果用单例会导致多线程情况下 出现线程安全问题...