为了提高开发效率,编写对应的代码生成器。代码生成器主要有两个方面,一个是在线Web,另外一个是运行某个类。

使用的技术是SpringBoot+MyBatis-Plus+MySQL+JDK8。

在编写在线代码生成器的时候,正好遇到一个小问题,那就是静态资源无法访问。

以SSM(Spring+SpringMVC+MyBatis/MyBatis-Plus)框架来说,通常要想对静态资源放行,最简单直接的办法是使用*.do。

如果你不想使用*.do,那么可以尝试下面两种方法?

第一种方法

在spring-mvc.xml中配置如下:

<mvc:default-servlet-handler/>

光这样还不够,如果是不起作用,你还需要在web.xml配置如下:

<!-- 静态资源文件的引入 -->

 <servlet-mapping>

  <servlet-name>default</servlet-name>

  <url-pattern>*.js</url-pattern>

 </servlet-mapping>

 <servlet-mapping>

  <servlet-name>default</servlet-name>

  <url-pattern>*.css</url-pattern>

 </servlet-mapping>

 <servlet-mapping>

  <servlet-name>default</servlet-name>

  <url-pattern>*.png</url-pattern>

 </servlet-mapping>

  <servlet-mapping>

  <servlet-name>default</servlet-name>

  <url-pattern>*.jpg</url-pattern>

 </servlet-mapping>

第二种方法

对指定目录放行,通常也是修改spring-mvc.xml,请参考:

<!-- 对指定目录下的静态资源放行 -->

<mvc:resources location="/images/" mapping="/images/**"/>

<mvc:resources location="/css/" mapping="/css/**"/>

<mvc:resources location="/js/" mapping="/js/**"/>

如果是使用SpringBoot的话,该如何配置静态资源放行呢?

一般情况下,SpringBoot+模板语言(jsp+freemarker等)开发。

但是有部分开发者为了实现前后端分离(这是一种变相的分离),将静态资源放在src/main/resources目录下。

放在这个目录下是无法访问的,如果要想访问,需要配置。

WebConfig.java

package com.acs.springboot.config;

import java.util.concurrent.TimeUnit;

import org.springframework.context.annotation.Configuration;

import org.springframework.http.CacheControl;

import org.springframework.web.bind.annotation.ControllerAdvice;

import org.springframework.web.servlet.config.annotation.InterceptorRegistry;

import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;

import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;

@ControllerAdvice

@Configuration

public class WebConfig extends WebMvcConfigurerAdapter {

    @Override

    public void addResourceHandlers(ResourceHandlerRegistry registry) {

        //静态资源放行

        registry.addResourceHandler("/view/**").addResourceLocations("classpath:/view/");

    }

}
效果图如下:

参考(均来自我个人的博客园):

JavaWeb在线代码生成器:https://www.cnblogs.com/youcong/p/9494892.html

MP实战系列(六)之代码生成器讲解:https://blog.csdn.net/suijiarui/article/details/51360980

SpringBoot之静态资源放行的更多相关文章

  1. SpringBoot 配置静态资源映射

    SpringBoot 配置静态资源映射 (嵌入式servlet容器)先决知识 request.getSession().getServletContext().getRealPath("/& ...

  2. 如何在自定义Filter中优雅的实现静态资源放行

            在javaweb开发中,过滤器Filter比较常用于类似登录的拦截等场景.但是,当过滤器的配置不当时就会把所有的请求都拦截,静态资源也会被拦截掉,导致静态页面加载不出来. 一般的解决方 ...

  3. springboot设置静态资源不拦截的方法

    springboot设置静态资源不拦截的方法 springboot不拦截静态资源需配置如下的类: import org.springframework.context.annotation.Confi ...

  4. springboot下静态资源的处理(转)

    在SpringBoot中有默认的静态资源文件相关配置,需要通过如下源码跟踪: WebMvcAutoConfiguration-->configureResourceChain(method)-- ...

  5. IntelliJ IDEA+SpringBoot中静态资源访问路径陷阱:静态资源访问404

    IntelliJ IDEA+SpringBoot中静态资源访问路径陷阱:静态资源访问404 .embody{ padding:10px 10px 10px; margin:0 -20px; borde ...

  6. springboot配置静态资源访问路径

    其实在springboot中静态资源的映射文件是在resources目录下的static文件夹,springboot推荐我们将静态资源放在static文件夹下,因为默认配置就是classpath:/s ...

  7. 【SpringBoot】06.SpringBoot访问静态资源

    SpringBoot访问静态资源 1.SpringBoot从classpath/static的目录 目录名称必须是static 启动项目,访问http://localhost:8080/0101.jp ...

  8. SpringBoot - 搭建静态资源存储服务器

    目录 前言 环境 实现效果 具体实现 文件上传 配置类 上传接口 上传实现 辅助类 实体 上传测试 文件访问 配置类 项目源码 前言 记录下SpringBoot下静态资源存储服务器的搭建. 环境 wi ...

  9. springboot访问静态资源404

    <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring- ...

随机推荐

  1. 前端整理——css部分

    (1)盒模型(普通盒模型.怪异盒模型) 1.元素的content(内容).padding(内边距).border(边框).margin(外边距)构成了CSS盒模型 2.IE盒模型和W3C盒模型 1)I ...

  2. 【读书笔记】iOS-使用钥匙串保护数据

    一,将应用从设备上删除时,并不会删除其钥匙串项,这使得调试工作困难得多.模拟器有一个Reset Contents and Settings选项,可用于将钥匙串项移除.因此,强烈建议在模拟器上确定Key ...

  3. 实现DevOps需要的工具

    硬性要求:工具上的准备 代码管理(SCM):GitHub.GitLab.BitBucket.SubVersion 构建工具:Ant.Gradle.maven 自动部署:Capistrano.CodeD ...

  4. Android 直接修改dex破解

    直接修改dex破解 一.编写一个简单的验证程序 (1)MainActivity: protected void onCreate(BundlesavedInstanceState) { super.o ...

  5. 手动编译websocket-sharp项目使其支持.net core

    以前项目中使用了websocket-sharp,挺好用.可惜,不支持.net core.好在手动编译很顺利: 从github下载源代码 创建dotnet core的类库,复制代码后并编译即可 dotn ...

  6. mysql数据表的基本操作:表结构操作,字段操作

    本节介绍: 表结构操作 创建数据表. 查看数据表和查看字段. 修改数据表结构 删除数据表 字段操作 新增字段. 修改字段数据类型.位置或属性. 重命名字段 删除字段 首发时间:2018-02-18  ...

  7. spring学习总结——介绍

    介绍:以下博客的内容都是依据<spring实战4>这本书.spring4.0 来总结. 一.spring作用 Spring可以做很多事情,它为企业级开发提供给了丰富的功能,但是这些功能的底 ...

  8. gitolite的部署

    gitolite服务部署: 1,在git服务器端安装git并创建git用户. yum install -y git useradd git 2,生成gitolite的管理账户,这个账户也可以在git服 ...

  9. [翻译]LVM中逻辑卷的最大大小限制

    前言: 本文是对这篇博客Maximum Size Of A Logical Volume In LVM的翻译,敬请尊重原创和翻译劳动成果,那些随意转载的大爷们,好歹也自觉注明出处.谢谢! 英文原文地址 ...

  10. 【转】JSF中的三大核心组件 UI标签的详细介绍和使用举例

    JSF提供了大量的UI标签来简化创建视图.这些UI标签类似于ASP.NET中的服务器组件.使用这些标签,可以通过其value,binding,action,actionListener等属性直接绑定到 ...