likes
comments
collection
share

JAVA入门 - SpringBoot+mybatis 实现一个接口

作者站长头像
站长
· 阅读数 16

本文仅作为 JAVA入门 通过 SpringBoot+mybatis 实现第一个接口 的记录

1、环境搭建

环境搭建相关非本文重点,不做具体叙述

  1. 安装JAVA环境
  2. 安装MySQL并运行
  3. 下载IntelliJ IDEA
  4. 配置maven
  • 下载maven
  • 编辑 conf/settings.xml配置maven本地仓库路径
  • IntelliJ IDEA 中设置 maven 相关路径

2、新建项目

  • 选择Spring Initializr,选择对应的Java版本

JAVA入门 - SpringBoot+mybatis 实现一个接口

  • 添加依赖,此步也可以跳过,在pom.xml文件中添加 JAVA入门 - SpringBoot+mybatis 实现一个接口
  • pom.xml文件中 添加依赖 在pom.xml文件,dependencies中,添加依赖(上一步添加的依赖也在这里)
<dependency>
    <groupId>org.mybatis.spring.boot</groupId>
    <artifactId>mybatis-spring-boot-starter</artifactId>
    <version>2.2.0</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>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>

3、创建数据库数据

关于数据库与数据表的相关操作,非本文重点,本文以t_user 数据表为例,数据如下 JAVA入门 - SpringBoot+mybatis 实现一个接口

4、CODE

创建如下文件

application.yml文件是更改的文件后缀

JAVA入门 - SpringBoot+mybatis 实现一个接口

配置database和mybatis

  • application.yml中配置数据库和mybatis
server:
  prot:8080
spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://127.0.0.1:3306/smart_feeder?useUnicode=true&characterEncoding=UTF-8
    username: root
    password: Test1234

mybatis:
  mapper-locations: classpath:mapper/*.xml
  type-aliases-package: com.orangeal.demo.entity
  configuration:
    map-underscore-to-camel-case: true 
  • 启动类DemoApplication中使用@MapperScan @MapperScan可以扫描对应目录下的所有mapper
@MapperScan("com.orangeal.demo.mapper")
@SpringBootApplication
public class DemoApplication {
    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}

entity

TUserInfo中 加上所需字段

@Data
public class TUserInfo {
    Long id;
    String name;
    String email;
}

mapper

  • TUserMapper定义接口
public interface TUserMapper {
    List<TUserInfo> getUserList();
}
  • TUserMapper.xml中实现接口 namespace对应具体mapper接口,id对应方法名 resultType 对应返回类型
<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="com.orangeal.demo.mapper.TUserMapper">
    <select id="getUserList" resultType="com.orangeal.demo.entity.TUserInfo">
        select id,email,name from t_user
    </select>
</mapper>

service

  • TUserService中定义接口
public interface TUserService {
    List<TUserInfo> getUserList();
}
  • TUserServceImpl 实现接口
@Service
public class TUserServceImpl implements TUserService {

    @Resource
    private TUserMapper mapper;

    @Override
    public List<TUserInfo> getUserList() {
        return mapper.getUserList();
    }
}

controller

TUserController中 定义接口地址以及请求方式,最后调用service实现

@RestController
@RequestMapping("/api/userList")
public class TUserController {

    @Autowired
    private TUserService service;

    @GetMapping
    public List<TUserInfo> getUserList() {
        return service.getUserList();
    }
}

调试

启动项目之后,通过Postman 或者浏览器 调试 JAVA入门 - SpringBoot+mybatis 实现一个接口