博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
学习Spring中遇到关于BeanFactory及测试类的问题
阅读量:6984 次
发布时间:2019-06-27

本文共 4100 字,大约阅读时间需要 13 分钟。

最近在学习Spring,使用的是Spring 5.0.1 学习书本中使用的是4.0

学习书本中使用以下来加载配置文件及设置

Resource resource = new ClassPathResource("applicationContext.xml"); //加载配置文件BeanFactory factory = new XmlBeanFactory(resource);Student student= (Student) factory.getBean("student");student.setName("李明");student.setAge(18);mystudentBean.setSex("男");System.out.println(student);

结果XmlBeanFactory(resource)那里出现了已过时,后面上网查了一下使用了如下方式

ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");        BeanFactory factory = context;        Student student= (Student) factory.getBean("student");        student.setName("李明");        student.setAge(18);        student.setSex("男");        System.out.println(student);

 

 

在Junit test类中运行的时候出现了如下错误:

java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory    at org.springframework.context.support.AbstractApplicationContext.
(AbstractApplicationContext.java:160) at org.springframework.context.support.AbstractApplicationContext.
(AbstractApplicationContext.java:230) at org.springframework.context.support.AbstractRefreshableApplicationContext.
(AbstractRefreshableApplicationContext.java:92) at org.springframework.context.support.AbstractRefreshableConfigApplicationContext.
(AbstractRefreshableConfigApplicationContext.java:59) at org.springframework.context.support.AbstractXmlApplicationContext.
(AbstractXmlApplicationContext.java:62) at org.springframework.context.support.ClassPathXmlApplicationContext.
(ClassPathXmlApplicationContext.java:141) at org.springframework.context.support.ClassPathXmlApplicationContext.
(ClassPathXmlApplicationContext.java:85) at com.itzcn.Test.BeanFactoryTest.test(BeanFactoryTest.java:25) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268) at org.junit.runners.ParentRunner.run(ParentRunner.java:363) at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:86) at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:678) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)Caused by: java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 31 more

原因是因为缺少了commons-logging-1.1.3.jar包,加入该包后可以正常运行测试了

 

写以上是为了方便记录自己学习过程中遇到问题的解决方式,避免出现类似的问题时不知道是什么原因。

转载于:https://www.cnblogs.com/lichengcai/p/Spring.html

你可能感兴趣的文章
【DG】Oracle 19c使用dbca来搭建物理DG
查看>>
Cython安装
查看>>
StringBuilder 、StringBuffer 、 String
查看>>
brew install php55 报错 clang: error
查看>>
ubuntu18.4 安装swoole 和 php 扩展 swoole
查看>>
pcDuino入门心得+HDMI声音+蓝牙功放
查看>>
面向对象2
查看>>
c++测试题2016-6-2
查看>>
Nginx与Serssion一致性问题
查看>>
社会化工程攻击针对目标不再仅限最终用户
查看>>
Hadoop源码分析HDFS ClientProtocol——getBlockLocations
查看>>
AndroidWidget实践 --- EverydayTips开发(6)
查看>>
mysql 随机查询数据
查看>>
CodeIgniter学习笔记一
查看>>
workspace-project-target关系与解耦工程结构总结
查看>>
EhCache的配置
查看>>
Linux 设置时区
查看>>
在maven中引用github上的资源
查看>>
4、Angular JS 学习笔记 – 创建自定义指令 [翻译中]
查看>>
Flex手机开发-退出应用程序
查看>>