springboot静态资源访问+jsp
莫名其妙好了,老实说,我现在还在晕着呢!
因为前端选择的是jsp页面,所以就将静态资源都放到了webapp下,webapp是自己建的,springboot项目创建完毕无该文件夹。
使用的是外置tomcat,版本tomcat7
项目整体结构:
配置文件:
启动类:不拦截.do请求
@SpringbootApplication默认已经配置很多注解,有时候不知道在写一遍,可能在注解下面会出现红线
@SpringbootApplication默认配置的注解
@SpringBootApplication(exclude= {DataSourceAutoConfiguration.class}),排除自动注入数据源的配置
这一步可能会出现sqlSessionFactory,sqlSessionFactorySupport这种异常,这块没搞懂。
pom.xml文件:
<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <version>1.5.6.RELEASE</version> tomcat7可运行,防止因为el-api版本过低出现异常 </dependency> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.1</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <!--alipay--> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <version>1.2</version> </dependency> <dependency> <groupId>com.alipay.sdk</groupId> <artifactId>alipay-sdk-java</artifactId> <version>3.7.4.ALL</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> </dependency> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>20.0</version> </dependency> <!--<!–配置springboot支持jsp,添加jsp支持–>--> <!--<dependency>--> <!--<groupId>org.apache.tomcat.embed</groupId>--> <!--<artifactId>tomcat-embed-jasper</artifactId>--> <!--</dependency>--> <!--<!–配置springboot支持jsp,jsp对servlet容器的支持–>--> <!--<dependency>--> <!--<groupId>javax.servlet</groupId>--> <!--<artifactId>javax.servlet-api</artifactId>--> <!--</dependency>--> <!--在jsp页面使用jstl标签来处理页面逻辑,那么需要引入jstl --> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> <dependency> <groupId>org.codehaus.jackson</groupId> <artifactId>jackson-mapper-asl</artifactId> <version>1.9.12</version> </dependency> </dependencies> <build> <resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.*</include> </includes> </resource> <resource> <directory>src/main/resources</directory> <includes> <include>**/*.*</include> </includes> </resource> 我的项目webapp目录没有编译,所以加了这个,可以多看看编译出来的文件,有时候可能是编译出了问题 <resource> <directory>src/main/webapp</directory> <includes> <include>**/*.*</include> </includes> </resource> </resources> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <!-- 将第三方jar包在打包时导入 --> <configuration> <includeSystemScope>true</includeSystemScope> </configuration> </plugin> <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.3.2</version> <configuration> <verbose>true</verbose> <overwrite>true</overwrite> </configuration> </plugin> </plugins> </build>
index.jsp访问资源
<script type="text/javascript" src="../static/js/jquery-3.3.1.js"></script>
<img src="../static/images/main.png" />
前端访问静态资源的时候一定要注意
--------静态资源是否被拦截
--------自己的地址写错
这两种情况一定要区分开