栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

MyBatis快速应用小demo

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

MyBatis快速应用小demo

一、概述:
MyBatis是一个基于ORM的半自动的持久层框架,支持定制SQL、存储过程及高级映射。
优点:避免了JDBC大部分的代码编写、手动设置参数和获取结果集;可以简单使用XML或注解来配置和映射原生类型、接口和java的POJO;半自动化,核心Sql可以自己优化,sql和java代码分离,功能明确。
注:ORM——对象/关系数据库映射,框架实现的效果:把对持久化对象的保存、修改、删除等操作,转换为对数据库的操作。
二、快速开发demo
1、搭建环境,引入MyBatis依赖


    
    
        org.mybatis
        mybatis
        3.4.5
    
    
    
        mysql
        mysql-connector-java
        5.1.6
        runtime
    

2、编写实体类

public class User {

    private Integer id;

    private String userName;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", userName='" + userName + ''' +
                '}';
    }
}

3、创建映射配置文件




    
        select * from user
    

4、创建核心配置文件



     
        
            
            
                
                
                
                
            
        
    

    
        
    

5、编写测试类

@Test
public void selectAllUsers() throws IOException {
    InputStream resourceAsStream = Resources.getResourceAsStream("SqlMapConfig.xml");
    SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(resourceAsStream);
    SqlSession sqlSession = sqlSessionFactory.openSession();
    List userList = sqlSession.selectList("user.findAll");
    for (User user: userList ) {
        System.out.println(user);
    }
}

三、核心配置文件解释
1、层级关系



    
    
    
    
    
    
    
    
    
    
    
    
    
         
            
            
        
    
    
    
    
    

2、常用配置
(1)environments: 数据库环境配置,支持多环境配置

transactionManager :事物管理器,有两种类型—JDBC、MANAGED

JDBC:使用JDBC提交和回滚设置,依赖于从数据源得到的连接来管理事物作用域;MANAGED:从来不提交和回滚一个连接,让容器来管理事物的整个生命周期,默认情况下会关闭连接,不需要默认关闭时需要将“closeConnection”属性设置为false。
(2)dataSource :数据源,类型有三种—UNPOOLED、POOLED、JNDIUNPOOLED:不使用线程池,每次都要重新获取连接,关闭连接;POOLED:使用线程池,将JDBC对象组织起来;JNDI:这个数据源的实现是为了能在如 EJB 或应⽤服务器这类容器中使⽤,容器可以集中或在外部配置数据源,然后放置⼀个 JNDI 上下⽂的引⽤。
(3)mapper:加载映射,加载方式有4种:使⽤相对于类路径的资源引⽤,例如:


使⽤完全限定资源定位符(URL),例如:


使⽤映射器接⼝实现类的完全限定类名,例如:


将包内的映射器接⼝实现全部注册为映射器,例如:


(4)properties:加载外部的properties文件,例如将数据源的配置信息单独抽取到一个properties文件中:

(5)typeAliases:可以将java类型设置一个别名


上⾯是⾃定义的别名,mybatis框架已经为我们设置好的⼀些常⽤的类型的别名:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/755784.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号