Сохранение истории сообщений

Строю чат на spring mvc, задался вопросом: как лучше реализовать сохранение истории сообщений в чате?

Сейчас у меня сообщения сохраняются прямиком в БД(не душите=)), но так неправильно хотя бы потому что очень длинные тексты просто не поместятся.

Думал создать json файл и в него записывать объекты сообщений, но правильно ли так?

Накидайте вариантов пожалуйста.


Ответы (1 шт):

Автор решения: Митяй

В общем сделал следующие выводы: можно использовать БД для хранения переписки т.к это самый простой способ, но есть примечания:

  • Тип колонки для сообщений должен быть LONGTEXT

  • Для Hibernate нужна специальная аннотация @Lob

@Lob относится к типу данных переменной длины для хранения больших объектов, у неё есть два параметра:

  1. CLOB - Character Large Object будет хранить большие текстовые данные
  2. BLOB - Binary Large Object для хранения двоичных данных, таких как изображения, аудио или видео

Указываются они в аннотации @Column(columnDefinition="СLOB"), но у меня почему-то не хочет создаваться таблица с таким полем, поэтому я просто оставил @Lob.

→ Ссылка