数据库持久化框架——MyBatis(1)

叨叨时刻:内容根据阿里云大学的MyBatis视频教程整理而成,有需要最好跟着视频教程走一遍

MyBatis 是支持定制化SQL、存储过程以及高级映射的优秀的持久层框架。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以对配置和原生Map使用简单的 XML 或注解,将接口和 Java 的 POJO(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。

其他说明:

(1)持久化:数据从瞬时状态变为持久状态,可以简单理解成和服务器端session一样的作用

(2)其他参考网站:w3cshool的Mybatis教程

搭建框架步骤:

1.下载MyBatis的类包:mybatis-x.x.x.jar (内含官方文档)

2.新建java项目并将核心包和依赖包(bin内的jar)、数据库驱动包导入

3.根据官方文档,新建配置xml文件,以官方文档(2.1.2 Building SqlSessionFactory from XML)为模板修改相关的数据库连接信息。例如:




    
    

    
    
        
            
            
                
                
                
                
            
        
    
//这里的mapper路径包名要以斜杆分,且这里的内容要以后面编写的mapper文件相对应
 
     
 

4.建立对应MyBatis工具类,参考官方文档内容(2.1.2 Building SqlSessionFactory from XML),例如:

public class MyBatisUtil {
  public static SqlSessionFactory getSqlSessionFactory() throws IOException {
    //注意:这里的recource内容请更改成自己的mybatis配置的xml名字,如果xml文件名字是aaaa.xml,以下内容也写成aaaa.xml
    String resource = "mybatis.config.xml";
    InputStream inputStream = Resources.getResourceAsStream(resource);
    SqlSessionFactory sqlSessionFactory =new SqlSessionFactoryBuilder().build(inputStream);
    //记得返回对象
    return sqlSessionFactory; 
  }
  public static SqlSession getSession() throws IOException {
    SqlSessionFactory sqlSessionFactory=getSqlSessionFactory();
    return sqlSessionFactory.openSession();
  }
}

5.建立实体类User

6.建立实体类sql语句的映射xml文件(最好与实体类处于同一目录下,显得更加清晰),参考官方文档(2.1.5 Exploring Mapped SQL Statements),例如:


  
  select * from users where id = #{id}
  

7.新建测试类,主方法里获取MyBatis的session赋值给User,调用该user的方法测试即可

public class test {
    public static void main(String[] args) throws IOException {
        SqlSession sqlSession= MyBatis.getSqlSession();
        //selectOne的第一个参数:mapper文件里namespace+select语句的id
        //第二个参数就是语句内的参数值
        User user=sqlSession.selectOne("com.lxy.entity.UserMapper.selectUser",1);
        System.out.println(user.getId()+","+user.getName()+","+user.getPwd());
    }
}

你可能感兴趣的:(数据库持久化框架——MyBatis(1))