老師請(qǐng)問(wèn) ,多線程(假如很多用戶)使用動(dòng)態(tài)表名這個(gè)功能
老師 ,想請(qǐng)問(wèn)下如果很多人都在用某個(gè)系統(tǒng)的時(shí)候,10個(gè)請(qǐng)求去查user_2001表,10個(gè)請(qǐng)求去查user_2002表,10個(gè)請(qǐng)求去查user_2003表 ...等等
按照老師配的這種
public?static?ThreadLocal<String>?myTableName=new?ThreadLocal<String>(); MybatisPlusConfig.myTableName.set("user_2001");
以?threadlocal設(shè)置每個(gè)請(qǐng)求的想去訪問(wèn)的動(dòng)態(tài)表 這樣子就算用戶請(qǐng)求有很多,也能準(zhǔn)確查詢出每個(gè)用戶想要查看的表是嗎。
2020-07-05
? ? ? ?如果是web項(xiàng)目,可以這樣寫,但是別忘了,在使用結(jié)束時(shí),要清空ThreadLocal變量,防止被線程池重用。web處理請(qǐng)求時(shí),只要沒(méi)處理完,當(dāng)前處理請(qǐng)求的當(dāng)前線程就不會(huì)釋放,不會(huì)亂掉的。
? ? ? 還有一個(gè)處理辦法,將動(dòng)態(tài)表名放到request對(duì)象中也可以,然后再?gòu)膔equest中取。
2020-06-04
+1~