Если это статические файлы, просто ссылку на него напрямую .Все достойные сервлетконтейнеры / приложения имеют хорошо развитый DefaultServlet
.Если это статические файлы, расположенные за пределами веб-приложения, из которого вы их связали, то вы также можете просто добавить корневую папку этих файлов в качестве другого контекста.Неясно, какой сервер вы используете, но если бы это был Tomcat, вы могли бы просто добавить новый <Context>
к server.xml
:
<Context docBase="/path/to/static/files" path="/files" />
Таким образом, он доступен для http://example.com/files/...
.
Если это динамически генерируемые файлы или файлы, поступающие из базы данных, то вам необходимо разработать сервлет, который эффективно выполняет работу ввода-вывода: т.е. не нужно без необходимости хранить все данные в памяти (например, в ByteArrayInputStream
или * 1015).* перед отправкой их на выход. Просто запишите байты немедленно в вывод по мере его поступления. Вы можете найти эти примеры базового файлового сервлета и более расширенного fileservlet (поддержка резюме и т. д.) полезен.