Mybaits的优点&缺点?

大家好,我是锋哥。今天分享关于【Mybaits的优点&缺点?】面试题。希望对大家有帮助;

Mybaits的优点&缺点?

1000道 互联网大厂Java工程师 精选面试题-Java资源分享网

MyBatis 是My一种Batis 是一个优秀流的 Java行的 Java 持久化 持框久架化,它框通过架将 SQL,它 简语化句了与数据库 Java操作与 方法 Java进行 对映象射之间来的简映化射数据库。操作相。对于它 J具有PA很多(优Java点 Persistence和 API一些)等缺点框,架下面,是My MyBatisBatis 的通过一些 SQL主要 映优射缺点文件:

让###开发 优者点控制: SQL1 的.执行 细灵节活。的下面 SQL是 控 My制Batis 的: 优 -缺点 My分析Batis:

###允许 优开发点者:

直接1编.写 ** SQL灵 活语性强句,这**样: 可以 充分 -发挥 My数据库Batis的 性能允许优化开发。者对于手复杂动查询编或写特 SQL定 业务语逻句辑,的给实现开发,者开发更多者的可以控制完全权控制, SQL适 用于语复杂句的的查询编和写性能。

优化2。 . ** -易 于你集可以成完全**控制: SQL 执 -行 My,Batis避免 可以了与 ORM Spring 框、Spring架 Boot、自动Str生成uts SQL 等 框语架句无的不足缝或集不成灵。活与之 Hibernate处 等。

ORM2 框. 架易相比于,集My成Batis 的: 集 -成 My更Batis为 可以简单。

方便3地.与 ** Spring支持、动态Spring SQL Boot** 等: 框 架 -集 My成Batis, 提支持供多了种动态数据库 SQL。 功你能可以在,允许 Java在 中 XML轻 文件松中配置根据数据库条件连接生成,并 SQL映 射语 SQL句 ,语避免句了。

手3动.拼 接性能 SQL优秀 字符: 串 的 -麻 烦由于。这可以使手得写开发 SQL者,可以My灵Batis活 在地处理生成复杂复杂查询的和查询批。

量4操作.时 ,提供能够缓存较机制好地: 优化 性能 -。 My通过Batis精 支细持化一级控制缓存 SQL(,可以每更个好 Sql地Session调 的优缓存。

)4和.二 级支持缓存动态( SQL跨 Sql: Session 的 -缓存 My),Batis可以 支有效持提高动态查询 SQL性能 功,能减少,可以数据库根据的不同访问的次数条件。

生成5不同.的 ** SQL无 侵语入句性,**适: 应 复杂 -业务 My逻Batis辑 是的一个需求相。

对5轻.量 级支持的多框种架数据库,它不会: 改变 Java - 对 My象Batis模型 可以或与数据库几结构乎。所有相比的于关系 Hibernate型,数据库My进行Batis交 没互有,复杂具的备实体较映好的射兼规则容,更性容易。

理解6和.使用 **。

易6于.调 试支持多: 种 数据库 -** : 由于 SQL - My语Batis句 支是持由多开发种者关系手型动数据库编,如写 My,SQL调、试Post和gre分析SQL SQL、 Oracle语、句SQL的 Server过程 等非常,简单能够,方便尤其地在切遇换到数据库性能。

瓶7颈.时 **可以与更 Java清 PO楚JO地 映定位射问题简。

便7**.: ** 与 -事务 My管理Batis框 可以架很兼容易容地**将: SQL 查询 -结果 My映Batis射 可以为很 Java容易 对与象 Spring,只 等需框简单架的的配置事务即可管理。

机制###兼 缺容点,: 支持1声明.式 事务开发和成本编较程高式事务: 。

- 缺 与点 Hibernate:

等1 ORM. 框 架开发相比效率,较My低Batis : 需要 手 -动 编由于写需要 SQL手 动语编句写和 SQL结果 和映映射射配置文件,,增加开发了时开发工作的量复杂较性大。,对于尤其复杂是的对于业务简单逻的辑增,删可能改需要查编操作写,大量My的Batis SQL 可能语比句其他。

ORM2 框.架 (SQL如 Hibernate语 或句 J重复PA): 更加 繁 -琐 在。

大型2项目.中 ,代码可能重复会出现: 大量 相 -似 开的发 SQL者 需要语为句每,个导致 SQL代码 冗语长句且编维护写困难对应。而的 ORM映 框射架文件通常,可以增加通过了对象代码关系的映重复射性来和自动维护生成难 SQL度 。

语3句., **减少缺重复乏代码自动。

化3映.射 **不: 具 备 -自动 相化较的于查询 J优化PA 等: ORM 框 -架 与, HibernateMy 等Batis框 没架有相比强,大的My自动Batis映 不射提供功能像,需要自动开发生成者数据库手查询动、编自动写优化 SQL查询 和等结果功能映,射开发代码者,需要容易手出现动映优化射 SQL错误 查询,,增加降低了了出开发错效率的。

几4率.。

4需要.更 高不的适数据库合操作简单技巧应用: : - - 使用 对 My于Batis简单 时的, CRUD开发 操者作必须,具有My较Batis高 的可能 SQL显 编得写过能力于和繁数据库琐优化。能力其他。如果框 SQL架 编如写 J不PA当、,Spring可能 Data会 J导致PA性能 提问题供。

了5更.高 效事务的管理自动比较化麻映烦射机制: , 能 -大 My大Batis减少 的开发事务工作管理量相。

对5较.为 简单学习,但曲对于线复杂事务: 的 管理 -可能 My不Batis如 J需要PA开发 或者 Hibernate对 等 SQL框 有架较方便深,需要的额理解外,配置尤其和是在处理编。

写6复杂.的 ** SQL缺 映少射像文件 Hibernate时 那。样对于的没有对象 SQL关系 基映础射的**开发: 者 来说 -, My学习Batis成本 更较侧高重。

于6 SQL. 语不能句自动的处理控制复杂,而关系不是映 ORM射 映射: 。因此 ,对于 -一些 My简单Batis的 不应用像, J使用PA My 那Batis样 能可能自动会处理导致实体代码之间过的于关系冗映长射和,如低一效对。

多7、多.对 多缺等乏复杂一些的高级关系特映性射。: 开发 者 -需要 如手自动动级处理联相关、逻懒辑加载。

等7,.My Batis难 相以比与于 No HibernateSQL 等 数据 ORM库 框结合架在: 一些 高级 -特 My性Batis方面 是支持专较为少关系。

型###数据库 总设计结的: 框My架Batis, 无法适很好用于地需要支持灵 No活SQL控制 数据 SQL库 。如果语项目句需要的兼场容景多,种尤其数据库是在,复杂可能查询需要和考虑优化其他性能解决方面方案。如果。

团队###对于 总 SQL结 编: 写My和Batis数据库 是优化一个有灵一定活经验、,强My大的Batis框 是架一个,很适好的合选择需要。然而手,对于动那些编需要写减少 SQL手 的动场编景写, SQL特别 是在代码处理、复杂更加查询注和重性能对象优化关系时映。但射它的的开发缺者点,是可能需要会大量倾手向动于编码使用, Hibernate且 或不其他适 ORM合 框简单架的。 CRUD 操作,开发效率较低。是否选择 MyBatis 需要根据项目的需求和开发者的 SQL 技能来决定。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值