[英]Spring xml context file not found
我正在嘗試按照本教程學習Spring Framework:
http://www.tutorialspoint.com/spring/spring_hello_world_example.htm
我用以下方法創建了一個新的Maven項目:
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.2.5.RELEASE</version>
</dependency>
不是Web應用程序。 我想創建一個簡單的Java應用程序,我的主要方法是:
ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");
HelloWorld obj = (HelloWorld) context.getBean("helloWorld");
obj.getMessage();
如果我沒有記錯的話,ClassPathXmlApplicationContext構造函數將在src / main / resources文件夾中查找文件。 但是,當我執行該應用程序時,出現了異常“找不到文件bean.xml”。 我嘗試使用到bean.xml文件src / main / resources / beans.xml的完整路由以及大量路由。
當我使用此代碼檢查文件是否存在時,它說存在。
File f = new File("src/main/resources/beans.xml");
System.out.println("Exist test: " + f.exists());
我不明白 有什么幫助嗎?
我想問的另一件事是我是否需要使用xml來獲取依賴注入。 我可以在不使用XML定義的情況下使用spring框架嗎?
我已經看到了諸如@Autowired之類的Annotations,但我也無法使其正常運行。 我想知道是否需要使用xml +注釋的組合。
如果將文件放在類路徑的根目錄中(這就是您要做的),請使用
ApplicationContext context = new ClassPathXmlApplicationContext("/beans.xml");
引用它(開頭是“ /”)。
您不需要XML配置。 看看Spring Framwork參考文檔 。 第5.9章基於注釋的容器配置和5.12基於Java的容器配置詳細介紹了Java配置。
ClassPathXmlApplicationContext不在/ src / main / resources中查找文件。 它試圖在類路徑(jar文件的“根”)中找到它。
但是,在構建應用程序時,您放置在src / main / resources中的所有內容都會被maven放置在“ root”(在類路徑中)中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.