mybatis plugins_Spring整合Mybatis基础入门

Spring集成myBatis,其本质工作就是将使用mybatis框架时用到的一些需要自己创建的对象,交由Spring统一管理。主要有以下对象:数据源DataSource:就是保存数据库连接信息的对象,采用阿里的Druid,更加高效。SqlSessionFactory:生成sqlSession对象的。

MapperScannerConfigurer:Dao接口的实现类对象。

Service层对象:解耦。

学习下面这个例子就基本理解Spring整合Mybatis的使用流程。

准备工作:

数据库

c664ae81a71732af27b8ac6cdad127c1.png

导入依赖

<dependencies>               <dependency>            <groupId>junitgroupId>            <artifactId>junitartifactId>            <version>4.11version>            <scope>testscope>        dependency>                <dependency>            <groupId>org.springframeworkgroupId>            <artifactId>spring-contextartifactId>            <version>5.2.5.RELEASEversion>        dependency>                <dependency>        <groupId>org.springframeworkgroupId>            <artifactId>spring-txartifactId>            <version>5.2.5.RELEASEversion>        dependency>        <dependency>            <groupId>org.springframeworkgroupId>            <artifactId>spring-jdbcartifactId>            <version>5.2.5.RELEASEversion>        dependency>                <dependency>            <groupId>org.mybatisgroupId>            <artifactId>mybatisartifactId>            <version>3.5.1version>        dependency>                <dependency>            <groupId>org.mybatisgroupId>            <artifactId>mybatis-springartifactId>            <version>1.3.1version>        dependency>                <dependency>            <groupId>mysqlgroupId>            <artifactId>mysql-connector-javaartifactId>            <version>5.1.9version>        dependency>                <dependency>            <groupId>com.alibabagroupId>            <artifactId>druidartifactId>            <version>1.1.12version>        dependency>    dependencies>

资源插件

<build>        <resources>            <resource>                <directory>src/main/javadirectory>                <includes>                    <include>**/*.propertiesinclude>                    <include>**/*.xmlinclude>                includes>                <filtering>falsefiltering>            resource>        resources>        <plugins>            <plugin>                <artifactId>maven-compiler-pluginartifactId>                <version>3.1version>                <configuration>                    <source>1.8source>                    <target>1.8target>                configuration>            plugin>        plugins>    build>

1.创建Student实体类

public class Student {    private int id;    private String name;    private String email;    private int age;    //省略方法}

2.创建StudentDao接口和StudentDao.xml映射文件

public interface StudentDao {    int insertStudent(Student student);    ListselectStudent();}
<?xml version="1.0" encoding="UTF-8" ?>/span>        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"        "http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper namespace="com.zhu.dao.StudentDao">    <insert id="insertStudent">        insert into Student values (#{id},#{name},#{email},#{age})    insert>    <select id="selectStudent" resultType="com.zhu.pojo.Student">        select * from Student order by id desc    select>mapper>

3.创建Service接口和实现类

public interface StudentService {    int addStudent(Student student);    ListqueryStudent();}
public class StudentServiceImpl implements StudentService {    private StudentDao studentDao;    public StudentDao getStudentDao() {        return studentDao;    }    public void setStudentDao(StudentDao studentDao) {        this.studentDao = studentDao;    }    @Override    public int addStudent(Student student) {        int nums = studentDao.insertStudent(student);        return nums;    }    @Override    public ListqueryStudent() {        List students = studentDao.selectStudent();        return students;    }}

4.创建mybatis主配置文件mybatis.xml

<?xml version="1.0" encoding="UTF-8" ?>/span>        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"        "http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration>    <settings>        <setting name="logImpl" value="STDOUT_LOGGING"/>    settings>        <typeAliases>                <package name="com.zhu">package>    typeAliases>    <mappers>        <package name="com.zhu.dao"/>    mappers>configuration>

5.创建Spring主配置文件applicationContext.xml

1)声明数据源DataSource对象2)声明SqlSessionFactoryBean,创建SqlSessionFactory对象3)声明MyBatis的扫描器,创建Dao接口的实现类对象4)声明自定义的Service ,把3)中的Dao对象注入赋值给Service的属性

<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"       xmlns:context="http://www.springframework.org/schema/context"       xmlns:aop="http://www.springframework.org/schema/aop"       xsi:schemaLocation="http://www.springframework.org/schema/beans       http://www.springframework.org/schema/beans/spring-beans.xsd       http://www.springframework.org/schema/context       http://www.springframework.org/schema/context/spring-context.xsd       http://www.springframework.org/schema/aop       https://www.springframework.org/schema/aop/spring-aop.xsd">    <bean id="myDataSource" class="com.alibaba.druid.pool.DruidDataSource"      init-method="init" destroy-method="close">        <property name="url" value="jdbc:mysql://localhost:3306/jdbcstudy?useSSL=false&useUnicode=true&characterEncoding=UTF-8">property>        <property name="username" value="root">property>        <property name="password" value="root">property>        <property name="maxActive" value="20">property>    bean>        <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">                <property name="dataSource" ref="myDataSource">property>                <property name="configLocation" value="classpath:mybatis.xml">property>    bean>    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">        <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory">property>        <property name="basePackage" value="com.zhu.dao">property>    bean>        <bean id="studentService" class="com.zhu.service.impl.StudentServiceImpl">        <property name="studentDao" ref="studentDao">property>    bean>beans>

测试

@Test    public void test3(){        String config="applicationContext.xml";        ApplicationContext context = new ClassPathXmlApplicationContext(config);        StudentService service = (StudentService) context.getBean("studentService");        Student student1=new Student();        student1.setId(1004);        student1.setName("大刀");        student1.setEmail("dadaowangwu@qq.com");        student1.setAge(29);        int i = service.addStudent(student1);        System.out.println(i);    }
@Test    public void test4(){        String config="applicationContext.xml";        ApplicationContext context = new ClassPathXmlApplicationContext(config);        StudentService service = (StudentService) context.getBean("studentService");        List students = service.queryStudent();        for (Student student : students) {            System.out.println(student);        }}

f83728011fecfcd81b4b6236f8adfeb8.png

通过以上例子简单认识了一下Spring整合Mybatis,更加复杂的需要自己勤加练习。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值