mybatis面试相关

什么是 mybatis:

答:mybatis是一个持久层的 orm 框架,它支持普通sql,存储过程 ,是一个先进的orm映射框架,mybatis几乎消除了所有的jdbc代码,能够手工设置参数和回收结果,mybatis能够使用 xml 和 annotation的形式传递参数,把数据库表记录映射到 java 实体对象上。


jdbc和 mybatis相比有哪些优点:

答:mybatis实现了sql代码和 java 代码的解耦合,它将 sql代码统一配置到 xml 文件当中,方便管理,而jdbc则需要 使用 preparedStatement进行结果的查询。

mybatis支持一对一、一对多的复杂映射关联查询,比jdbc封装效率要高。


mybatis中的 # 和  $ 有什么区别?

#{} 这样传递参数是带有类型的参数进行传递的工作,可以放置 sql 注入漏洞 攻击,即有点相当于 jdbc 查询数据库的 preparedStatement ,会对代码进行预编译。

而 ${} 这个 传递参数是直接把string字符串传递过来,没有设置类型,都把它当成string传递,防止不了sql注入漏洞。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值