当前位置: 首页 > 后端技术 > Java

官宣!Mybatis-Plus官方神器发布!!!

时间:2023-04-01 18:17:53 Java

浠婂ぉ鎺ㄨ崘涓€娆綧yBatis-Plus瀹樻柟鍙戝竷鐨勭鍣細mybatis-mate銆俶ybatis-mate鏄疢ybatis-Plus浼佷笟绾фā鍧楋紝鏀寔鍒嗗簱鍒嗚〃銆佹暟鎹璁°€佹暟鎹晱鎰熻瘝杩囨护锛圓C绠楁硶锛夈€佸瓧娈靛姞瀵嗐€佸瓧鍏稿洖鍐欙紙鏁版嵁缁戝畾锛夈€佹暟鎹潈闄愩€佷互鍙婅〃缁撴瀯鑷姩鐢熸垚SQL缁存姢绛夛紝鏃ㄥ湪鏇存晱鎹蜂紭闆呭湴澶勭悊鏁版嵁銆備絾鏄紝闇€瑕佹敞鎰忕殑鏄紝杩欎簺鍔熻兘鐩墠闇€瑕佽喘涔拌鍙紝涓嶈兘鍏嶈垂浣跨敤銆備笅闈㈡垜灏嗙畝瑕佷粙缁嶈繖浜涢珮绾у姛鑳戒互鍙婂浣曚娇鐢ㄥ畠浠€備娇鐢⊿pringBoot寮曞叆鑷姩渚濊禆娉ㄨВ鍖咃細com.baomidoumybatis-mate-starter1.0.8娉ㄨВ锛堝疄浣撳垎鍖呬娇鐢級锛?dependency>com.baomidoumybatis-mate-annotation1.0.8涓昏鍔熻兘浠嬬粛瀛楁鏁忔劅鏁版嵁鏁忔劅璇嶈繃婊ゅ瓧娈靛姞瑙e瘑鏁版嵁瀹¤锛堝璐︼級鍒嗗簱鍒嗗簱锛屽姩鎬佹暟鎹簮锛岃鍐欏垎绂伙紝鑷姩鍒囨崲鏁版嵁搴撳仴搴锋鏌ャ€傚瓧鍏哥粦瀹氳〃缁撴瀯鍔ㄦ€佺淮鎶ゆ暟鎹寖鍥达紙鏁版嵁鏉冮檺锛夊瓧娈佃劚鏁忔晱鎰熻鍒欏睘鎬х被鍨嬪繀椤绘寚瀹氶粯璁ゅ€艰鏄巘ypeStringis""鑴辨晱绫诲瀷鏁版嵁鏁忔劅璇嶈繃婊ゐ煈塵ybatis-mate-sensitive-words(opensnewwindow)[2]鏁版嵁鏁忔劅璇嶈繃婊わ紙AC绠楁硶锛夐厤缃鐞嗗櫒鍚庯紝妗嗘灦鑷姩澶勭悊璇锋眰鐨勬墍鏈夊瓧绗︿覆鐨勬晱鎰熻瘝杩囨护锛屾敮鎸佸叧閿瓧宓屽锛岃鏁忔劅璇嶆棤澶勯亖褰€傛暟鎹簱鑷淮鎶ゆ晱鎰熻瘝搴擄紙鑷敱鍙帶锛夛紝榛樿鍔犺浇缂撳瓨鏍癸紝鏀寔鎸囧畾閲嶆柊鍔犺浇璇嶅簱銆傚瓧娈靛姞瑙e瘑馃憠mybatis-mate-encrypt(opensnewwindow)[3]娉ㄨВ@FieldEncrypt鍙互瀹炵幇瀛楁鐨勫姞瑙e瘑锛屾敮鎸丮D5\_32銆丮D5\_16銆丄ES銆丷SA绛夌畻娉曘€傚睘鎬х被鍨嬪繀椤绘寚瀹氶粯璁ゅ€艰鏄巔asswordString鍚?"鍔犲瘑瀵嗙爜algorithmAlgorithm鍚BEWithMD5AndDESPBEMD5DES娣峰悎绠楁硶encryptorClass鍚Encryptor鍔犲瘑澶勭悊鍣ˊFieldEncryptprivateStringemail;AlgorithmAlgorithm:绠楁硶鎻忚堪MD5\_3232浣峬d5绠楁硶MD5\_1616浣峬d5绠楁硶BASE6464瀛楃琛ㄧず浠绘剰浜岃繘鍒舵暟鎹畻娉旳ESAES瀵圭О绠楁硶RSA闈炲绉板姞瀵嗙畻娉昐M2鍥藉瘑SM2闈炲绉板姞瀵嗙畻娉曪紝鍩轰簬ECCSM3鍥藉瘑SM3鎶ユ枃鎽樿绠楁硶锛屽彲浠ョ敤MD5鍋氬姣斾簡瑙M4鍥藉瘑SM4瀵圭О鍔犲瘑绠楁硶锛屾棤绾垮眬鍩熺綉鏍囧噯鍒嗙粍鏁版嵁绠楁硶PBEWithMD5AndDES娣峰悎绠楁硶PBEWithMD5AndTripleDES娣峰悎绠楁硶PBEWithHMACSHA512AndAES\_256娣峰悎绠楁硶PBEWithSHA1AndDESede娣峰悎绠楁硶PBEWithSHA1AndRC2\_40娣峰悎绠楁硶缁撴灉閮芥槸瀵嗘枃銆係M4绠楁硶蹇呴』渚濊禆bouncycastle鍔犲瘑搴擄紝娣峰悎绠楁硶蹇呴』渚濊禆jasypt鍔犲瘑搴撱€傘€愭敞鎰忋€戞煡璇㈣繑鍥炵殑鍔犲瘑瀵硅薄蹇呴』鍖呭惈鍔犲瘑鐨勬敞瑙d俊鎭€傜畝鍗曞湴杩斿洖涓€涓猄tring鎴栦竴涓狶ist闆嗗悎鏄棤娉曡В瀵嗙殑銆傛暟鎹璁★紙瀵硅处锛夝煈塵ybatis-mate-audit(opensnewwindow)[5]鏁版嵁瀹¤鍔熻兘鍙互甯姪鎴戜滑姣旇緝涓や釜瀵硅薄鐨勫睘鎬у樊寮傦紝渚嬪锛氶摱琛屽璐︺€傚鏁版嵁婧愬垎搴撳垎琛紙璇诲啓鍒嗙锛夝煈塵ybatis-mate-sharding(opensnewwindow)[6]娉ㄨВ@Sharding灞炴€х被鍨嬪繀椤绘寚瀹氫竴涓粯璁ゅ€艰鏄巚alueString涓?"鍒嗗簱缁勫悕,绌轰娇鐢ㄩ粯璁や富鏁版嵁SourcestrategyClassNoRandomShardingStrategy鍒嗗簱&鍒嗚〃绛栫暐閰嶇疆mybatis-mate:sharding:health:true#鍋ュ悍妫€娴媝rimary:mysql#榛樿鏁版嵁婧愰€夋嫨datasource:mysql:#鏁版嵁搴撶粍-key:node1c...luster-lukey:...:slave#璐熻矗浠庡簱璇诲啓鏃剁殑sql鏌ヨ鎿嶄綔锛屼富搴搈aster榛樿涓嶈兘鍐?..postgres:-key:node1#鏁版嵁鑺傜偣...娉ㄦ剰Sharding鍒囨崲鏁版嵁婧愶紝缁勫唴鑺傜偣榛樿闅忔満閫夋嫨锛堟煡鐪婼lavewriter锛堾Mapper@Sharding("mysql")publicinterfaceUserMapperextendsBaseMapper{@Sharding("postgres")LongselectByUsername(Stringusername);}鍒囨崲鍒版寚瀹氭暟鎹簱鑺傜偣//鍒囨崲鍒癿ysql浠庤妭鐐筺ode2鑺傜偣ShardingKey.change("mysqlnode2");杩樻湁鏁版嵁鑼冨洿锛堟暟鎹潈闄愶級銆佽〃缁撴瀯鑷姩缁存姢銆佸瓧娈垫暟鎹粦瀹氾紙瀛楀吀鍥炲啓锛夌瓑瀹炵敤鐨勯珮绾х壒鎬э紝杩欓噷涓嶅啀璇︾粏浠嬬粛銆傛劅鍏磋叮鐨勬湅鍙嬪彲浠ュ幓瀹樻柟鏂囨。锛堜腑鏂囨枃妗o紝鍐欑殑寰堣缁嗭級锛歨ttps://baomidou.com/guide/my...銆傜患涓婃墍杩帮紝杩欎簺鏂扮壒鎬х‘瀹炴瘮杈冨疄鐢紝鍙互涓烘垜浠紑鍙戜紒涓氱骇椤圭洰鑺傜渷涓嶅皯绮惧姏銆傚鏋滀綘鏈塵ybatis-mate鍦ㄤ紒涓氫腑鐨勪娇鐢ㄥ満鏅紝涓嶅Θ鏀寔涓€涓嬨€傛洿澶歮ybatis-mate鐨勪娇鐢ㄧず渚嬪弬瑙侊細https://gitee.com/baomidou/my...