Класс FileInputStream используется для чтения изображения, а класс ServletOutputStream используется для записи содержимого изображения в качестве ответа. Мы использовали классы BufferedInputStream и BufferedOutputStream для повышения производительности. Мы должны использовать тип содержимого image/jpeg. В каталоге C:\Images находится изображение GFG.jpeg. Вы можете настроить местоположение по мере необходимости. В этом примере мы создадим следующие страницы:
Пример
Мы создали три файла, чтобы сделать это приложение:
- index.html
- DisplayImage.java
- web.xml
Файл index.html создает ссылку для вызова сервлета. Шаблон URL-адреса сервлета — «servlet1». Класс сервлета ServletIOExample.java считывает изображение из указанного каталога и использует классы ServletOutputStream и BufferedOutputStream для записи содержимого в объект ответа.
- index.html
- HTML
<
html
>
<
head
>
<
title
>Display GFG Image</
title
>
</
head
>
<
body
>
<
a
href
=
"DisplayImageGfg"
>click for photo</
a
>
</
body
>
</
html
>
2. ServletIOExample.java
- Java
import
java.io.*;
import
javax.servlet.*;
import
javax.servlet.http.*;
public
class
DisplayImageGfg
extends
HttpServlet
{
public
void
doGet(HttpServletRequest request,HttpServletResponse response)
throws
IOException
{
// set the content type to image/jpeg.
response.setContentType(
"image/jpeg"
);
ServletOutputStream out;
// Writing this image
// content as a response
out = response.getOutputStream();
// path of the image
FileInputStream fin =
new
FileInputStream(
"C:\\Images\\GFG.jpeg"
);
// getting image in BufferedInputStream
BufferedInputStream bin =
new
BufferedInputStream(fin);
BufferedOutputStream bout =
new
BufferedOutputStream(out);
int
ch =
0
;
while
((ch=bin.read())!=-
1
)
{
// display image
bout.write(ch);
}
// close all classes
bin.close();
fin.close();
bout.close();
out.close();
}
}
3. web.xml
- XML
<
web-app
>
<
servlet
>
<
servlet-name
>DisplayImageGfg</
servlet-name
>
<
servlet-class
>DisplayImageGfg</
servlet-class
>
</
servlet
>
<
servlet-mapping
>
<
servlet-name
>DisplayImageGfg</
servlet-name
>
<
url-pattern
>/DisplayImageGfg</
url-pattern
>
</
servlet-mapping
>
</
web-app
>
Вывод:
Когда вы запустите файл index.html, вы увидите следующие результаты.
Чтобы получить вывод, нажмите на ссылку.