【Java】SpringMVC+JSP部署服务器配置

2020-12-22 11:28

阅读:526

标签:glib   template   release   部署服务器   nbsp   build   auto   div   js等   

Spring构建的web项目结构如下:

技术图片

 

static下放诸如js、img、css、font之类的文件

templates里放的是404之类的文件(不过我放了貌似没有效果???)

紧接着创建一个名为webapp的文件夹,并设置项目structure

技术图片

 

 然后该文件夹下放jsp文件,如下图所示。

技术图片

 

 然后我们要去properties里面设置一下jsp的前后缀:(前两项负责找到jsp,后两项负责解析css、js等文件)

spring.mvc.view.prefix=/page/
spring.mvc.view.suffix=.jsp
# 应该以什么样的路径来访问静态资源,这表示只有静态资源的访问路径为/static/ 时才会处理(如http://localhost:8080/static/css/base.css)
spring.mvc.static-path-pattern=/**
#用于告诉Spring Boot应该在何处查找静态资源文件,查找文件时会依赖于配置的先后顺序依次进行
spring.resources.static-locations=classpath:/static,classpath:/public,classpath:/resources,classpath:/META-INF/resources

因为我的webapp下面是page/ 所以设置前缀是/page/

紧接着我们添加jsp支持,在pom文件中加入几个依赖:(这里给出的是完整的,毕竟比较常用,注意不要引入thymeleaf,因为这两个不能共存)

 dependencies>
        dependency>
            groupId>org.springframework.bootgroupId>
            artifactId>spring-boot-starter-webartifactId>
        dependency>
        dependency>
            groupId>org.mybatis.spring.bootgroupId>
            artifactId>mybatis-spring-boot-starterartifactId>
            version>2.1.3version>
        dependency>
        
        dependency>
            groupId>org.apache.taglibsgroupId>
            artifactId>taglibs-standard-implartifactId>
            version>1.2.5version>
        dependency>
        
        dependency>
            groupId>javax.servletgroupId>
            artifactId>javax.servlet-apiartifactId>
        dependency>
        dependency>
            groupId>javax.servletgroupId>
            artifactId>jstlartifactId>
        dependency>
        
        dependency>
            groupId>com.microsoft.sqlservergroupId>
            artifactId>mssql-jdbcartifactId>
            version>7.2.2.jre8version>
        dependency>
        dependency>
            groupId>org.apache.tomcat.embedgroupId>
            artifactId>tomcat-embed-jasperartifactId>
        dependency>
        dependency>
            groupId>mysqlgroupId>
            artifactId>mysql-connector-javaartifactId>
            scope>runtimescope>
        dependency>
        dependency>
            groupId>org.springframework.bootgroupId>
            artifactId>spring-boot-starter-testartifactId>
            scope>testscope>
            exclusions>
                exclusion>
                    groupId>org.junit.vintagegroupId>
                    artifactId>junit-vintage-engineartifactId>
                exclusion>
            exclusions>
        dependency>
    dependencies>

这样直接编译运行都是没有问题的,但是打成jar包部署的时候,直接报404

打开jar包发现jsp页面根本就没有导入,所以需要配置一下resource目录。

在pom.xml的中添加属性(直接用即可)

resources>
            resource>
                
                directory>src/main/webappdirectory>
                
                targetPath>META-INF/resourcestargetPath>
                includes>
                    include>**/**include>
                includes>
            resource>
            resource>
                directory>src/main/resourcesdirectory>
                includes>
                    include>**/**include>
                includes>
                filtering>falsefiltering>
            resource>
            
            resource>
                directory>src/main/javadirectory>
                excludes>
                    exclude>**/*.javaexclude>
                excludes>
            resource>
        resources>

然后再次打jar包,然而还是404。。。

我们还需要配置一下打包插件,也是在pom中(即配置主类,并使用1.4.2来打包,只有这个版本支持jsp。。。我也是醉了)

  plugins>
            plugin>
                groupId>org.springframework.bootgroupId>
                artifactId>spring-boot-maven-pluginartifactId>
                version>1.4.2.RELEASEversion>
                configuration>
                    
                    fork>truefork>               
  
            mainClass>com.paul623.javaweb.ex.humanresourcemanagement.HumanresourcemanagementApplicationmainClass> configuration> plugin> plugins>

然后就可以愉快的使用啦~~~

另外提一下,jsp中资源访问路径

假如我的font.css文件在resource/static/css/font.css

我的jsp文件在webapp/page/dept/下,则访问路径为../css/font.css

 

可以参考一下这个项目https://github.com/paul623/LibraryManager的配置,花了好久在网上搜寻答案,按照这样配置绝对不会出问题。

希望能对你有帮助~

【Java】SpringMVC+JSP部署服务器配置

标签:glib   template   release   部署服务器   nbsp   build   auto   div   js等   

原文地址:https://www.cnblogs.com/robotpaul/p/13216341.html


评论


亲,登录后才可以留言!