SpringBoot2.x的基本使用
SpringBoot2.x的基本使用
一、SpringBoot2.x的常用注解
-
@Controller
作用:用于标记这个类是一个控制器,返回页面的时候使用;如果要返回JSON,则需在接口上使用@ResponseBody才可以。
-
@RestController
作用:用于标记这个类是个控制器,返回JSON数据的时候使用,如果使用这个注解,则接口返回数据会被序列化为JSON。
-
@RestController = @Controller + @ResponseBody。
-
@RequestMapping
作用:路由映射,用于类上做1级路径;用于某个方法上做子路径
-
@SpringBootApplication
作用:用于标记是SpringBoot应用,里面包含多个子注解
@SpringBootApplication = @Configeuration+@EnableAutoConfuration+@ComponentScan -
@Configuration:主要标注在某个类上,用于spring扫描注入,一般结合@Bean使用
-
@EnableAutoConfiguration:启用Spring的自动加载配置,自动载入应用程序所需的所有Bean
-
@ComponentScan:告诉spring扫描包的范围,默认是Application类所在的全部子包,可以指定其他包。
-
@ComponentScan({"net.xdclass.package1","net.xdclass.package2"}).
二、SpringBoot2.x的目录规范、静态资源访问
目录规范
- src/main/java: 存放代码
- src/main/resources
- static:存放静态文件,比如css、js、image
- templates:存放静态页面jsp,html,tpl
- config:存放配置文件,application.properties
- recourse:
静态文件加载
同个文件的加载顺序,静态资源文件SpringBoot默认会挨个从如下目录寻找
- META/recources>
- resources>
- static>
- public
查找里面是否存在相应的资源,如果有则直接返回,不再默认加载的目录,则无法找到
默认配置
spring.resources.static-locations = classpath:/META-INF/resources/,classpath:/static/,classpath:/public/
基本互联网企业 静态资源文件(HTML,CSS,图片等)存储在CDN
CDN:内容分发网络
文件服务器:阿里云OSS
应用启动类的位置
注意:应用启动的位置,Application启动类位置
三种形式
- 当启动类和controller在同一类中时,在该类上添加注解@Controller即可;
- 当启动类和controller分开时,启动类要放在根目录下,启动类上只需要注解@SpringBootApplication;
- 当启动类和controller分开时,如果启动类在非跟目录下,需要在启动类中增加注解@ComponentScan,并配置需要扫描的包名,如(basePackages=)
@ComponentScan(basePackages = {"net.xdclass.controller","net.xdclass.service"})
工作中用第二种方式,不然漏掉配置扫描包,项目庞大的时候容易出问题,不易排查。
SpringBoot启动方式
-
IDEA开发中启动
本地开发中常用
-
外置Tomcat中启动
接近淘汰
-
Jar方式打包启动
官方推荐,工作中最常用
步骤:pom文件新增maven插件
<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> -
必备打包、启动命令
构建:mvn install
构建跳过测试类 mvn install -Dmaven.test.skip=true
target目录下有对应的jar包就是打包后项目
进到对应的target目录启动 java -jar xxx.jar 即可
想要后台运行,就用守护进程 nohup java -jar xxx.jar &
浙公网安备 33010602011771号