zoukankan      html  css  js  c++  java
  • 整合springboot和mybatis

    整合MyBatis

    1. 引入依赖

        <dependency>
          <groupId>org.mybatis.spring.boot</groupId>
          <artifactId>mybatis-spring-boot-starter</artifactId>
          <version>2.1.2</version>
        </dependency>
    

    2.配置数据源

    使用druid数据源则参照文章

    3.注解版:

    @Mapper  //如果在主程序入口上加@MapperScan(value="mapper所在包")  可以批量扫描,不需要每个接口都加@mapper
    public interface DepartmentMappers {
    
        @Select("select * from department where id=#{id}")
        public Department getDeptById(Integer id);
    
        @Delete("delete from department where id =#{id}")
        public int deleteDeptById(Integer id);
    
        //插入时,@Options注解可以将自增主键封装进去
        //useGeneratedKeys=true;   keyProperty="id" 封装对象哪个属性存放主键
    }
    
    @RestController
    public class DeptController {
    
        @Autowired
        DepartmentMappers departmentMappers;
    
        @GetMapping("/dept/{id}")
        public Department getDepartment(@PathVariable("id") Integer id ){
            return departmentMappers.getDeptById(id);
        }
    }
    

    使用自定义的方式配置Mybatis的规则

    开启驼峰命名法的映射规则:

    @Configuration
    public class MybatisConfig {
        @Bean
        public ConfigurationCustomizer configurationCustomizer(){
            return new ConfigurationCustomizer() {
                @Override
                public void customize(org.apache.ibatis.session.Configuration configuration) {
                    configuration.setMapUnderscoreToCamelCase(true);
                }
            }
        }
    }
    

    4.配置文件版

    首先要在接口加入@Mapper

    指定全局配置和sql映射文件的位置

    mybatis:
      config-location: classpath:mybatis/mybatis-config.xml
      mapper-locations: classpath:mybatis/mapper/*.xml
    

    配置完之后使用的方式和之前的一模一样

  • 相关阅读:
    SPA架构的优点和缺点以及一些思考
    我们为什么要尝试前后端分离
    HTTP协议详解
    前后端分离 与 不分离
    描述一下 cookies,sessionStorage 和 localStorage 的区别
    Express中间件的意思 next()的方法
    Java笔记1Java相关概念和如何实现跨平台
    去掉EditPlus自动备份bak文件
    Java配置环境变量
    Java初学者入门应该掌握的30个概念
  • 原文地址:https://www.cnblogs.com/JIATCODE/p/13170018.html
Copyright © 2011-2022 走看看