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

Mybatis实战(一)Mybatis介绍及整体架构

时间:2023-04-01 18:06:31 Java

鐑埍瀛︿範锛岀儹鐖辩敓娲伙紒馃槃娌夋穩銆佸垎浜€佹垚闀匡紝璁╀綘鍜屼粬浜烘湁鎵€鏀惰幏锛侌煒?.Mybatis绠€浠婱yBatis瀹樻柟鏂囨。Mybatis鏄竴涓寔涔呭眰妗嗘灦锛屾棬鍦ㄥ府鍔╁紑鍙戣€呭睆钄藉簳灞傞噸澶嶇殑JDBC浠g爜锛屾敮鎸侀€氳繃閰嶇疆鏂囦欢鎴栨敞瑙e皢ResultSet鏄犲皠鍒癑ava瀵硅薄銆備笌鍏朵粬ORM妗嗘灦鐩告瘮锛孧ybatis鏇村姞杞婚噺绾э紝鏀寔鑷畾涔塖QL鍜屽姩鎬丼QL锛屼究浜庢煡璇㈡€ц兘鐨勪紭鍖栵紝鍖呭惈浜嗚壇濂界殑缂撳瓨鏈哄埗銆?銆丮ybatis鐨勬暣浣撶粨鏋凪ybatis鐨勬暣浣撶粨鏋勫涓嬶細鎺ュ彛灞係qlSession鎺ュ彛灞傚畾涔変簡鏆撮湶缁欏簲鐢ㄧ▼搴忚皟鐢ㄧ殑API銆傚綋鏀跺埌涓€涓姹傛椂锛屾帴鍙e眰浼氳皟鐢ㄦ牳蹇冨鐞嗗眰鐨勭浉鍏虫ā鍧楁潵瀹屾垚鍏蜂綋鐨勬暟鎹簱鎿嶄綔銆傛牳蹇冨鐞嗗眰閰嶇疆鍒嗘瀽锛歁ybatis鍦ㄥ垵濮嬪寲鐨勬椂鍊欎細鍔犺浇Mapper鎺ュ彛鐨勯厤缃枃浠躲€佹槧灏勬枃浠躲€佹敞瑙d俊鎭€傝В鏋愬畬鎴愬悗锛屼細浠ュ璞$殑褰㈠紡淇濆瓨鍦–onfiguration瀵硅薄涓€係QL瑙f瀽鍜岃剼鏈ā鍧楋細Mybatis閫氳繃閰嶇疆鏀寔鍔ㄦ€丼QL锛屽嵆鏍规嵁涓嶅悓鐨勫弬鏁扮敓鎴怱QL銆係QL鎵ц鍜岀粨鏋滈泦鏄犲皠锛欵xecutor璐熻矗缁存姢缂撳瓨鍜屼簨鍔$鐞嗭紝灏嗘暟鎹簱鎿嶄綔濮旀墭缁橲tatementHandler銆侾armaterHandler璐熻矗瀹屾垚SQL璇彞鐨勫疄闄呭弬鏁扮粦瀹氾紝閫氳繃Statement瀵硅薄鎵цSQL銆傛渶鍚庨€氳繃ResultSet杩斿洖缁撴灉锛岀敱ResultSetHandler杩涜澶勭悊銆傛槧灏勫埌Java瀵硅薄銆傛彃浠讹細鏀寔寮€鍙戣€呴€氳繃鎻掍欢鎺ュ彛瀵筂ybatis杩涜鎵╁睍銆傚熀纭€鏀拺灞傛暟鎹簮妯″潡锛氭彁渚涙暟鎹簮瀹炵幇锛屽彲闆嗘垚绗笁鏂规暟鎹簮妯″潡銆備簨鍔$鐞嗘ā鍧楋細鍙笌Spring闆嗘垚绠$悊浜嬬墿銆傜紦瀛樻ā鍧楋細鎻愪緵涓€绾х紦瀛樺拰浜岀骇缂撳瓨锛屽湪缂撳瓨灞傛嫤鎴儴鍒嗚姹傦紝鍒嗘媴鏁版嵁搴撳帇鍔涳紝鎻愬崌鎬ц兘銆傜粦瀹氭ā鍧楋細鍦ㄨ皟鐢⊿qlSession鐨勭浉搴旀柟娉曡繘琛屾暟鎹簱鎿嶄綔鏃讹紝闇€瑕佸湪鏄犲皠鏂囦欢涓寚瀹歋QL鑺傜偣銆侻ybatis閫氳繃Binding妯″潡灏嗚嚜瀹氫箟鐨凪apper鎺ュ彛涓庢槧灏勬枃浠剁浉鍏宠仈锛岄伩鍏嶆嫾鍐欑瓑杩愯鏃舵湭鍙戠幇鐨勯敊璇€傚弽灏勬ā鍧楋細鎻愪緵灏佽鐨勫弽灏凙PI锛屾柟渚夸笂灞傝皟鐢ㄣ€傜被鍨嬭浆鎹細鎻愪緵绠€鍖栭厤缃枃浠剁殑鍒悕鏈哄埗锛屽疄鐜癑ava绫诲瀷鍜孞DBC绫诲瀷鐨勮浆鎹€傛棩蹇楁ā鍧楋細鍙互闆嗘垚鍚勭绗笁鏂规棩蹇楁鏋躲€傝祫婧愬姞杞芥ā鍧楋細灏佽绫诲姞杞藉櫒锛屾彁渚涚被鍔犺浇鏂囦欢鍜屽叾浠栬祫婧愭枃浠剁殑鍔熻兘銆侾arser妯″潡锛氬皝瑁匵Path锛屾彁渚汳abatis鍒濆鍖栨椂瑙f瀽閰嶇疆鏂囦欢鍜屾槧灏勬枃浠剁殑鏀寔锛屾彁渚涘姩鎬丼QL璇彞涓鐞嗗崰浣嶇鐨勬敮鎸併€備笁銆丮ybatis鎵ц娴佺▼Mybatis鎵ц娴佺▼濡備笅锛?/p>