为了提高开发效率,编写对应的代码生成器。代码生成器主要有两个方面,一个是在线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. 04-HTML-图片标签

    <html> <head>  <title>图片标签学习</title>  <meta charset="utf-8"/> ...

  2. 洛谷P3209 [HNOI2010]PLANAR(2-SAT)

    题目描述 若能将无向图G=(V,E)画在平面上使得任意两条无重合顶点的边不相交,则称G是平面图.判定一个图是否为平面图的问题是图论中的一个重要问题.现在假设你要判定的是一类特殊的图,图中存在一个包含所 ...

  3. 浅谈pc和移动端的响应式

    身为一个前端攻城狮,是不是经常遇到各种各样的响应式问题?下面我们来说一下: 1.响应式跟自适应有什么区别? 有些人可能还不知道响应式跟自适应的区别,甚至认为他们是同一个东西,其实不是的. 自适应是最早 ...

  4. 2018-08-29 浏览器插件实现GitHub代码翻译原型演示

    此原型源自此想法: 中文化源码. 考虑到IDE插件工作量较大, 且与IDE绑定. 在代码转换工具的各种实现中, 综合考虑实用+易用+长远改进潜力, 浏览器插件似乎较有优势. 于是用最快捷的方式实现这一 ...

  5. 2017-11-09 中文代码示例之Vuejs入门教程(一)

    "中文编程"知乎专栏原链 为了检验中文命名在主流框架中的支持程度, 在vuejs官方入门教程第一部分的示例代码中尽量使用了中文命名. 所有演示都在本地测试通过, 源码在这里. 下面 ...

  6. Sublime Text 2 2.0.2 序列号

    ----- BEGIN LICENSE -----Andrew WeberSingle User LicenseEA7E-855605813A03DD 5E4AD9E6 6C0EEB94 BC9979 ...

  7. C# 对象持久化

    本文以一个简单的小例子,简述对象持久化的相关知识,仅供学习分享使用,如有不足之处,还请指正. 概述 对象持久化是指将内存中的对象保存到可永久保存的存储设备中(如磁盘)的一种技术. 本文介绍的是除数据库 ...

  8. Android为TV端助力 自定义activity

    今天公司有个需要需要自动弹出界面,而dialog又不符合要求,所以自定义的一个activity的样式 首先在androidmainfest.xml上注册你的activity <activity ...

  9. Android Studio手动打包

    项目写完了,现在需要把应用上传到市场上面,那么怎么把项目打包成apk?(Android的可安装文件). 1. 创建签名文件 2. 填写好签名参数 3. 生成APK 注意:签名的密码和密匙的密码注意保管 ...

  10. Powershell远程执行命令

    $Username = 'xx' $Password = 'xx' $ComputerName='xx' $pass = ConvertTo-SecureString -AsPlainText $Pa ...