orm选型,为什么选择mybatis?

 

1、JDBC

Class.forName("com.mysql.jdbc.Driver");
Connection conn = (Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/demo", "root", "123456");
PreparedStatement pstmt = (PreparedStatement) conn.prepareStatement(sql);
pstmt.setString(1, "");
pstmt.executeUpdate();
pstmt.close();
conn.close();

传统的JDBC做一次数据库操作,需要4个操作,类加载、获取连接、执行sql、关闭连接。 它的工作量大,业务和技术混合在一起,并且需要手动关闭连接。对于使用者来说,它非常不友好。

2、什么是ORM模型?

 orm英文意思是对象关系映射 Object-relation-mapper,简单理解就是将数据库表与java实体对象做一个映射。

 orm的优点:符合面向对象编程;技术与业务解耦,开发时不需要关注数据库的连接与释放;

 常用的orm模型有:hibernate和mybatis,互联网公司一般都使用mybatis。

 hibernate的缺点:全表映射;无法自定义组装sql;对复杂sql的支持弱,对sql调优不友好;不支持存储过程;性能差。

 hibernate的优点:适合小型系统,开发快。

3、mybatis的优缺点

  优点:基于底层sql,sql优化方便;容易学习,高度灵活;

  缺点:代码量大【可利用MGB —— mybatis代码生成器】

4、mybatis的三要素

  mapper.xml、dao接口、entity实体类。

5、mybatis一次连接

  SqlSessionFactoryBuilder:读取配置信息创建SqlSessionFactory,它的生命周期仅仅限于创建。

  SqlSessionFactory:它用来创建Sqlsession。它的生命周期是整个应用,在应用启动时创建,应用停止时消亡。

  Sqlsession:一次sql会话,可以直接发送sql执行,也可以调用dao与mapper映射的sql语句执行,它是线程不安全的,必须保证线程独享。

6、mybatis的配置方式

  基于xml:即编写mapperXml文件。

  基于注解:即利用@Select @Insert @update 等等。 这种方式基本上不使用。它有很多缺点:编写负责,主要是字符串拼接麻烦,不易于编写负责sql语句;如果业务变动,代码调整幅度太大,即不易于扩展,伸缩性差。

 

转载于:https://www.cnblogs.com/greys/p/10811839.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值