SpringBoot常用注解
1. @SpringBootApplication
springBoot的基石,启动类
@Configuration 应许spring注册额外的bean或者导入其他配置类
@EnableAutoConfiguration 启用 SpringBoot 的自动配置机制
@ComponentScan 扫描Bean
2. @Autowired
- 导入Bean
- 指定初始化的构造方法
3. @Component,@Repository,@Service, @Controller
标识bean
4. @RestController 返回Json/Xml形式数据
@Controller MVC控制器bean 返回一个页面,结合EL表达式渲染页面
@ResponsBody 通过转换器转换为指定的格式之后写入到Response对象的 body中
5. @Scope
声明Bean的作用域
- singleton : 唯一实例, 默认
- prototype : 每次请求都会创建一个新的实例
- request : 每一次 HTTP 请求产生一个新的 bean,当次请求有效
- session : 每一次服务启动会产生一个新的 bean,当次服务期内有效
6. @Configuration
配置类Bean 可用@Component 替代
7. @RequestMapping、@GetMapping、@Postmapping、@PutMapping、@DeleteMapping、@PatchMapping
@GetMapping("users") 等价于 查询 @RequestMapping(value="/users",method=RequestMethod.GET)
@PostMapping("users") 等价于 增加@RequestMapping(value="/users",method=RequestMethod.POST)
@PutMapping("/users/{userId}") 等价于 整体更新@RequestMapping(value="/users/{userId}",method=RequestMethod.PUT)
@DeleteMapping("/users/{userId}")等价于 删除@RequestMapping(value="/users/{userId}",method=RequestMethod.DELETE)
@PatchMapping("/update") 局部更新
public int updateById(MyStudent myStudent) {
return myStudentMapper.updateByPrimaryKey(myStudent);
}
8. @PathVariable、 @RequestParam、@RequestBody
只有一个@RequestBody
,但是可以有多个@RequestParam
和@PathVariable
前后端传值的方式:
@PathVariable
用于获取路径参数 {}中的参数@RequestParam
用于获取查询参数。 type=web 键值对的形式@RequestBody
request请求(POST,PUT,DELETE,GET)的body部分
Content-Type 为 application/json,系统会使用HttpMessageConverter
或者自定义的HttpMessageConverter
将请求的 body 中的 json 字符串转换为 java 对象。
HttpServletRequest
对象- ajax
$.ajax({
type: "POST",
url: "form/version/versionParam",
contentType: "application/json; charset=utf-8",
data: JSON.stringify(idList),
async: false,
success: function (message) {
},
error: function (meg) {
alert("出错了!");
}
});
- jsp表单提交
<form action="demo.do" method="post">
⽤户名:<br>
<input type="text" name="username"><br>
密码:<br>
<input type="password" name="password" ><br><br> <input type="submit" value="提交">
</form>
9. @Value
、@ConfigurationProperties
wuhan2020: 2020年初武汉爆发了新型冠状病毒,疫情严重
library:
location: 湖北武汉加油中国加油
books:
- name: 天才基本法
description: 恰是父亲当年为她放弃的那所。
- name: 时间的秩序
description: 为什么我们记得过去,而非未来?
- name: 了不起的我
description: 如何养成一个新习惯?
使用 @Value("${property}")
读取比较简单的配置信息
通过@ConfigurationProperties
读取配置信息并与 bean 绑定