Как глубоко скопировать (клонировать) HttpServletRequest? - PullRequest
0 голосов
/ 28 июня 2019

Как я могу глубоко копировать (клонировать) HttpServletRequest в Java. Как я знаю, он не является ни Serializable, ни Cloneable. Я нашел в Интернете некоторый код, предлагающий использовать HttpServletRequestWrapper, но на самом деле, когда я использовал его, я понял, что он делает мелкое копирование, а не глубокое копирование. Я ценю любое решение для простого дублирования / клонирования или глубокого копирования HttpServletRequest. Я знаю, что это не очень хорошая идея, но я столкнулся со сценарием, в котором, если я не клонирую его, мне нужно сделать больше рефакторингов в коде и пересмотреть множество модульных тестов.

1 Ответ

1 голос
/ 28 июня 2019

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

Итак, вы хотите быстрый взлом вместо того, чтобы делать это правильно, пусть будущий Джейсон Фостер об этом беспокоится?

Экземпляры этого класса не предназначались для клонирования или копирования, выстолкнется с большим количеством проблем, пытаясь сделать это, чем вы сейчас, и, по крайней мере, теперь вы знаете, какие у вас проблемы (юнит-тесты и рефакторинг).То, что может произойти с полуклонированным HttpRequest, доступным из нескольких потоков, заставит вас сказать should have just fixed those tests back then.

...