Как добавить настраиваемое поле в Entity в Hibernate 4.2?

Я java-разработчик. Я использую спящий режим 4.2.21. У меня есть сущность следующим образом:

@Entity
public class MyEntity {

   @Id
   @GeneratedValue
   private id;
}

Я хочу администрировать систему, иметь несколько настраиваемых полей.

Что такое "Пользовательское поле"?

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

Попробуем разобраться в этом на примере CRM-приложения. Допустим, у нас есть объект «Клиент». Теоретически этот объект может иметь любое количество различных атрибутов: несколько адресов электронной почты, множество телефонных номеров, адресов и т. д. Один из них может использоваться отделом продаж одной компании, но будет полностью игнорироваться другой организацией. Вводить в объект все возможные атрибуты, которые могут (могут) использоваться конечными пользователями, расточительно и неоправданно.

В этом случае лучше разрешить пользователю (или администратору) системы создавать атрибуты, которые необходимы менеджерам по продажам в конкретной организации. Например, администратор может создать атрибут «рабочий телефон», если это поле действительно необходимо, или «домашний адрес» и т. д. В дальнейшем эти поля можно использовать в приложении, например, для фильтрации и поиска данных.


person Morteza Malvandi    schedule 29.11.2015    source источник
comment
не могли бы вы объяснить немного больше? Насколько я понимаю, в этом классе могут быть String address и String phoneNumber. Затем аннотируйте эти переменные с помощью @Column(name="address"). Сделайте то же самое для номера телефона.   -  person Bilal Shah    schedule 29.11.2015
comment
Я обновил его. Спасибо вам.   -  person Morteza Malvandi    schedule 29.11.2015


Ответы (1)


У вас может быть класс, который может иметь два поля. Один должен быть именем атрибута, а другой должен иметь значение атрибута. Каждый раз, когда пользователь хочет добавить какой-либо атрибут, вы должны создать новый объект этого класса и установить связь с другим классом.

person Bilal Shah    schedule 29.11.2015