為了提高開發效率,編寫對應的代碼生成器。代碼生成器主要有兩個方面,一個是在線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