mybaits学习之基础理解
来源:互联网 发布:linux下php的好处 编辑:程序博客网 时间:2024/04/29 11:30
传统JDBC数据库的五部曲
- 使用JDBC编程需要连接数据库,注册驱动和数据库信息
- 操作Connection,打开Statement对象
- 通过Statement执行SQL,返回结果到ResultSet对象
- 使用ResultSet读取对象,然后通过代码转换为具体的POJO对象
关闭数据库的相关资源
但是传统的JDBC的缺点1是工作量相对大,先是连接,然后处理JDBC底层的事物,处理数据类型,Connection对象,Statement对象和ResultSet对象,在拿到数据,然后关闭它们,缺点2是需要对JDBC中所产生的异常进行捕捉并正确的处理资源,对于一个简单的SQL都如此的复杂,何更复杂的应用呢。
Hibernate的缺点:- 全表映射带来的不便,比如更新时需要发送的所有的代码
- 无法根据不同的条件组装不同的
- 对多表关联和复杂的SQL查询支持比较差,需要自己写SQL,还要将自己的返回数据组装为POJO
- 不能有效的支持存储过程
- HQL的性能较差
Mybatis的基本构成
SqlSessionFactoryBuilder(构造器):根据配置信息或者代码生成
sqlSessionFactory(工厂接口),作用:就是生产SqlSessionFactory对象,生命周期只存在于方法的内部。
SqlSessionFactory:依靠工厂来生成SqlSession(会话),SqlSession相当于JDBC里面的Connection对象,每次访问数据库都会创建SqlSession,所以SqlSessionFactory存在于整个Mybatis应用生命中。单例模式创建,每一个数据库只对应一个SqlSessionFactory,避免了更多的Connection被消耗。
SqlSession:是一个既可以发送SQL去执行并返回结果,也可以获取mapper的接口。相当于JDBC的一个Connection对象,生命周期在请求数据库处理事务的整个过程中。
Sql Mapper :它是Mybatis新设计并返回结果,它是由一个java接口和XML文件(或者注解)构成的,需要给出对应的SQL和映射规则,它负责发送SQL去执行,并返回结果。
传递参数
使用@Param注解传递多个参数,当n<=5时,为最好的传参方式,当n>5时,javabean时最好的传参方式。
阅读全文
0 0
- mybaits学习之基础理解
- mybaits 基础
- Mybaits 基础
- mybaits一些基础应用
- Mybaits学习之(一)ORM的概念及简单测试
- 关于mybaits学习资料
- mybaits学习总结
- Mybaits学习笔记(一)
- 第一天学习mybaits
- mybaits之动态sql
- Mybaits之逆向工程
- mybaits学习笔记(一)
- SpringBoot 学习记录(二): mybaits
- MyBaits
- MyBaits
- Mybaits
- Mybaits
- mybaits
- 你可能不知道,你登曾是个气喘小胖子,靠努力逆袭完成梦想
- 云服务器一二
- 安卓中的几种进程
- Caused by: com.ibm.websphere.ce.cm.ConnectionWaitTimeoutException: CWTE_NORMAL_J2CA1009
- android 圆角控件
- mybaits学习之基础理解
- 阿里10年分布式技术沉淀:阿里高可用体系核心缔造者、全链路压测创始人告诉你!
- PHP读取Excel表格内容,并且将其转换成数组
- ASP.NET Session的七点认识_知识库_博客园
- LeapMotion Demo3
- 哈希表的一些基本操作
- 在MFC中定义全局变量
- hibernate总结
- 解决-Dmaven.multiModuleProjectDirectory system property is not set. Check $M2_HOM