MyBatis 读取MySQL 数据简单示例

目录

1.确定需求

2.新建项目及子模块

3.MySQL 数据库配置、添加数据

4.代码部分

1.新建合适的目录结构

2.各个部分的具体代码

HelloController.java

User.java

UserMapper.java(接口类)

UserService.java

UserMapper.xml

3.配置文件

5.运行效果


1.确定需求

        前端访问后端URL,显示后端从数据库读取的数据

        输入:前端访问URL为http://localhost:8080/hello     

        输出:前端显示后端从数据库读取的数据

2.新建项目及子模块

      

当子模块建立好后

启动新模块项目验证是否正常。最终由于DataSouce 未配置,预期结果应为启动失败

3.MySQL 数据库配置、添加数据

        1.创建数据库
        2.添加表
        3.添加标的字段
        4.添加数据

这个步骤太太太机械了,就简单讲一下建立表和添加数据。

建立users表

CREATE TABLE users (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(255),
    age INT,
    sex VARCHAR(10),
    create_time TIMESTAMP
);

向users表中插入数据

INSERT INTO users (name, age, sex, create_time)
VALUES ('John Doe', 30, 'Male', NOW());

INSERT INTO users (name, age, sex, create_time)
VALUES ('Jane Smith', 25, 'Female', NOW());

4.代码部分

1.新建合适的目录结构

        新建controller、service、mapper、domain 包     

        新建mapper 资源目录     

        新建controller、service、mapper、domain 对应的Java 文件     

        新建mapper 资源目录Java mapper 对应的XML 文件

建立完成后的目录结构为

2.各个部分的具体代码

HelloController.java
package com.example.mybatis.controller;

import com.example.mybatis.domain.User;
import com.example.mybatis.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

@RestController
public class HelloController {
    @Autowired
    private UserService userService;

    @GetMapping("/hello")
    public List<User> hello()
    {
        return userService.selectAllUser();
    }
}
User.java
package com.example.mybatis.domain;

public class User {
    public int id;
    private String name;
    private int age;
    public String sex;
    public String createTime;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    public String getCreateTime() {
        return createTime;
    }

    public void setCreateTime(String createTime) {
        this.createTime = createTime;
    }
}
UserMapper.java(接口类)
package com.example.mybatis.mapper;

import com.example.mybatis.domain.User;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;
@Mapper
public interface UserMapper {
    public List<User> selectAllUser();
}
UserService.java
package com.example.mybatis.service;

import com.example.mybatis.domain.User;
import com.example.mybatis.mapper.UserMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class UserService {
    @Autowired
    private UserMapper userMapper;

    public List<User> selectAllUser()
    {
        return userMapper.selectAllUser();
    }
}
UserMapper.xml
<?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">

<mapper namespace="com.example.mybatis.mapper.UserMapper">
    <resultMap id="UserResult" type="User">
        <id     property="id"   column="id"     />
        <result property="name" column="name"   />
        <result property="age"  column="age"   />
        <result property="sex"  column="sex"   />
        <result property="createTime"  column="create_time"   />
    </resultMap>

    <select id="selectAllUser" resultMap="UserResult">
        select * from users
    </select>

</mapper>

3.配置文件

5.运行效果

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值