Java 将文件读入spring控制器。使用相对路径

Java 将文件读入spring控制器。使用相对路径,java,file,maven,spring-mvc,tomcat,Java,File,Maven,Spring Mvc,Tomcat,我想像这样从控制器读取文件: @Controller public class HomeController { @RequestMapping(value = {"/"}, method = RequestMethod.GET) public String showHomePage(ModelMap model) throws IOException, SAXException, ParserConfigurationException { List<U

我想像这样从控制器读取文件:

@Controller
public class HomeController {

    @RequestMapping(value = {"/"}, method = RequestMethod.GET)
    public String showHomePage(ModelMap model) throws IOException, SAXException, ParserConfigurationException {
        List<User> users = XmlParser.parse("Sum_and_clients.xml");
        return "home";
    }
@控制器
公共类家庭控制器{
@RequestMapping(值={”/“},方法=RequestMethod.GET)
公共字符串showHomePage(ModelMap模型)引发IOException、SAXException、ParserConfiguration异常{
List users=XmlParser.parse(“Sum_and_clients.xml”);
返回“家”;
}
但当我启动服务器时,它希望从apache tomcat\bin下载它。尽管Sum_和_clients.xml位于HomeController.java附近,但如何将这个绝对tomcat路径更改为我项目中的路径?

我解决了我的问题

  URL url = HomeController.class.getResource("Sum_and_clients.xml");
  File file = new File(url.getPath())

此文件应放在[{Your project name}\target\{Your project name}\WEB-INF\classes\{Your package to HomeController}中

xml文件是在类路径中还是在Web应用程序中的某个位置?HomeCtrl.是一个类,因此它位于类路径中。搜索从类路径加载文件以及在Web应用程序中放置文件的位置。@Ria我想将其放在我的应用程序中的任何目录中。@Stefan你的意思是,我可以通过他的类获得HomeController的绝对位置装载机?