Spring BootプロジェクトのWEB-INFの下にあるjspにアクセスできず、ピットを踏んでいます

mavenを介してspringbootプロジェクトを作成し、jspページへのアクセスを開始すると、404が表示されます。

特定のエラー報告
ここに画像の説明を挿入
プロジェクトの構造
ここに画像の説明を挿入

まず、application.ymlの構成に問題があるかどうかを判断します

server:
  port: 8181

spring:
  mvc:
    view:
      prefix: /
      suffix: .jsp

構成は問題ありません。次の手順に進みます

Spring Bootはjspの使用を推奨していないので、インターネット上の情報を確認しただけです。

  1. Spring Bootをパッケージ化する方法は2つあります。1つはjarパッケージで、もう1つはwarパッケージです。これらの2つのパッケージ化方法は、java -jar xxx.jar / warコマンドを使用して実行できます。warパッケージは、一般的に使用される(Tomcat)などのServletコンテナーに個別にデプロイでき、jarパッケージを使用する場合はjspはサポートされません。 。
  2. 自己定義のerror.jspは、SpringBootのデフォルトのエラー処理ページを上書きしません

この場合、JSPを使用する場合は、それをwarパッケージとしてパッケージ化します。

jsp関連の依存関係座標をインポートする

<!--添加tomcat依赖模块.-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-tomcat</artifactId>
    <scope>provided</scope>
</dependency>
<!-- 添加servlet依赖模块 -->
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <scope>provided</scope>
</dependency>
<!--jsp页面使用jstl标签-->
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>jstl</artifactId>
</dependency>
<dependency>
    <groupId>taglibs</groupId>
    <artifactId>standard</artifactId>
    <version>1.1.2</version>
</dependency>
<!-- 使用jsp引擎,springboot内置tomcat没有此依赖 -->
<dependency>
    <groupId>org.apache.tomcat.embed</groupId>
    <artifactId>tomcat-embed-jasper</artifactId>
    <scope>provided</scope>
</dependency>

それでも解決しない場合は、OK

パッケージプラグインのバージョンが1.4.2.RELEASEに設定され、リソースディレクトリが構成されている

パッケージ化するときに、リソースディレクトリに構成ファイルを一緒に入力することを示します。

<build>
    <resources>
        <resource>
            <directory>src/main/webapp</directory>
            <!--这里必须是META-INF/resources-->
            <targetPath>META-INF/resources</targetPath>
            <includes>
                <!--以任意开头点任意结尾的文件-->
                <include>**/**</include>
            </includes>
            <filtering>false</filtering>
        </resource>
    </resources>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>

構成が完了したら、Mavenをリロードし、プロジェクトを再起動して、もう一度アクセスします

ここに画像の説明を挿入

ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/m0_53321320/article/details/123941755