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

Java学习笔记

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

Java学习笔记

mybatis笔记(一): mybatis简介

MyBatis 简介

MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis,是一个基于Java的持久层框架。

持久层: 可以将业务数据存储到磁盘,具备长期存储能力,只要磁盘不损坏,在断电或者其他情况下,重新开启系统仍然可以读取到这些数据。
优点: 可以使用巨大的磁盘空间存储相当量的数据,并且很廉价
缺点:慢(相对于内存而言)

为什么使用 MyBatis

在我们传统的 JDBC 中,我们除了需要自己提供 SQL 外,还必须操作 Connection、Statment、ResultSet,不仅如此,为了访问不同的表,不同字段的数据,我们需要些很多雷同模板化的代码,闲的繁琐又枯燥。

而我们在使用了 MyBatis 之后,只需要提供 SQL 语句就好了,其余的诸如:建立连接、操作 Statment、ResultSet,处理 JDBC 相关异常等等都可以交给 MyBatis 去处理,我们的关注点于是可以就此集中在 SQL 语句上,关注在增删改查这些操作层面上。

并且 MyBatis 支持使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。

mybatis的实现 1.新建maven项目 2.porm文件中导入依赖

    
    
        org.mybatis
        mybatis
        3.5.4
    
    
    
        junit
        junit
        4.12
    
    
    
        mysql
        mysql-connector-java
        8.0.23
    
    
        org.projectlombok
        lombok
        1.18.16
	

3.mybatis-config.xml文件 在mybatis-config.xml中配置数据库连接



        
        
  		 
            
		   
            
			
				
                
                
                
                
                
                
                
            
        
    
在mybatis-config.xml中配置mapper的映射文件

    
    
    
        
    
***Mapper.xml文件



    
                select * from user
    

4.新增跟数据库对应的pojo实体类
public class User {
    private Integer id;
    private String name;
    private Integer age;
    private String gender;
5.新增测试类
import org.junit.Before;
import org.junit.Test;

import java.io.IOException;
import java.io.InputStream;
import java.util.List;

public class MybatisTest {
		InputStream inputStream;
    SqlSession sqlSession;
    Mapper mapper;//接口对象
 @Before
    public void init() throws IOException {
    //1)驱动mybatis核心配置文件
        InputStream resourceAsStream = Resources.getResourceAsStream("mybatis-config.xml");
        //2)创建SqlSessionFactoryBuilder构造者设计模式
        //3) 通过加载资源文件输入流,获取SqlSessionFactory接口工厂
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(resourceAsStream);
        //4)创建执行对象
        sqlSession = sqlSessionFactory.openSession();//手动提交
        //5)获取接口代理对象
        mapper = sqlSession.getMapper(***Mapper.class);

	}
	//测试查询全部
	@Test
	   public void findAll() {
        List list = mapper.selectAll();
        if (list != null) {
            for (User user : list) {
                System.out.println(user.getId() + "t" + user.getName() + "tt" + user.getAge() + "tt" + user.getGender());
            }
        }

    }
     @After
    public void after() throws Exception {
    	//增删改,提交事务
      	sqlSession.commit();
     //执行对象释放
       sqlSession.close();
       inputStream.close();
    }
}
mybatis三种实现方式
1.xml方式
2.注解方式
3.xml+接口方式
mybatis的参数传递:
1.单个参数:占位符#{任意字母}
2.对象传参:占位符#{与对象的属性名一致}
3.零散传参:使用map集合Map  其中Map的key(String)与占位符(#{任意字符})中的字符一致。
标准日志输出:

	

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

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

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