После первых трех дней обучения мы спроектировали интерфейс пользовательского микросервиса, спроектировали таблицу базы данных, построили среду разработки и сегодня наконец-то можем писать код.

Первым шагом в написании кода является создание нашего класса сущности. В предыдущей таблице базы данных мы создали две таблицы, одна из которых является таблицей с информацией о пользователе, а другая — таблицей кодов подтверждения SMS, и мы создали два соответствующих класса сущностей.

Первый — это класс сущности информации о пользователе:

package com.zhangdapeng520.user.entity;

import lombok.Builder;
import lombok.Data;

import java.io.Serializable;
import java.sql.Timestamp;


@Data
@Builder
public class UserInfo implements Serializable {

    private int id;
    private String userId;
    private String nickName;
    private String mobileNo;
    private String password;
    private String isLogin;
    private Timestamp loginTime;
    private String isDel;
    private Timestamp createTime;

    public UserInfo() {
    }

    public UserInfo(int id, String userId, String nickName, String mobileNo, String password, String isLogin,
                    Timestamp loginTime, String isDel, Timestamp createTime)
 {
        this.id = id;
        this.userId = userId;
        this.nickName = nickName;
        this.mobileNo = mobileNo;
        this.password = password;
        this.isLogin = isLogin;
        this.loginTime = loginTime;
        this.isDel = isDel;
        this.createTime = createTime;
    }
}

В классе сущностей с информацией о пользователе следующие свойства являются локальными:

  • идентификатор: первичный ключ

  • идентификатор пользователя: идентификатор пользователя

  • Никнейм: Никнейм

  • mobileNod: номер мобильного телефона

  • пароль: пароль

  • isLogin: авторизован

  • loginTime: время последнего входа в систему

  • isDel: был ли он удален

  • createTime: время создания

Затем есть первый класс сущностей, класс сущностей кода подтверждения SMS:

package com.zhangdapeng520.user.entity;

import lombok.Builder;
import lombok.Data;

import java.sql.Timestamp;


@Data
@Builder
public class UserSmsCode {

    private int id;
    private String mobileNo;
    private String smsCode;
    private Timestamp sendTime;
    private Timestamp createTime;

    public UserSmsCode() {
    }

    public UserSmsCode(int id, String mobileNo, String smsCode, Timestamp sendTime, Timestamp createTime) {
        this.id = id;
        this.mobileNo = mobileNo;
        this.smsCode = smsCode;
        this.sendTime = sendTime;
        this.createTime = createTime;
    }
}

Свойства этого класса сущностей относительно просты, в том числе:

  • идентификатор: первичный ключ

  • mobileNo: номер мобильного телефона

  • smsCode: проверочный код

  • sendTime: время отправки

  • createTime: время создания

После того, как у нас есть класс сущности, нам нужно создать код для уровня объекта базы данных. Слой объекта базы данных напрямую связан с базой данных, также называемой DAO, в основном для простой операции добавления, удаления, изменения и проверки данных базы данных.

Первый — это пользовательский интерфейс DAO:

package com.zhangdapeng520.user.dao;

import com.zhangdapeng520.user.entity.UserInfo;
import org.apache.ibatis.annotations.Mapper;


@Mapper
public interface UserInfoDao {

    UserInfo selectByMobileNo(String mobileNo)// 根据手机号查询用户信息

    int insert(UserInfo userInfo)// 添加用户信息

    int updateById(UserInfo userInfo)// 更新用户信息
}

Здесь есть три основных метода:

  • selectByMobileNo: запрос информации о пользователе на основе номера мобильного телефона.

  • вставка: добавить информацию о пользователе

  • updateById: обновить информацию о пользователе

Затем есть интерфейс Dao с кодом подтверждения SMS:

package com.zhangdapeng520.user.dao;

import com.zhangdapeng520.user.entity.UserSmsCode;
import org.apache.ibatis.annotations.Mapper;


@Mapper
public interface UserSmsCodeDao {
    int insert(UserSmsCode userSmsCode)// 添加验证码信息

    UserSmsCode selectByMobileNo(String mobileNo)// 根据手机号查询验证码信息
}

Этот интерфейс предоставляет только два метода:

  • вставить: добавить информацию о коде подтверждения

  • selectByMobileNo: запрос информации о коде подтверждения на основе номера мобильного телефона.

Вот небольшая деталь: когда мы раньше проектировали таблицу базы данных, мы намеренно добавили индекс к полю mobileNo двух таблиц, интересно, вы его нашли?

Как пользовательский интерфейс Dao, так и интерфейс Dao кода проверки SMS используют запрос mobileNo, что может повысить эффективность запроса.

С интерфейсом Dao следующим шагом будет реализация интерфейса Dao. Мы используем Mybatis в качестве библиотеки запросов к базе данных, которая может использовать сопоставление xml для запросов к базе данных. Как это реализовать, вы можете сначала попробовать сами.В завтрашней статье я приведу код реализации.

Что ж, сегодняшняя передача здесь, спасибо.

Напоследок небольшой рекламный ролик об игре.Если вам не нравится играть в игры, то можете не читать дальше.Если вам немного нравится играть в игры, то настоятельно рекомендую скачать.Это приложение действительно хорошее. Я сам им пользуюсь.Прошло уже лет пять-шесть,и он очень прост в использовании.Часто обновляет некоторые благотворительные игры,которые присылают вип,красные конверты и слитки.
картина

Зачем это рекомендовать?
картина

Какие игры есть?
картина

Адрес загрузки (скопируйте в браузер, чтобы открыть): https://www.tsyule.cn/index.php/index/index/appid/7/tgid/ca0000500

Загрузите мобильное приложение по этому адресу, которое можно загрузить как на телефоны Apple, так и на Android. После загрузки установите его, а затем зарегистрируйте учетную запись для входа. В ней тысячи игр, особенно типа БТ игр, особенно много. BT-игры автоматически отправляют вам VIP, слитки и бриллианты, пока вы играете в игру. Вероятность убийства монстров и выпадения сокровищ тоже очень высока, любители поиграть в игры могут скачать и испытать это на себе.