Spring Boot
Spring Boot 的特点
1. 独立运行的 Spring 项目
Spring Boot 可以以 jar 包的形式独立运行,Spring Boot 项目只需通过命令“ java–jar xx.jar” 即可运行。
2. 内嵌 Servlet 容器
Spring Boot 使用嵌入式的 Servlet 容器(例如 Tomcat、Jetty 或者 Undertow 等),应用无需打成 WAR 包 。
3. 提供 starter 简化 Maven 配置
Spring Boot 提供了一系列的“starter”项目对象模型(POMS)来简化 Maven 配置。
4. 提供了大量的自动配置
Spring Boot 提供了大量的默认自动配置,来简化项目的开发,开发人员也通过配置文件修改默认配置。
5. 自带应用监控
Spring Boot 可以对正在运行的项目提供监控。
6. 无代码生成和 xml 配置
Spring Boot 不需要任何 xml 配置即可实现 Spring 的所有配置。
maven
Maven 是一款基于 Java 平台的项目管理和整合工具,它将项目的开发和管理过程抽象成一个项目对象模型(POM)。开发人员只需要做一些简单的配置,Maven 就可以自动完成项目的编译、测试、打包、发布以及部署等工作。
约定优于配置(Convention Over Configuration)是 Maven 最核心的涉及理念之一 ,Maven对项目的目录结构、测试用例命名方式等内容都做了规定,凡是使用 Maven 管理的项目都必须遵守这些规则。
文件 | 目录 |
---|---|
Java 源代码 | src/main/java |
资源文件 | src/main/resources |
测试源代码 | src/test/java |
测试资源文件 | src/test/resources |
打包输出文件 | target |
编译输出文件 | target/classes |
starter
Spring Boot 将日常企业应用研发中的各种场景都抽取出来,做成一个个的 starter(启动器),starter 中整合了该场景下各种可能用到的依赖,用户只需要在 Maven 中引入 starter 依赖,SpringBoot 就能自动扫描到要加载的信息并启动相应的默认配置。
YAML
SpringBoot 默认使用以下 2 种全局的配置文件,其文件名是固定的。
- application.properties
- application.yml
YAML 的语法如下:
- 使用缩进表示层级关系。
- 缩进时不允许使用 Tab 键,只允许使用空格。
- 缩进的空格数不重要,但同级元素必须左侧对齐。
- 大小写敏感。
Spring Boot 常用注解汇总
一、启动注解 @SpringBootApplication
@SpringBootApplication是一个复合注解,包含了@SpringBootConfiguration,@EnableAutoConfiguration,@ComponentScan这三个注解
@SpringBootConfiguration 注解,继承@Configuration注解,主要用于加载配置文件
@EnableAutoConfiguration 注解,开启自动配置功能
@ComponentScan 注解,主要用于组件扫描和自动装配
二、@Controller相关注解
控制器,处理http请求。
@RestController 复合注解
相当于@ResponseBody+@Controller合在一起的作用,RestController使用的效果是将方法返回的对象直接在浏览器上展示成json格式.
@RequestBody
通过HttpMessageConverter读取Request Body并反序列化为Object(泛指)对象
@RequestMapping
@RequestMapping 是 Spring Web 应用程序中最常被用到的注解之一。这个注解会将 HTTP 请求映射到 MVC 和 REST 控制器的处理方法上
@GetMapping用于将HTTP get请求映射到特定处理程序的方法注解
注解简写:@RequestMapping(value = "/say",method = RequestMethod.GET)等价于:@GetMapping(value = "/say")
@PostMapping用于将HTTP post请求映射到特定处理程序的方法注解
三、取请求参数值
@PathVariable:获取url中的数据
@RequestParam:获取请求参数的值
@RequestHeader 把Request请求header部分的值绑定到方法的参数上
@CookieValue 把Request header中关于cookie的值绑定到方法的参数上
四、注入bean相关
@Repository
DAO层注解,DAO层中接口继承JpaRepository<T,ID extends Serializable>,需要在build.gradle中引入相关jpa的一个jar自动加载。
@Service
- @Service是@Component注解的一个特例,作用在类上
- @Service注解作用域默认为单例
- 使用注解配置和类路径扫描时,被@Service注解标注的类会被Spring扫描并注册为Bean
- @Service用于标注服务层组件,表示定义一个bean
- @Service使用时没有传参数,Bean名称默认为当前类的类名,首字母小写
- @Service(“serviceBeanId”)或@Service(value=”serviceBeanId”)使用时传参数,使用value作为Bean名字
@Autowired 自动导入
- @Autowired注解作用在构造函数、方法、方法参数、类字段以及注解上
- @Autowired注解可以实现Bean的自动注入
@Data
使用这个注解需要安装一个Lombok插件
@Data生成通常与简单POJO(普通旧Java对象)和bean关联的所有样板文件:所有字段的Getter,所有非最终字段的Setter,以及适当的toString、equals和hashCode实现,这些实现涉及类的字段,以及初始化所有最终字段的构造函数,以及所有没有使用@NonNull标记的初始化器的非最终字段,以确保字段永远不为null。
标签:简要,springBoot,Service,Spring,配置,Boot,Maven,注解,复习 From: https://www.cnblogs.com/ggonekim/p/17138877.html