2021年3月27日:wx.request&插入外键
2021年本科写毕业设计所学的笔记,此篇为补上传,本科的大量博客部署在Github上。
wx.request POST 默认向后台传输方式
首先在微信开放文档有写道:
data 参数说明
最终发送给服务器的数据是 String 类型,如果传入的 data 不是 String 类型,会被转换成 String 。转换规则如下:
- 对于
GET
方法的数据,会将数据转换成 query string(encodeURIComponent(k)=encodeURIComponent(v)&encodeURIComponent(k)=encodeURIComponent(v)...
) - 对于
POST
方法且header['content-type']
为application/json
的数据,会对数据进行 JSON 序列化 - 对于
POST
方法且header['content-type']
为application/x-www-form-urlencoded
的数据,会将数据转换成 query string(encodeURIComponent(k)=encodeURIComponent(v)&encodeURIComponent(k)=encodeURIComponent(v)...)
如果以query string方式传输 已经熟烂于心了
eg
public Customer wxGetUserProfile(@RequestParam("nickName") String nickName,
@RequestParam("avatarUrl") String avatarUrl)
但是这样接收嘛,因为没学过json,但是知道 json可以封装对象传输,所以总是这样传也不行,而且 wx.request 默认的 POST 就是传JSON。
调了一小时,完全不会Json就一点一点试成了。
wx.request 默认传已经Json序列化的 Json字符串,可以在后端使用@RequestBody接收
- 可以是这样
public OrderList wxGetAddress(@RequestBody OrderList orderList)
- 也可以用Map万能存任何对象
public OrderList wxGetAddress(@RequestBody Map<String, String> reqbody)
-
第一种 要保证实体类和传过来的json中的属性匹配一致!
-
第二种 什么都可以拿,所以非常方便调试先用Map看看!
数据库插入数据时 若此表是有外键的 则外键不能为空,且外键值必须要是父表中存在的
当然 百度了好多都说是可以为空的,但是我还是先这样理解着把项目写完先吧。
生活
早上到中午吃泡面 下午吃泡面 哇真的,,codingaholic。。 也不知道自己能不能写出来,不会的东西太多了。
2021年3月29日:MyBatis Plus insert返回值为空的大坑!!!!!
Long和long的区别,Long是将long包装好了的包装类
当id是long类型的时候,MyBatis Plus的insert不能通过setId将主键set进实体类对象
id是Long类型的时候,是一个包装类MyBatis Plus的insert才能通过setId将主键set进实体类对象
!!!!!调了2小时 真的牛 我透。。
POSTMAPPING 接收
只能用“/XXX”不能用“XXX”,而Get却可以用“XXX”
2021年3月30日:Javascript前端数据精度问题!!!!
今天遇到一个天坑。。
- 需求的场景描述
我后台的实体类ID是Long类型,数据库是bigint类型,雪花算法产生的ID,返回给小程序的时候精度丢失了
这个丢失还是没办法在前端做的,在前端调式,我查看了返回来的json数据没丢,但是当wx.request的success(res)的res接收到data后丢失的,这个我又不能重写它解析json的方法
- 最终一个没任何实习工作经验的大四的我只能想了一个曲线救国的方法
所以只能从后端下手将bigint转换成string传回
好消息是,当把这个String类型的id从前端传回后端的时候,java能自动解析Json 将其重新赋值为Long,无需自己再手动转换
- 芽儿哟,这就是项目经验么,坑死我了。。。
2021年4月4日:ThymeLeaf+LayUI表格渲染错误
使用thymeleafhe+layui渲染表格时,出现错误org.thymeleaf.exceptions.TemplateProcessingException: Could not parse as expression:
这个问题干了俩小时才知道为什么
是因为这是因为[[]]是thymeleaf的内联表达式,分开书写即可正常。
所以将
table.render({
cols:[[
XXX
]]
})
改成
table.render({
cols:[
[
XXX
]
]
})
就可以了血坑。。。
引用:CSDN大佬
2021年4月5日:日记
定制了个桌子 ¥1230.00
爸爸量好了尺寸,本来说6月买,但这种东西肯定是不参加618的,现在买了,下次爸爸回家就可以帮回家收货装上,然后可以通风一个月。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传
找了一早上,再一个普通淘宝店和企业淘宝店纠结,选了企业淘宝店的,主要是客服态度好吧
也设计了一早上决定怎么样,走线怎么走,希望到手以后达到心理预期吧
打算左边靠窗用来写写东西看看书,右边用来coding或者gaming _
下半年就要自己孤身一人考研了,哎,也不知道未来会怎么样,身边的人好像没有一个考上,就有一个TSR调剂去了桂理工,我现在都觉得他不应该去,不过又不是我的人生谁说呢
想考研上岸,然后换电脑,换个MBP写代码,然后在计科路上越走越远吧,希望下半年能好好努力,不负韶华吧
今天自己的毕设也能交了,开始继续增加功能完善功能,加油吧!