spring的注解
2023-04-11 08:56:06 8 举报
AI智能生成
无
作者其他创作
大纲/内容
@Controller
将本类注册到ioc容器
声明这是一个控制器
@RequestMapping("/result")
设置请求资源路径
@SessionAttributes(value = {"id","username"})
往session域里存值
@DateTimeFormat(pattern = "yyyy-MM-dd")
日期转型
@PathVariable("id")
用在路径收参
@RequestMapping("/test06/{id}")
public String test06(@PathVariable("id") Integer num) {
System.out.println("test06");
System.out.println("test06="+num);
return "hello";
}
@RequestMapping("/test06/{id}")
public String test06(@PathVariable("id") Integer num) {
System.out.println("test06");
System.out.println("test06="+num);
return "hello";
}
@CookieValue(value = "ck", required = false, defaultValue = "ck1")
获取cookie的值
@RequestHeader(value = "aa",required = false)
获取请求头
@GetMapping
只允许get请求
@PostMapping
值允许post请求
@ModelAttribute
在其他请求之前执行此方法
其他请求收参时:
会先根据参数类名首字母小写作为key 去ImplicModel 寻找对应的数据
然后再将前端传来的值覆盖上去
会先根据参数类名首字母小写作为key 去ImplicModel 寻找对应的数据
然后再将前端传来的值覆盖上去
@JsonProperty("username")
属性名修改
@JsonIgnore
属性忽略
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
日期格式化(后端到前端)
@JsonInclude()
null和empty属性排除
@JsonSerialize(using = MySerializer.class)
自定义序列化(例如取小数点后两位):
public class MySerializer extends JsonSerializer<Double> {
@Override
public void serialize(Double aDouble, JsonGenerator jsonGenerator,
SerializerProvider serializerProvider) throws IOException {
String s = BigDecimal.valueOf(aDouble).setScale
(2, BigDecimal.ROUND_HALF_UP).toString();
jsonGenerator.writeNumber(s);
}
}
public class MySerializer extends JsonSerializer<Double> {
@Override
public void serialize(Double aDouble, JsonGenerator jsonGenerator,
SerializerProvider serializerProvider) throws IOException {
String s = BigDecimal.valueOf(aDouble).setScale
(2, BigDecimal.ROUND_HALF_UP).toString();
jsonGenerator.writeNumber(s);
}
}
@ResponseBody
将controller类的返回值,转换成json(jackson),并将json响应给客户端
@RestController
用在类上,作用等同于@ResponseBody
@RequestBody
@RequestBody将请求体中的json数据转换为java对象
//前端传来的是一整个字符串也能映射到对象里,
但是与前端contentType: "application/json"配套使用:
$.ajax({
url: "json01/test03",
type: "post",
dataType: "json",
data: player,
contentType: "application/json",
success: function (res) {
console.log(res);
}
})
//前端传来的是一整个字符串也能映射到对象里,
但是与前端contentType: "application/json"配套使用:
$.ajax({
url: "json01/test03",
type: "post",
dataType: "json",
data: player,
contentType: "application/json",
success: function (res) {
console.log(res);
}
})
@ExceptionHandler
用在异常处理自定义的方法上边
@ControllerAdvice
用在全局异常处理自定义的类上边
@CrossOrigin()
设置哪些ip可以跨域请求
0 条评论
下一页