SpringBoot整合TKmybatis
引入依赖
<dependency>
<groupId>tk.mybatis</groupId>
<artifactId>mapper-spring-boot-starter</artifactId>
<version>2.0.3-beta1</version>
</dependency>
继承TkMybatis通用mapper
import cn.xxx.entity.CpProduct;
import tk.mybatis.mapper.common.Mapper;
/**
* Mapper层只写对数据操作的sql接口
*/
public interface CpProductMapper extends Mapper<CpProduct> {
}
编写业务service接口
import java.util.List;
/**
* service层只写业务的接口
*/
public interface CpProductService {
//写自己的业务service接口
}
实现业务service接口实现类
import cn.xxx.service.CpProductService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class CpProductServiceImpl implements CpProductService {
//这里注入上面继承TkMyBatis通用mapper就可以使用tkMyBatis提供的增删改查方法了比如cpProductMapper.select等等
@Autowired
private CpProductMapper cpProductMapper;
//实现上面的接口
}
实体类配置
import java.util.Date;
import javax.persistence.*;
//这个注解写数据库对应的表名
@Table(name = "cp_product")
public class CpProduct {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
//@Column注解用来标识实体类中属性与数据表中字段的对应关系,默认是驼峰转换,只要你的属性和数据库字段是对应的,是可以不写这个注解的
@Column(name = "name")
private String name;
启动类加上注解
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import tk.mybatis.spring.annotation.MapperScan;
@SpringBootApplication
//这里的路径写上面那个继承TkMyBatis通用mapper的包路径就可以了
@MapperScan(basePackages = {"cn.xxxx.mapper"})
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
启动就完事了