spring同时跳转html与jsp

写这篇文章的目的有2 个:

 

  1. 学习总结,总结自己对于如何实现html与jsp同时跳转的方法及数据传递
  2. 感恩回馈,自己将自己从网友那提供的教程中获得有用的东西再反馈给网友们

这篇文章的主要解决的问题有:

  1. 如何在spring中同时跳转html与jsp,而不使用thymeleaf(因为thymeleaf对html格式有严格要求,对于我这样的新手来说,实在容易出错)
  2. 如何给jsp中传入数据

一.如何在spring中同时跳转html与jsp

思路:通过配制springmvc的配制来控制html文件的跳转,再通过跳转语句来实现jsp的跳转。跳转语句如下:

request.getRequestDispatcher("/WEB-INF/helloJsp.jsp").forward(request, response);

 

配制:

  1. Pom文件

<?xml version="1.0" encoding="UTF-8"?>

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">

   <modelVersion>4.0.0</modelVersion>

   <parent>

            <groupId>org.springframework.boot</groupId>

            <artifactId>spring-boot-starter-parent</artifactId>

            <version>2.1.4.RELEASE</version>

            <relativePath/> <!-- lookup parent from repository -->

   </parent>

   <groupId>com.example</groupId>

   <artifactId>demo2</artifactId>

   <version>0.0.1-SNAPSHOT</version>

   <name>demo2</name>

   <description>Demo project for Spring Boot</description>

 

   <properties>

            <java.version>1.8</java.version>

   </properties>

 

   <dependencies>

            <dependency>

                     <groupId>org.springframework.boot</groupId>

                     <artifactId>spring-boot-starter-web</artifactId>

            </dependency>

 

            <dependency>

                     <groupId>org.springframework.boot</groupId>

                     <artifactId>spring-boot-starter-test</artifactId>

                     <scope>test</scope>

            </dependency>

            <!--springBoot整合JSP添加依赖 javax.servlet-api,jstl jasper -->

            <!--servlet依赖 -->

            <dependency>

                     <groupId>javax.servlet</groupId>

                     <artifactId>javax.servlet-api</artifactId>

            </dependency>

 

            <!--jstl依赖 -->

            <dependency>

                     <groupId>javax.servlet</groupId>

                     <artifactId>jstl</artifactId>

            </dependency>

            <!--使jsp页面生效 -->

            <dependency>

                     <groupId>org.apache.tomcat.embed</groupId>

                     <artifactId>tomcat-embed-jasper</artifactId>

            </dependency>

            <!--支持热部署 -->

            <dependency>

                     <groupId>org.springframework</groupId>

                     <artifactId>springloaded</artifactId>

                     <version>1.2.8.RELEASE</version>

            </dependency>

 

            <dependency>

                     <groupId>org.springframework.boot</groupId>

                     <artifactId>spring-boot-devtools</artifactId>

            </dependency>

 

 

            <!-- 引入aop支持 -->

            <dependency>

                     <groupId>org.springframework.boot</groupId>

                     <artifactId>spring-boot-starter-aop</artifactId>

            </dependency>

   </dependencies>

 

   <build>

            <plugins>

                     <plugin>

                               <groupId>org.springframework.boot</groupId>

                               <artifactId>spring-boot-maven-plugin</artifactId>

                     </plugin>

            </plugins>

   </build>

 

</project>

  1. 静态资源放置位置

 

注意:这里的webapp是自己对应创建的。我使用的STS编辑器,新建项目的时候是没有webapp的。

 

Yml文件的配制如下:

server:

    port: 8090

    servlet:

      context-path: /demo2/

 

#springmvc prefix suffix

#这里要注意的是,如果只跳转jsp文件的话,可以将下面的jsp的配制文件打

#开,将html的配制文件关闭,这两个配制中只能存在一个。

#spring:

#   mvc:

#      view:

#        prefix: /WEB-INF/

#        suffix: .jsp

   

spring:

    mvc:

      view:

        prefix: /pages/views/

        suffix: .html

编写controller层内容如下

 

验证:

 

 

验证成功,表示这种方法是可行的,能实现同时跳转jsp文件与html文件。

 

二.如何在jsp中传入数据:

修改controller程序为下图:

 

再修改jsp文件如下:

 

验证:成功,我们传入的数据成功

 

猜你喜欢

转载自blog.csdn.net/weixin_44767679/article/details/101923554
今日推荐