目录
3.1 SpringBoot2.x目录文件结构讲解和静态资源访问
3.1 SpringBoot2.x目录文件结构讲解和静态资源访问
1. 目录
- src/main/java:存放代码;
- src/main/resources:存放资源文件;
- static:静态资源(css,js,图片等等静态文件);
- templates:模板;
- application.properties:SpringBoot里面的配置文件;
2.SpringBoot同个文件的加载顺序:
SpringBoot默认顺序:META/resources > resources > static > public,按照这个顺序查找相应资源,如果找到则直接返回,若是没有则找不到;
3.默认配置:
spring.resources.static-locations = classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/
基本互联网企业 静态资源文件存储在CDN,HTML,CSS,图片等
CDN:内容分发网络;
文件服务器:如:阿里云OSS;
3.2 SpringBoot2.X启动类位置常见形式
注:应用启动的位置,Application启动类位置;
1.三种形式
- 当启动类和controller在同一类中时,在该类上添加@Controller注解即可;
- 当启动类和controller分开时,启动类要放在根目录下,启动类上只需要注解SpringBootApplication;
- 当启动类和Controller分开时,若启动类在非根目录下,需要在启动类中增加@CompontScan,并配置需要扫描的包名如(basePackages = xxx.xxx.xxx);
2.推荐使用第二种方式,否则漏配置扫描包的话遇到bug难排查(项目庞大的情况下);
3.3 SpringBoot2.X启动方式和部署
1.IDEA中启动
2.外置Tomcat中启动:将近淘汰,tomcat版本兼容问题复杂,微服务容器化部署复杂;
3.jar方式打包启动:
- 最常用,官方推荐;
- pom文件新增maven插件
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>2.7.0</version>
</plugin>
Terminal命令行:mvn install > cd target > ls > java -jar xxxxxxx.jar
守护进程:nohup java -jar xxxxxxx.jar & (守护进程:终端退出之后,程序依旧在后台运行);
4.必备打包、启动命令:
- 构建:mvn install;
- 构建跳过测试类:mvn install -Dmaven.test.skip = true;
- target目录下对应的jar包就是打包后的项目;
- 进入对应的target目录启动 jar -jar xxxxx.jar,(后台运行的话可以使用守护进程);
3.4 打包后的Jar包里面的目录结构
- BOOT-INF/classes:自己写的类;
- BOOT-INF/lib:添加的依赖项;
- META-INF/MANIFEST.MF:指定入口函数;