課程
/后端開發(fā)
/Java
/SpringBoot構建電商基礎秒殺項目
此處和前面涉及價格的地方,Dao層和庫里的類型是Double,Service和Controller層是BigDecimal,為什么不全都用BigDecimal?從庫中取出到Dao層Double不會丟精嗎?
2018-12-25
源自:SpringBoot構建電商基礎秒殺項目 6-1
正在回答
老師想都用BigDecimal的,奈何數據庫不支持啊。Service和Controller層是可控的,自己寫的Model類,當然用BigDecimal了。Dao層類是mybatis-generator插件生成的,沒法用BigDecimal,因為Mysql數據庫沒有這個數據類型。當然你可以認為Mysql的Decimal可以和Java的BigDecimal一致,問題是,mybatis-generator把Mysql的Decimal生成了Long類型,明顯不適合做價格字段。
浪潮之巔 提問者
慕妹5204827 回復 浪潮之巔 提問者
浪潮之巔 提問者 回復 慕妹5204827
一般人民幣單位都是分?。。。。。。∮肔ong 不會有精度的問題,用String 也可以~
因為老師數據庫decimal(10,0)這樣寫的,所以生成實體類是Long。
如果數據庫設計為這樣:?
`price` decimal(10,2) DEFAULT NULL,
生成實體類會是
private?BigDecimal?price;
不是mybatis自動生成代碼的鍋。
龍蝦三少
李鑫鑫lxx 回復 龍蝦三少
舉報
應用SpringBoot快速搭建擁有用戶、商品、交易及秒殺活動的電商秒殺應用。
1 回答為什么數據庫中price字段要使用double,使用帶小數點的decimal不是更合理嗎?
1 回答validator使用的javax.validation.Validator,為什么要引入hibernate validator呢
1 回答createItem那里為什么不知道返回model呢 而是要使用getItem方法
1 回答自動生成的DO一直是BigDecimal類型的怎么回事
1 回答我總感覺Controller繼承一個異常處理類很怪,為什么不使用ControllerAdvice?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優(yōu)惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2018-12-25
老師想都用BigDecimal的,奈何數據庫不支持啊。Service和Controller層是可控的,自己寫的Model類,當然用BigDecimal了。Dao層類是mybatis-generator插件生成的,沒法用BigDecimal,因為Mysql數據庫沒有這個數據類型。當然你可以認為Mysql的Decimal可以和Java的BigDecimal一致,問題是,mybatis-generator把Mysql的Decimal生成了Long類型,明顯不適合做價格字段。
2019-01-02
一般人民幣單位都是分?。。。。。。∮肔ong 不會有精度的問題,用String 也可以~
2018-12-26
因為老師數據庫decimal(10,0)這樣寫的,所以生成實體類是Long。
如果數據庫設計為這樣:?
`price` decimal(10,2) DEFAULT NULL,
生成實體類會是
不是mybatis自動生成代碼的鍋。