SpringBoot 集成 ORM 框架

在使用 SpringBoot 操作数据库时一般都要使用 ORM 框架,目前主流的 ORM 框架有 MyBatis、MyBatis-plus、Jpa 等。

集成 MyBatis 框架

本例中演示如何通过 SpringBoot 集成 MyBatis 框架,更加详细的 MyBatis 技术可以参照----MyBatis 入门到精通系列教程。

引入依赖

<dependency>
    <groupId>com.github.pagehelper</groupId>
    <artifactId>pagehelper-spring-boot-starter</artifactId>
    <version>1.4.2</version>
</dependency>
<dependency>
    <groupId>org.mybatis.spring.boot</groupId>
    <artifactId>mybatis-spring-boot-starter</artifactId>
    <version>2.2.2</version>
</dependency>
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>druid-spring-boot-starter</artifactId>
    <version>1.2.9</version>
</dependency>
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <scope>runtime</scope>
</dependency>
<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <optional>true</optional>
</dependency>

配置选项

server:
  port: 8082
spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/guanwei?serverTimezone=Asia/Shanghai&useSSL=false&allowPublicKeyRetrieval=true
    username: root
    password: guanwei
    type: com.alibaba.druid.pool.DruidDataSource
  application:
    name: guanwei
mybatis:
  config-location: classpath:/config.xml
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
  mapper-locations: classpath:mapper/*.xml

书写代码

没有什么特别需要注意的情况,和过去学习 MyBatis 的写法一致。对于 CRUD 有兴趣的童鞋可以参考 --- MyBatis 入门到精通(三)

集成 MyBatis-plus 框架

MyBatis-Plus (opens new window)(简称 MP)是一个 MyBatis (opens new window)的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 官方网址

 1. 只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑。
 2. 只需简单配置,即可快速进行 CRUD 操作,从而节省大量时间。
 3. 热加载、代码生成、分页、性能分析等功能一应俱全。

引入依赖

<dependency>
   <groupId>com.baomidou</groupId>
   <artifactId>mybatis-plus-boot-starter</artifactId>
   <!--截止目前版本是3.5.2-->
   <version>最新版本</version>
</dependency>

配置选项

和 MyBatis 配置一样,如需要引入其他会单独说明。 

环境搭建

在 bean、mapper 和 service 中有不同于 MyBatis 的搭建方式。

bean

@Data
public class Emp implements Serializable {
    private Integer empNo; 
    private String ename;
    private String job;
    private Integer mgr;
    private String hireDate;
    private Double sal;
    private Double comm;
    private Integer deptNo;
    private Integer empState;
}

mapper

@Mapper
public interface EmpMapper extends BaseMapper<Emp>{
}

service

接口

public interface EmpService extends IService<Emp>{

    List<Emp> findAllEmp();
}

实现类

@Service
public class EmpServiceImpl extends ServiceImpl<EmpMapper,Emp> implements EmpService {
}

完成后,就可以通过测试类进行测试。 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值