Mybatis的查询实现(使用HTTP CLIENT测试是否查询成功)

现在我们要使用IDEA自带的HTTP CLIENT查询数据库中的User表,我们从controller层开始向下写(你可以尝试从Dao层看到Controller层,或者反着来)

Controller层 —— 将Service层实现好的操作提供给用户使用  (客户开始点菜)

Service层 —— Dao层操作的具体实现                                    (大厨开始做菜)

Dao层 —— 以简洁明了的方式告诉你,我能执行哪些操作    (查询做这道菜的菜谱)

下面就先说明java文件夹需要有哪些操作,再说resources文件夹需要有哪些操作


目录

 一、java文件夹

1、新建实体类

2、Controller层的UserController.java

3、第二步:Service层的UserService.java

4、第三步:Dao层的UserMapper

5、在启动类添加@MapperScan

二、resources文件夹

1、pom.xml文件

2、编写配置文件application.properties (1)

3、接口映射文件.xml文件

4、编写配置文件application.properties (2)

三、使用HTTP CLIENT测试


 一、java文件夹

1、新建实体类

获取到数据库数据以后,我们创建一个类来存放数据库数据,类中的属性是和数据库的字段一一对应的,这个User类我们放在 entity目录下

 不要忘记写get方法(用于查数据库数据)和 set方法 (用于改数据库数据)

2、Controller层的UserController.java

第一步就是controller层新建一个UserController文件,Controller层接收到请求以后,就会找Servic层要数据,所以我们下面第二步就是新建一个Service层的文件

@RestController           //等价于@ResponseBody + @Controller
public class UserController {

    @Resource
    private UserService userService;   //Service层的类(第二步的内容,用于实现业务逻辑)

    @GetMapping("/user")
    public List<User> list(){
        return userService.list();
    }
}

3、第二步:Service层的UserService.java

下面就开始实现上面突然莫名的 UserService,这个时候Service层就会在Dao层寻找是否存在对应的操作

@Service        //告诉项目,这个类属于Service层
public class UserService {
    @Resource
    private UserMapper userMapper;    //这个属于第三步的内容,Dao层的接口函数(持久层,和数据库打交道)

    public List<User> list(){
        return userMapper.list();    
    }
}

4、第三步:Dao层的UserMapper

这是一个接口函数,只是列举出可以有哪些操作,具体实现在其他地方

public interface UserMapper{
    public List<User> list();
}

5、在启动类添加@MapperScan

为了让项目知道,java文件下有个Dao层的UserMapper接口,我们使用MapperScan,只不过接口函数我们统一放在mapper文件下

二、resources文件夹

1、pom.xml文件

下面就要正式开始使用Mybatis来连接数据库了,所以我们需要引入Mybatis的依赖,以及数据库连接依赖

<!-- Mybatis-->
<dependency>
	<groupId>org.mybatis.spring.boot</groupId>
	<artifactId>mybatis-spring-boot-starter</artifactId>
	<version>2.1.3</version>
</dependency>

<!-- 数据库连接	-->
<dependency>
	<groupId>mysql</groupId>
	<artifactId>mysql-connector-java</artifactId>
	<scope>runtime</scope>
</dependency>

2、编写配置文件application.properties (1)

既然要连接数据库,那就需要让项目知道 你要连接数据库里的哪个表,数据库的主人是谁,密码是多少

spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

spring.datasource.url=jdbc:mysql://localhost:3306/库名?\
  useUnicode=true&characterEncoding=UTF8&zeroDateTimeBehavior=convertToNull&\
  autoReconnect=true&allowMultiQueries=true&rewriteBatchedStatements=true

spring.datasource.username=用户名

spring.datasource.password=密码

3、接口映射文件.xml文件

上面的接口UserMapper只是告诉你有哪些操作是可行的,至于操作的实现,并没有提及,所以我们需要在xml文件中对接口函数进行实现

我们新建一个mapper目录,在这个目录下新建一个UserMapper.xml文件夹,来对应上面的UserMapper接口

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<!--namespace = 包名 + 接口名(mapper文件下的接口)-->
<mapper namespace="com.example.demo.mapper.UserMapper">
    <!--id——接口类函数名-->
    <!--parameterType——接口类形参类型-->
    <!--resultType——接口类函数返回值-->
    <select id="list" resultType="com.example.demo.entity.User">
       select * from user
    </select>
</mapper>

4、编写配置文件application.properties (2)

和上面的java文件一样,那里是在启动类里告诉项目mapper文件是Dao层的,那resources文件也需要告诉项目哪个是Dao层的,这样的话,项目就可以把接口和xml文件建立起映射关系

mybatis.mapper-locations=classpath:mapper/**/*.xml

这个的意思是resources下的mapper文件夹,无论xml文件还是文件夹含xml文件,都会被扫描到

三、使用HTTP CLIENT测试

在项目的根目录下新建一个http文件夹,里面文件的后缀必须是 .http

项目的端口号这里设置的是9090,像下面这样输入就可以开始测试了(需要先启动springboot工程)

如果你的数据库里没有内容,那打印的就是一个 [ ],如果有内容,大致样式就像下面这样

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值