注解 自己看的
@NotBlank
Not Blank(不是空白)
只能作用在String上,不能为null
,调用trim()后,长度必须大于0。
在实体类使用
public class TestPojo{
@NotBlank(message = "不能为空")
private String text;
}
在controller
类中要配合@valid
使用,不然@NotBlank
不起作用
@PostMapping
public TestPojo test(@valid @RequestBody TestPojo textPojo){}
@JsonFormat
此注解用于Date
时间格式化
- shap: 表示序列化后的一种类型
- ANY: 指示不指定要使用的类型
- NATURAL:指示给定数据类型的“默认”选择
- SCALAR:指示值不应是结构化的(也就是说,不是数组或对象,而是任何其他类型)
- ARRAY:指示应使用(JSON)数组类型的值
- OBJECT:指示应该使用(JSON)对象类型的值
- NUMBER:指示应使用数字(JSON)类型的值(但未指定应使用整数还是浮点表示形式)
- NUMBER_FLOAT:指示应使用浮点型的值
- NUMBER_INT:指示应使用整型的值
- STRING:指示应使用(JSON)字符串类型的值
- BOOLEAN: 指示应使用(JSON)布尔类型的值
- BINARY:指示二进制类型的值(如果支持格式,则为本地;如果仅支持文本类型,则使用Base64编码)。
- pattern: 表示日期的格式
- timezone: 默认是GMT,中国需要GMT+8
- locale: 根据位置序列化的一种格式
- zh-Hant-TW
- zh-Hant
- zh
- en-US
- en
- …
@JsonFormat(pattern = "yyyy-MM-dd")
private Date date;
@Controller
@Controller
是SpringMVC提供的注解,标记了@Controller
的类将会被容器代理并成为一个控制类,@Controller
会将用户请求的数据封装成Model(模型),然后将其返回给相对应的View(视图)进行展示。
@Controller只是定义了一个控制器类,而使用@RequestMapping注解的方法才是处理请求的处理器。
@Controller
public class testController{}
@ResponseBody
@ResponseBody的作用是将java对象转换为json格式的数据。可用于类、方法和形参上
@Controller
@ResponseBody
public class testController{}
@Controller
@ResponseBody
public class testController{
@ResponseBody
@GetMapping
public String test(@@ResponseBody User user){}
}
@RestController
@RestController是@Controller和@ResponseBody注解的结合。
它本身使用@Controller和@ResponseBody进行注释。带有此注解的类型被视为控制器,其中带有@RequestMapping注解的方法默认情况下采用@ResponseBody语义。
@RestController
public class testController{}
@Qualifier
在自动装配时,可以在字段或参数上使用此注解作为候选bean的限定符。它还可以用来注解其他自定义注解,然后这些注解又可以用作限定符。(机翻注释)
通过此注解,表明了哪个实现类是需要的,添加@Qualifier注解,需要注意的是@Qualifier的参数名称为我们之前定义@Service注解的名称之一,并且首字母为小写。
@MapperScan
扫描mapper接口:@MapperScan("xxx.xxx.mapper")
扫描多个mapper接口:@MapperScan("xxx.xxx.mapper", "xxx.xxx.mapper")
@SpringBootApplication
@MapperScan("xxx.xxx.mapper", "xxx.xxx.mapper")
public class xxxApplication {
public static void main(String[] args) {
SpringApplication.run(xxxxApplication.class, args);
}
}