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

初始Spring(终)之整合MyBaits

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

初始Spring(终)之整合MyBaits

目录

12,整合MyBatis

12.1,回忆MyBaits

12.2,Mybati整合

13,声明式事务

1.回顾事务

2.Spring中事务的管理


12,整合MyBatis

步骤:

1.导入相关的jar包

  • junit
  • mybatis
  • mysql数据库
  • spring相关的
  • aop织入
  • mybatis-spring【new】

相关依赖:

    
        
        
            junit
            junit
            4.13.2
            test
        
        
        
            mysql
            mysql-connector-java
            8.0.28
        
        
        
            org.mybatis
            mybatis
            3.5.9
        
        
        
            org.springframework
            spring-webmvc
            5.3.19
        
        
        
            org.springframework
            spring-jdbc
            5.3.18
        
        
        
            org.aspectj
            aspectjweaver
            1.9.9.1
        

        
        
            org.mybatis
            mybatis-spring
            2.0.7
        
    

2.编写配置文件 

3.测试

12.1,回忆MyBaits

1.编写实体类

2.编写核心配置文件

3.编写接口

4.编写Mapper.xml

5.测试

12.2,Mybati整合

1.编写Mapper实现类:

package com.xiao.Mapper;

import com.xiao.domain.User;
import org.mybatis.spring.SqlSessionTemplate;

import java.util.List;

public class UserMapperImpl implements UserMapper {
    private SqlSessionTemplate sqlSessionTemplate;

    public void setSqlSessionTemplate(SqlSessionTemplate sqlSessionTemplate) {
        this.sqlSessionTemplate = sqlSessionTemplate;
    }

    @Override
    public List getUserList() {
        UserMapper mapper = sqlSessionTemplate.getMapper(UserMapper.class);
        return mapper.getUserList();
    }
}

2.编写配置文件:




    
    
        
        
        
        
    

    
    
        
        
        
        
        
    

    
    
        
        
    

    
    
        
    




3.测试:

import com.xiao.Mapper.UserMapper;
import org.junit.Test;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import java.io.IOException;

public class Test01 {

    @Test
    public void test01() throws IOException {
        ClassPathXmlApplicationContext classPathXmlApplicationContext = new ClassPathXmlApplicationContext("spring-dao.xml");
        UserMapper userMapper1 = classPathXmlApplicationContext.getBean("userMapper", UserMapper.class);
        System.out.println(userMapper1.getUserList());
    }
}

第二种整合方式:

package com.xiao.Mapper;

import com.xiao.domain.User;
import org.mybatis.spring.support.SqlSessionDaoSupport;

import java.util.List;

public class UserMapperImpl02 extends SqlSessionDaoSupport implements UserMapper {


    @Override
    public List getUserList() {
        UserMapper mapper = getSqlSession().getMapper(UserMapper.class);
        return mapper.getUserList();
    }
}

直接继承:SqlSessionDaoSupport类该类中包含了SqlSessionTemplate 可以起到简化代码的作用!

13,声明式事务

1.回顾事务
  • 要把一组业务当成一个业务来做么一起成功要么一起失败!
  • 事务在项目开发中十分重要,设计到数据一致性的问题,不容马虎!
  • 确保完整性和一致性

事务的ACID原则:

  • 原子性
  • 一致性
  • 隔离性
    • 多个业务操作同一个资源防止数据损坏
  • 持久性
    • 事务一旦提交,无论系统发生什么问题,结果都不会在被影响,被持久化写到存储器中!

2.Spring中事务的管理
  • 声明式事务:AOP
  • 编程式事务:需要在代码中进行事务管理

思考:

为什么需要事务?

  •  如果不设置事务可能有数据库提交不一致的情况
  • 如果我们不在Spring中去配置声明事务,我们就需要在代码中手动去配置事务!
  • 事务在项目开发中十分重要,涉及数据的一致性和完整性,不容马虎!



    
    
        
        
        
        
    

    
    
        
        
        
        
        
    

    
    
        
        
    

    
    
        
    

    
    
    
        
        
            
            
            
            
        
    


    
    
        
        
    



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

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

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