使用Mybatis的好处

mybatis是为了简化jdbc而开发的框架,目的是为了让开发人员只关注于sql的编写,对于jdbc的其它步骤可以交给框架自动完成。

首先回忆下jdbc连接mysql的过程:

    public static void main(String[] args) {

        try {
            Class.forName("com.mysql.cj.jdbc.Driver");
            Connection connection = DriverManager.getConnection("jdbc:mysql://localhost/learn", "root", "123456");
            PreparedStatement statement = connection.prepareStatement("select * from demo");
            ResultSet res = statement.executeQuery();
            while (res.next()) {
                int id = res.getInt("id");
                String name = res.getString("name");
            }

        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (SQLException e) {
            e.printStackTrace();
        }

    }

原生的jdbc我们可以看到有两个问题:
1、有和业务无关的重复代码。每次的连接操作并不是我们想要的,至少可以通过一个方法将这些和业务无关的代码封装起来,重复使用,我们也并不是很关心连接的建立和关闭
2、结果集的解析。通过jdbc查询出来的结果为ResultSet对象,这个对象看起来并不完美,至少还要去解析对象属性才能得到想要的结果。

这时候mybatis的优势就出现了,使用mybatis,我们不需要自己去实现连接的建立和关闭,查询出来的结果直接就是表对象的映射。

mybatis核心思想

动态***模式是mybatis的主要实现方式。通过***模式,我们只需要写好sql语句,mybatis通过***将jdbc需要的其它步骤***实现,而且返回的结果集为我们指定的pojo类对象。
效果类似于下图:


image.png
全部评论

相关推荐

字节 飞书绩效团队 (n+2) * 15 + 1k * 12 + 1w
点赞 评论 收藏
分享
10-14 23:01
已编辑
中国地质大学(武汉) Java
CUG芝士圈:虽然是网上的项目,但最好还是包装一下,然后现在大部分公司都在忙校招,十月底、十一月初会好找一些。最后,boss才沟通100家,别焦虑,我去年暑假找第一段实习的时候沟通了500➕才有面试,校友加油
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务