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

Spring框架中集成myBatis框架

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

Spring框架中集成myBatis框架

文章目录

使用步骤

1.新建maven项目2.加入maven的依赖3.创建实体类4.创建dao接口和mapper文件5.创建mybatis主配置文件6.创建Service接口和实现类,属性是dao。7.创建spring的配置文件:声明mybatis的对象交给spring创建8.创建测试类,获取Service对象,通过service调用dao完成数据库的访问

使用步骤 1.新建maven项目




2.加入maven的依赖

1)spring依赖
2)mybatis依赖
3)mysql驱动
4)spring的事务的依赖
5)mybatis和spring集成的依赖: mybatis官方体用的,用来在spring项目中创建mybatis 的SqlSesissonFactory,dao对象的

  
    
    
      junit
      junit
      4.11
      test
    
    
    
      org.springframework
      spring-context
      5.2.5.RELEASE
    
    
    
      org.springframework
      spring-tx
      5.2.5.RELEASE
    
    
      org.springframework
      spring-jdbc
      5.2.5.RELEASE
    
    
    
      org.mybatis
      mybatis
      3.5.1
    
    
    
      org.mybatis
      mybatis-spring
      1.3.1
    
    
    
      mysql
      mysql-connector-java
      5.1.9
    
    
    
      com.alibaba
      druid
      1.1.12
    
  

加入插件

  
    
    
      
        src/main/java
        
          ***.xml
        
        false
      
    
    
    
      
        maven-compiler-plugin
        3.1
        
          1.8
          1.8
        
      
    
  

完整的maven配置文件:




  4.0.0

  com.bjpowernode
  ch07-spring-mybatis
  1.0-SNAPSHOT


  
    UTF-8
    1.8
    1.8
  

  
    
    
      junit
      junit
      4.11
      test
    
    
    
      org.springframework
      spring-context
      5.2.5.RELEASE
    
    
    
      org.springframework
      spring-tx
      5.2.5.RELEASE
    
    
      org.springframework
      spring-jdbc
      5.2.5.RELEASE
    
    
    
      org.mybatis
      mybatis
      3.5.1
    
    
    
      org.mybatis
      mybatis-spring
      1.3.1
    
    
    
      mysql
      mysql-connector-java
      5.1.9
    
    
    
      com.alibaba
      druid
      1.1.12
    
  

  
    
    
      
        src/main/java
        
          ***.xml
        
        false
      
    
    
    
      
        maven-compiler-plugin
        3.1
        
          1.8
          1.8
        
      
    
  


3.创建实体类

用来存储数据库表中一行的数据

package com.changsha.domain;

public class Student {
    private Integer id;
    private String name;
    private Integer age;
    private String email;

    public Student() {
    }

    public Student(Integer id, String name, Integer age, String email) {
        this.id = id;
        this.name = name;
        this.age = age;
        this.email = email;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public Integer getId() {
        return id;
    }

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

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }

    @Override
    public String toString() {
        return "Student{" +
                "id=" + id +
                ", name='" + name + ''' +
                ", age=" + age +
                ", email='" + email + ''' +
                '}';
    }
}

4.创建dao接口和mapper文件

dao接口,定义对数据库的操作

package com.changsha.dao;

import com.changsha.domain.Student;

import java.util.List;

public interface StudentDao {
    int insertStudent(Student student);
    List selectStudents();

}

mapper配置文件(需要和dao接口同名且在同一目录之下)






    
        insert into student value (#{id}, #{name}, #{age})
    


    


5.创建mybatis主配置文件

因为使用别的连接池,所以数据库信息不用指定在这个文件中





    
    
        
        
    

    
    
        
        
    


    
    
        
        
    


6.创建Service接口和实现类,属性是dao。

一般不会直接调用dao对象,而是创建服务类来调用dao对象的方法

接口

package com.changsha.service;

import com.changsha.domain.Student;

import java.util.List;

public interface StudentService {
    int addStudent(Student student);
    List queryStudents();

}

对应实现类

package com.changsha.service.Impl;

import com.changsha.dao.StudentDao;
import com.changsha.domain.Student;
import com.changsha.service.StudentService;

import java.util.List;

public class StudentServiceImpl implements StudentService {

    private StudentDao studentDao;

    public void setStudentDao(StudentDao studentDao) {
        this.studentDao = studentDao;
    }

    @Override
    public int addStudent(Student student) {
        int nums = studentDao.insertStudent(student);
        return nums;
    }

    @Override
    public List queryStudents() {
        return studentDao.selectStudents();
    }
}

7.创建spring的配置文件:声明mybatis的对象交给spring创建

1)数据源DataSource
2)SqlSessionFactory
3) Dao对象
4)声明自定义的service


创建数据库信息properties文件

jdbc.url =  jdbc:mysql://localhost:3306/study
jdbc.password = 123456
jdbc.username = root
jdbc.maxActive =  20

创建spring配置文件





    
    

    
    
        
        
        
        
        
    



    
    
        
        
        
        

    



    
    
        
        
        
        
    



    
    
        
    


8.创建测试类,获取Service对象,通过service调用dao完成数据库的访问
package com.changsha;

import com.changsha.domain.Student;
import com.changsha.service.StudentService;
import org.apache.ibatis.annotations.Param;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import java.util.List;

public class MyTest {
    @Test
    public void test(){
        String config = "ApplicationContext.xml";
        ApplicationContext applicationContext = new ClassPathXmlApplicationContext(config);
        StudentService studentService = (StudentService)applicationContext.getBean("studentService");
        //插入信息
        studentService.addStudent(new Student(2,"zhao","zhao@",22));
        //显示信息
        List students = studentService.queryStudents();
        students.forEach(stu -> System.out.println(stu));
    }
}

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

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

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