У меня есть этот «зуд», я думаю о написании фильтра, который будет перехватывать запросы и извлекать параметры, а затем преобразовывать эти параметры в атрибуты, чтобы они поступали на уровень BusinessLogic (BO) как тип объектов, которыми они должны быть (например, Long, ObjectDTO, String и т. д.), в настоящее время я обрабатываю это так, что BO получает запрос, извлекает параметры, выполняет проверку nulls и преобразует их соответствующим образом в соответствующий тип. Является ли мой новый подход более удобным, я прочитал это Основы фильтров а также хотелось бы услышать больше об использовании фильтров, чем упомянуто в статье. Причина, по которой я подумал об этом, заключается в том, что при работе с doGet пользователь может опустить параметры, поэтому я буду использовать фильтр, чтобы установить их, если они отсутствуют, есть мнения?
Фильтры сервлетов (от параметра к атрибуту)
Ответы (1)
Многие веб-фреймворки делают что-то подобное.
Например, наряду со многими другими функциями фильтр Struts определяет, что Action вызывается запросом. Он использует отражение, чтобы определить свойства Action, доступность для записи и их тип. Затем он обрабатывает имя каждого параметра и, если оно соответствует свойству действия, пытается привести значение параметра к экземпляру типа свойства. В случае успеха свойство Action устанавливается с результирующим значением. После правильной настройки Action фильтр вызывает его.
Процесс может показаться сложным, но на самом деле я не отдал должного уровню сложности. Я предлагаю вам проверить, что существующие веб-фреймворки могут сделать для вас, прежде чем пытаться написать свой собственный. Даже если у вас нет бюджета и вам нравится учиться на горьком опыте, изучение других фреймворков поможет вам заново изобрести лучший собственный фреймворк.