SpringBoot JSP 在idea下不能访问 404

公司去年开始推行SpringBoot,但部分老旧的项目还使用着传统的JSP开发模式,在idea下就遇到了一个问题,访问jsp页面404。

网上大部分的建议都是更改jar的依赖方式,未解决。后来同事推荐了解决办法,现记录下来,希望能帮到和我遇到相同问题的人。

其实根本原因就是我们项目的目录结构的问题,大家拉取项目,一般都习惯先创建一个文件夹,然后把项目都拉到这个文件夹下,用idea打开父文件夹,就像这种:
在这里插入图片描述
有两种解决方案,亲测可行。

第一种办法

我们需要配置下内置的tomcat,更改为正确的目录结构:
创建类TomcatConfig.java文件(与*Application启动类同一个包下就行,只要能扫描到),内容如下:

@Configuration
public class TomcatConfig {
    @Bean
    public EmbeddedServletContainerFactory embeddedServletContainerFactory() {
        ConfigurableEmbeddedServletContainer factory = new TomcatEmbeddedServletContainerFactory();
        factory.setDocumentRoot(new File("D:\\WorkSpace\\**\\src\\main\\webapp\\"));
        return (EmbeddedServletContainerFactory) factory;
    }
}

setDocumentRoot中填写你jsp项目的绝对路径。

注意:需要把这个类添加到版本忽略中,不能提交。因为大家的工作目录都不是相同的。

这个方案的参考网址:https://blog.csdn.net/op_violet/article/details/79093328

第二种办法(推荐)

后来发现还有一种解决办法,不需要写配置代码就可以解决,只需要配置下idea项目的启动参数,把项目的工作目录修改为正确的位置,如下图:
在这里插入图片描述1. 先启动一次项目,然后在顶部下来点击“Edit Configuration”
2. 选择带jsp的项目
3. 修改成该项目的正确根目录

或者改成这样
在这里插入图片描述新版idea下来没有这个选项了,可以手动填入:$MODULE_WORKING_DIR$

然后启动就可以了。

写的比较仓促,有问题欢迎与我联系~~

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值