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

MyBatis之【配置mybatis】

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

MyBatis之【配置mybatis】

一、传统步骤

1、添加框架的步骤

(1)添加依赖

(2)添加配置文件

1、新建库建表 2、新建maven项目,选quickstart模板 3、修改目录,添加缺失目录,修改目录属性 4、修改pom.xml文件,添加MyBatis的依赖,添加Mysql的依赖 5、修改pom.xml文件,添加资源文件指定

  src/main/java
  
    ***.properties
  



  src/main/resources
  
    ***.properties
  
6、在idea中添加数据库的可视化,选择Data source->MySql,输入数据用户名和密码。

7、添加jdbc.properties属性文件(数据库的配置)

8、添加SqlMapConfig.xml文件(MyBatis的核心配置文件)




    
    
    
    

        
        
            
            
            
            
                
                
                
                
                
            
        

        

        
    
9、创建实体类,用来封装数据

需要提供三个构造方法,一个无参,一个全参,一个不带主键的参数

10、添加完成学生表的增删改查的功能的StudentMapper.xml文件




    
    
        select id,name,email,age
        from student
    

    
    
        select id,name,email,age
        from student
        where name like '%${name}%'
    

    
    
        insert into student(name, email, age) values(#{name}, #{email}, #{age})
    
    
    
    
        delete from student where id = #{id}
    

    
    
        update student set age = 30 where name = #{name}
    
11、创建测试类,进行功能测试

(1)查询操作

@Test
    public void testA() throws IOException {
        // 使用文件流读取核心配置文件SqlMapConfig.xml
        InputStream in = Resources.getResourceAsStream("SqlMapConfig.xml");
        // 创建SqlSessionFactory工厂
        SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(in);
        // 取出SqlSession的对象
        SqlSession sqlSession = factory.openSession();
        // 完成查询操作
        List list = sqlSession.selectList("jht.getAll");
        list.forEach(student -> System.out.println(student));
        // 关闭SqlSession
        sqlSession.close();
    }

(2)增删改操作,基本类似

    @Test
    public void testInsert() throws IOException{
        // 读取核心配置文件
        InputStream in = Resources.getResourceAsStream("SqlMapConfig.xml");
        // 创建SqlSessionFactory对象
        SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(in);
        // 取出SqlSession对象
        SqlSession sqlSession = factory.openSession();
        // 插入
        int count = sqlSession.insert("jht.set", new Student("赵八", "123456@qq.com", 20));
        // 在所有增删改后必须手工提交事务,因为在SqlMapConfig中配置的是
        sqlSession.commit();
        // 关闭SqlSession
        sqlSession.close();
    }
二、步骤优化 1、添加@Before和@After注解

在Test程序中添加

(1)@Before
// 在所有@Test方法执行之前先执行的代码
@Before
public void openSqlSession() throws IOException {
    // 使用文件流读取核心配置文件SqlMapConfig.xml
    InputStream in = Resources.getResourceAsStream("SqlMapConfig.xml");
    // 创建SqlSessionFactory工厂
    SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(in);
    // 取出SqlSession的对象
    sqlSession = factory.openSession();
}
(2)@After
// 在所有@Test方法执行之后先执行的代码
@After
public void SessionClose(){
    // 关闭SqlSession
    sqlSession.close();
}
2、注册实体类的别名

在SqlMapConfig.xml中配置

(1)单个实体类别名注册

parameterType和resultType可以使用别名

    
        
        
    
(2)批量别名注册
    
        
        
    
3、设置日志输出

(1)在SqlMapConfig.xml中配置

    
    
        
    

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

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

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