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

mybatis配置及使用步骤

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

mybatis配置及使用步骤

    • 1.类型别名
    • 2.结果集映射ResultMap
    • 3.mybatis使用步骤

1.类型别名

注意:接口和它的Mapper配置文件最好同名,在同一包下


        

UserMapper.xml就可以直接用User了


     select * from mybatis_study.user where id= #{id};

2.结果集映射ResultMap

主要用于解决属性名与数据库表中字段不一致

实体类属性

表字段

运行结果

解决方法:

resultMap结果集映射

UserMapper.xml
.

3.mybatis使用步骤

1.导入mysql驱动和mybatis、lombok依赖


    
        mysql
        mysql-connector-java
        8.0.27
    
    
        org.mybatis
        mybatis
        3.5.7
    
    
        org.projectlombok
        lombok
        1.18.20
        provided
    

2.编写mybatis-config.xml配置文件





    
    
        
        
    
    
    
			
        
    
    
    
        
        
    
    
    
        
        
            
            
            
            
                
                
                
                
                
            
        
    
    
    
        
        
    

3.db.properties文件

driver=com.mysql.cj.jdbc.Driver
url=jdbc:mysql://localhost:3306/mybatis_study?serverTimezome=UTC
username=root
password=123456

4.工具类utils下的MybatisUtil.Java

public class MybatisUtil {
    private static SqlSessionFactory factory;
    static{
        try {
            //1.读取配置文件
            InputStream inputStream = Resources.getResourceAsStream("mybatis-config.xml");
            //2.创建SqlsessionFactory工厂
            factory = new SqlSessionFactoryBuilder().build(inputStream);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    public static SqlSession getSqlSession(){
      //3.使用工厂生产sqlsession对象
      return factory.openSession();
    }
}

5.pojo实体类User.java

@Data
public class User{
    private Integer id;
    private String name;
    private String sex;
    private String address;
}

6.对应Mapper接口

public interface UserMapper {
    //查询全部用户
    List findAll();
    //根据ID查找
    User getUserId(int id);
    //添加用户
    int addUser(User user);
    //更新用户
    int updateUser(User user);
    //删除用户
    int deleteUser(int id);
}

7.对应的Mapper.xml文件


    
    
    
        select * from mybatis_study.user where id= #{id};
    
    
    
        insert into user (id,username,sex,address) values (#{id},#{username},#{sex},#{address});
    
    
    
        update user set username=#{username},sex=#{sex},address=#{address} where id = #{id};
    
    
    
        delete from user where id = #{id}
    

8.测试类

//查询所有
    @Test
    public void TestList(){
        SqlSession session = MybatisUtil.getSqlSession();
        UserMapper userMapper = session.getMapper(UserMapper.class);
        List list = userMapper.findAll();
        for (User user : list) {
            System.out.println(user);
        }
        //释放资源
        session.close();
    }
    //根据ID查询
    @Test
    public void getUserId(){
        SqlSession session = MybatisUtil.getSqlSession();
        UserMapper mapper = session.getMapper(UserMapper.class);
        User userId = mapper.getUserId(41);
        System.out.println(userId);
        session.close();
    }
    //添加操作,增删改都需要提交事务
    @Test
    public void addUser(){
        SqlSession session = MybatisUtil.getSqlSession();
        UserMapper mapper = session.getMapper(UserMapper.class);
        mapper.addUser(new User(3, "小哈", "男", "新乡市"));
        //提交事务
        session.commit();
        session.close();
    }
    //更新操作
    @Test
    public void updateUser(){
        SqlSession session = MybatisUtil.getSqlSession();
        UserMapper mapper = session.getMapper(UserMapper.class);
        mapper.updateUser(new User(3,"小何","女","河南省"));
        //提交事务
        session.commit();
        session.close();
    }
    //删除操作
    @Test
    public void deleteUser(){
        SqlSession session = MybatisUtil.getSqlSession();
        UserMapper mapper = session.getMapper(UserMapper.class);
        mapper.deleteUser(3);
        session.commit();
        session.close();
    }
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/605595.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

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

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