首页 > 其他 > 详细

mybatis

时间:2020-10-02 23:11:49      阅读:59      评论:0      收藏:0      [点我收藏+]

目录:

 

1、mybatis的介绍

    * mybatis就是一个封装了jdbc的【持久层框架】,它和hibernate都属于ORM(Object Relational Mapping对象关系映射)框架,
      但是具体来说,hibernate是一个完全的orm框架,而mybatis是一个不完全的orm框架
    * Mybatis让程序员只关注sql本身,而不需要去关注连接的创建、statement的创建等操作。
    * Mybatis会将输入参数、输出结果进行映射。

 

2、分析jdbc的问题

  原生态的jdbc代码

技术分享图片
public static void main(String[] args) {
    Connection connection = null;
    PreparedStatement preparedStatement = null;
    ResultSet resultSet = null;
    
    try {
        //1、加载数据库驱动
        Class.forName("com.mysql.jdbc.Driver");
        //2、通过驱动管理类获取数据库连接
        connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/mybatis?characterEncoding=utf-8", "root", "root");
        //3、定义sql语句 ?表示占位符
        String sql = "select * from user where username = ?";
        //4、获取预处理statement
        preparedStatement = connection.prepareStatement(sql);
        //5、给sql语句中的?赋值;设置参数,第一个参数为sql语句中参数的序号(从1开始),第二个参数为设置的参数值
        preparedStatement.setString(1, "王五");
        //6、向数据库发出sql执行查询,查询出结果集
        resultSet = preparedStatement.executeQuery();
        //7、遍历结果集
        while(resultSet.next()){
            System.out.println(resultSet.getString("id")+"  "+resultSet.getString("username"));
        }
    } catch (Exception e) {
        e.printStackTrace();
    }finally{
        //8、释放资源
        if(resultSet!=null){
            try {
                resultSet.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        if(preparedStatement!=null){
            try {
                preparedStatement.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        if(connection!=null){
            try {
                connection.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
}
View Code

  问题总结
    1)在创建连接时,存在硬编码
          配置文件(全局配置文件)
          2)在执行statement时存在硬编码
          配置文件(映射文件)
          3)频繁的开启和关闭数据库连接,会造成数据库性能下降。
          数据库连接池(全局配置文件)

 

3、mybatis框架原理

技术分享图片

 

 

4、mybatis入门程序---环境搭建

 

 

 

 

 

 

 

 

 

 

 

 

 

 

---

mybatis

原文:https://www.cnblogs.com/xy-ouyang/p/13762548.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!