1.
2.位置:
Long userId = (Long) info.getPrincipals().getPrimaryPrincipal();
//error48:JAVA.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.Long
System.out.println("Long userId=="+userId);
User user = userService.getById(userId);
3.原因:不能硬上。
那如何将Integer类型转换成长整形 ?
4.在正儿八经前,要有一系列的小动作,才能接受。
先转成String型,再转Long;
1、转String型:A.toString
2、再由String型转Long 型即可
方法a: long B = Long.valueOf("A.toString");
方法b: long B = Long.parseLong("A.toString");
5.用工a方法:
// 从认证信息中获取用户id long B = Long.parseLong("A.toString");
Long userId = Long.parseLong((info.getPrincipals().getPrimaryPrincipal()).toString());
System.out.print(userId);
6.运行成功,方法可行.
其它:用json串来传值可以试试。
@PostMApping("/xxx")
public CommonResponse update( @RequestBody HashMap<Object, Object> map) {
Long postId = Long.valueOf(map.get("postId").toString());
Long userId = Long.valueOf(map.get("userId").toString());
Integer likeStatus = (Integer) map.get("likeStatus");
return CommonResponse.success(postReviewService.updateLike(reviewId,userId,likeStatus));
}