我的一個(gè)低級(jí)錯(cuò)誤,導(dǎo)致數(shù)據(jù)庫崩潰半小時(shí)??!

Java技術(shù)棧
www.javastack.cn
關(guān)注閱讀更多優(yōu)質(zhì)文章
一、反常的SQL語句


KEY `idx_userfruitid_type`?(
??`user_fruit_id`,
??`task_type`,
??`receive_start_time`,
??`receive_end_time`
) USING BTREE
KEY `idx_task_type_receive_start_time` (
?`task_type`,
?`receive_start_time`,
?`receive_end_time`,
?`created_time`
) USING BTREE
三、最左匹配原則

public?class?GardenUserTaskListReq?implements?Serializable?{
????private?static?final?long?serialVersionUID = -9161295541482297498L;
????@ApiModelProperty(notes = "水果id")
????@NotNull(message = "水果id不能為空")
????private?Long userFruitId;
????/**以下省略*/
????.....................
}


重要的參數(shù)都要先做驗(yàn)證,即使是非空值也需要做驗(yàn)證,不符合條件的就要直接返回或拋異常,不能參與業(yè)務(wù)sql的查詢,否則頻繁的訪問也會(huì)對(duì)服務(wù)造成負(fù)擔(dān)。






關(guān)注Java技術(shù)??锤喔韶?/strong>

評(píng)論
圖片
表情

