MyBatis-plus的基本使用方法-Mapper直接继承BaseMapper

本文介绍了MyBatis-plus的基本使用方法,包括如何创建User实体对象,利用Lombok简化bean操作,以及让UserMapper继承BaseMapper以使用预定义的数据库操作方法。在实际测试中,演示了调用BaseMapper的selectList()方法。当结合Spring使用时,建议将MybatisSqlSessionFactory配置到applicationContext.xml,并扫描Mapper接口,以便在测试中通过依赖注入进行操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MyBatis-plus的基本使用方法

  1. 编写User实体对象:(这里使用依赖lombok进行了进化bean操作)
package cn.itcast.simple.pojo;

import com.baomidou.mybatisplus.annotation.TableName;
import com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.SplittableRandom;

@Data                    //生成get和set方法
@NoArgsConstructor       //生成无参构造
@AllArgsConstructor      //生成带参构造
@TableName("tb_user")    //指定tb_user表
public class User {
    private int id;
    private String username;
    private String password;
    private String name;
    private int age;
    private String email;
}

@Data //生成get和set方法
@NoArgsConstructor //生成无参构造
@AllArgsConstructor //生成带参构造
@TableName(“tb_user”) //指定tb_user表

  1. 将UserMapper继承BaseMapper,将拥有了BaseMapper中的所有方法
package cn.itcast.simple.mapper;

import cn.itcast.simple.pojo.User;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;

import java.util.List;

public interface UserMapper extends BaseMapper<User> {
}

接口UserMapper中不用定义方法。在测试中调用BaseMapper中定义的方法selectList()

@Test
public void testUserList() throws Exception{
	String resource = "mybatis-config.xml";
	InputStream inputStream = Resources.getResourceAsStream(resource);
	//这里使用的是MP中的MybatisSqlSessionFactoryBuilder
	SqlSessionFactory sqlSessionFactory = newMybatisSqlSessionFactoryBuilder().build(inputStream);
	SqlSession sqlSession = sqlSessionFactory.openSession();
	UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
	// 可以调用BaseMapper中定义的方法
	List<User> list = userMapper.selectList(null);
	for (User user : list) {
	System.out.println(user);
	}
}

改进:在引入了Spring后可以将MybatisSqlSessionFactory的引入放进applicationContext.xml中去,并且扫描mapper,测试时直接注入

   <!-- 定义数据源 -->
    <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" destroy-method="close">
        <property name="url" value="${jdbc.url}"/>
        <property name="username" value="${jdbc.username}"/>
        <property name="password" value="${jdbc.password}"/>
        <property name="driverClassName" value="${jdbc.driver}"/>
        <property name="maxActive" value="10"/>
        <property name="minIdle" value="5"/>
    </bean>
    
	<!--这里使用MP提供的sqlSessionFactory,完成了Spring与MP的整合-->
	<bean id="sqlSessionFactory" class="com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean">
	    <property name="dataSource" ref="dataSource"/>
	</bean>
	<!--扫描mapper接口,使用的依然是Mybatis原生的扫描器-->
	<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
	    <property name="basePackage" value="cn.itcast.simple.mapper"/>
	</bean>

测试:

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = "classpath:applicationContext.xml")
public class TestMybatisSpring {

    @Autowired
    private UserMapper userMapper;

    @Test
    public void testSelectList(){
        List<User> userList = userMapper.selectList(null);
        for (User user : userList) {
            System.out.println(user);
        }
    }
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值