Mybits

前言

MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。

看完本章你将会知道

如何在springboot里面使用mybits进行表之间的操作

配置文件

pom



    4.0.0

    com.boot
    demo-mybits
    0.0.1-SNAPSHOT
    jar

    demo-mybits
    Demo project for Spring Boot

    
        org.springframework.boot
        spring-boot-starter-parent
        2.0.6.RELEASE
         
    

    
        UTF-8
        UTF-8
        1.8
    

    
        
            org.mybatis.spring.boot
            mybatis-spring-boot-starter
            1.3.2
        

        
            mysql
            mysql-connector-java
            runtime
        
        
            org.springframework.boot
            spring-boot-starter-test
            test
        
        
            org.projectlombok
            lombok
            1.16.16
        
    

    
        
            
                org.springframework.boot
                spring-boot-maven-plugin
            
        
    




application.yml

spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    username: root
    password: root
    url: jdbc:mysql://127.0.0.1:3306/boot?characterEncoding=utf-8&useSSL=false
mybatis:
  mapper-locations: classpath*:mapper/*.xml

项目架构图

Mybits_第1张图片
image.png

TabMybits

@Data
public class TabMybits {
    private Integer id;
    private String msg;
    private String remark;
}

TabMybitsRpository

public interface TabMybitsRpository {
    TabMybits save(TabMybits model);

    TabMybits delete(Integer id);

    TabMybits findById(Integer id);

    List findAll();

    @Select("select * from tab_mybits t where  t.msg = #{msg}")
    TabMybits findTabMybits(@Param("msg") String msg);
}

TabMybitsService

public interface TabMybitsService {
    /**
     * 新增or更新
     */
    TabMybits save(TabMybits model);


    /**
     * Load查询
     */
    TabMybits findById(Integer id);


    /**
     * 查询
     */
    List findAll();

    /**
     * sql注解查询
     */
    TabMybits findTabMybits(String msg);


    void delete(Integer id);
}

TabMybitsServiceImpl

@Service
public class TabMybitsServiceImpl implements TabMybitsService {
    @Autowired
    private TabMybitsRpository tabMybitsRpository;

    @Override
    public TabMybits save(TabMybits model) {
        return tabMybitsRpository.save(model);
    }

    @Override
    public TabMybits findById(Integer id) {
        return tabMybitsRpository.findById(id);
    }

    @Override
    public List findAll() {
        return tabMybitsRpository.findAll();
    }

    @Override
    public TabMybits findTabMybits(String msg) {
        return tabMybitsRpository.findTabMybits(msg);
    }

    @Override
    public void delete(Integer id) {
        tabMybitsRpository.delete(id);
    }
}

DemoMybitsApplication

@SpringBootApplication
@MapperScan(basePackages = {"com.boot.repository"})
public class DemoMybitsApplication {

    public static void main(String[] args) {
        SpringApplication.run(DemoMybitsApplication.class, args);
    }
}

TabMybitsMapper.xml




    
        
        
        
    

    
    
    
    
    


TabMybitsServiceTest

@Slf4j
@Component
public class TabMybitsServiceTest  extends DemoMybitsApplicationTests {


    
    @Autowired
    private TabMybitsService tabMybitsService;

    @Test
    public void save() {
        TabMybits model = new TabMybits();
        model.setMsg("firstJpa");
        model.setRemark(new Date().toString());
        TabMybits save = tabMybitsService.save(model);
        log.info("save:{}",save);
    }

    @Test
    public void delete() {
        tabMybitsService.delete(10);
    }

    @Test
    public void findById() {
        TabMybits mybits = tabMybitsService.findById(11);
        log.info("mybits:{}",mybits);
    }

    @Test
    public void findAll() {
        List all = tabMybitsService.findAll();
        log.info("all:{}",all);
    }

    @Test
    public void findTabMybits() {
        TabMybits ccc = tabMybitsService.findTabMybits("ccc");
        log.info("ccc:{}",ccc);

    }
}

DemoMybitsApplicationTests

@RunWith(SpringRunner.class)
@SpringBootTest
@MapperScan(basePackages = {"com.boot.repository"})
public class DemoMybitsApplicationTests {

    @Test
    public void contextLoads() {
    }

}

你可能感兴趣的:(Mybits)