Skip to content
package com.example.websocket8_4.model;
import org.springframework.data.annotation.Id;
import org.springframework.data.relational.core.mapping.Table;
@Table("userdata")
public class UserData {
    @Id
    private Long id;
    private String name;
    private String message;
    // Getters and Setters
    public Long getId() {
        return id;
    }
    public void setId(Long id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getMessage() {
        return message;
    }
    public void setMessage(String message) {
        this.message = message;
    }
}

класс UserData. Давайте проанализируем его:

Анализ модели данных UserData

Обзор структуры

@Table("userdata")
public class UserData {
    @Id
    private Long id;
    private String name;
    private String message;
}

Компоненты

Аннотации

  • @Table("userdata") - указывает на таблицу в базе данных
  • @Id - обозначает первичный ключ

Поля

  1. id (Long) - уникальный идентификатор
  2. name (String) - имя пользователя
  3. message (String) - сообщение пользователя

Методы доступа

  • Геттеры и сеттеры для всех полей

Использование в приложении

  1. Сохранение сообщений чата в базу данных
  2. Структурирование данных для JSON обмена
  3. Взаимодействие с реактивным репозиторием

Связь с другими компонентами

  1. JsonSaveHandler использует для сохранения данных
  2. UserDataRepository оперирует объектами этого класса

Особенности реализации

  • Использование Spring Data аннотаций
  • Соответствие полей JSON структуре из клиентского кода
  • Простая структура для эффективного хранения сообщений

Схема базы данных

Предполагаемая структура таблицы:

CREATE TABLE userdata (
    id BIGINT PRIMARY KEY AUTO_INCREMENT,
    name VARCHAR(255),
    message TEXT
);

Дополнительные замечания: 1. Класс соответствует простой структуре данных для сохранения сообщений чата 2. Используется Spring Data R2DBC судя по аннотациям 3. Модель соответствует ожиданиям JsonSaveHandler

Для полного понимания работы приложения осталось увидеть: 1. UpperCaseHandler 2. LowerCaseHandler 3. Реализацию UserDataRepository 4. Возможно, конфигурацию базы данных

Готов к получению следующего файла.