• java web项目获取项目路径


    注意:有时获取到的项目路径后再+“自定义路径后” 路径不可用,这时要看下项目里自定义路径是不是空文件夹,如果是空文件夹则调试和运行时文件夹不会编译到部署文件里.

    1.方法一

    调试时只能获取eclipse 项目未编译前的路径 不太好用

        /* private static Logger logger = Logger.getLogger(BookController.class); */
        @RequestMapping("/index")
        public String bookHandle(HttpServletRequest servlet) {
            
            JSONObject json = JsonResourceUtils.getJsonObjFromResource
                    ("static/json/book_nav.json",servlet.getServletContext().getRealPath("/"));
            
            return "book";
        }

    2.方法 二

    获取项目运行时的真实类路径

    /* private static Logger logger = Logger.getLogger(BookController.class); */
        @RequestMapping("/index")
        public String bookHandle(HttpServletRequest servlet) {
            
            JSONObject json = JsonResourceUtils.getJsonObjFromResource
            /* 这里直接获取到了文件路径 */ (BookController.
    class.getClassLoader().getResource("static/json/book_nav.json").getPath()); return "book"; }

     3.用spring 获取运行时类路径路径

    String filePath = ClassUtils.getDefaultClassLoader().getResource("").getPath();

    4.其它方法

    package com.demo;
     
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
    import org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration;
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RestController;
     
    import java.io.File;
     
     
    @SpringBootApplication(exclude = {DataSourceAutoConfiguration.class, HibernateJpaAutoConfiguration.class})
    @RestController
    public class Application {
         
        public static void main(String[] args) {
            SpringApplication.run(Application.class,args);
        }
         
        @GetMapping("/lujing")
        public void getLujing() throws Exception{
            //当前项目下路径
            File file = new File("");
            String filePath = file.getCanonicalPath();
            System.out.println(filePath);
     
            //当前项目下xml文件夹
            File file1 = new File("");
            String filePath1 = file1.getCanonicalPath()+File.separator+"xml\";
            System.out.println(filePath1);
     
            //获取类加载的根路径
            File file3 = new File(this.getClass().getResource("/").getPath());
            System.out.println(file3);
     
            //获取当前类的所在工程路径
            File file4 = new File(this.getClass().getResource("").getPath());
            System.out.println(file4);
     
            //获取所有的类路径 包括jar包的路径
            System.out.println(System.getProperty("java.class.path"));
        }
    }
  • 相关阅读:
    css修炼宝典
    衡量优秀的卓越的前端工程师
    Bootstrap 快速人门案例——前端最火的插件
    前端开发小白必学技能—非关系数据库又像关系数据库的MongoDB快速入门命令(2)
    前端开发必学技能之一———非关系数据库又像关系数据库的MongoDB快速入门第一步下载与安装
    小米路由器未授权访问漏洞
    linux下更改ssh登录前的banner信息
    centos下编译安装Openssl
    S2-032代码执行
    SSRF漏洞学习
  • 原文地址:https://www.cnblogs.com/jiangfeilong/p/11106129.html
Copyright © 2020-2023  润新知