通用Mapper的使用

Posted 撑起一片阳光

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了通用Mapper的使用相关的知识,希望对你有一定的参考价值。

一、环境搭建

     1. 先搭好spring和Mybatis的整合的环境

     2.导入Mapper的Maven依赖

 <dependency>
        <groupId>tk.mybatis</groupId>
        <artifactId>mapper</artifactId>
          <version>4.0.0-beta3</version>
      </dependency>

      3.修改spring配置文件

<!--整合通用Mapper所做的配置修改
      原始:org.mybatis.spring.mapper.MapperScannerConfigurer
      通用Mapper: tk.mybatis.spring.mapper.MapperScannerConfigurer
    -->
    <bean id="scannerConfigurer" class="tk.mybatis.spring.mapper.MapperScannerConfigurer">
 <!--扫描的dao的包的路径-->
        <property name="basePackage" value="com.li.dao"/>
    </bean>

二、AccountMapper的接口实现

      继承Mapper接口,泛型为实体类

public interface AccountMapper extends Mapper<Account> {

}

三、在Service中注入就可以使用其中方法

@Service
@Transactional
public class AccountServiceImpl {

    @Autowired
    private AccountMapper accountMapper;

    public Account getOne(Account account){
       return accountMapper.selectOne(account);
    }

}

四、测试

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = "classpath:applicationContext.xml")
public class TestSpring {
    @Autowired
    private AccountServiceImpl accountService;
    @Test
    public void test01(){
        Account account=new Account();
        account.setName("张三");
        Account one = accountService.getOne(account);
        System.out.println(one);
    }
}

注意:在创建实体类时,如果表名和表中属性名与数据库中不一致可使用注解:@table、@Column

/**
 * @Table :name:指定数据库中表的名称
 */
@Table(name = "account")
public class account{
   /**
   *  @Id: 主键
   *   @GeneratedValue(strategy = GenerationType.IDENTITY) :主键自增
   */
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
    
    @Column(name="cid")
    private Long cid;

    private String name;
    //此注解可以使改属性不映射到数据库表中
    @Transient
    private List<SpecParam> params;

 

以上是关于通用Mapper的使用的主要内容,如果未能解决你的问题,请参考以下文章

spring-boot | 整合通用Mabatis 分页插件PageHelper

GitChat活动:MyBatis 通用 Mapper 实现原理及相关内容

MyBatis 为什么需要通用 Mapper ?

免费下载全套最新008-2通用Mapper视频教程+教学资料+学习课件+源代码+软件开发工具

通用Mapper一

Eclipse 中的通用代码片段或模板