国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JSP > 正文

JSP中通過Servlet 將服務器硬盤圖片并展示到瀏覽器

2024-09-05 00:23:18
字體:
來源:轉載
供稿:網友

JSP中通過Servlet 將服務器硬盤圖片并展示到瀏覽器

其實這個實例非常簡單,但是今天有人問我了,而且我也寫了個小例子,就順便發上來吧! 

在瀏覽器顯示一張圖片,使用標簽

<img src=""> 

img 元素向網頁中嵌入一幅圖像。

請注意,從技術上講,<img> 標簽并不會在網頁中插入圖像,而是從網頁上鏈接圖像。<img> 標簽創建的是被引用圖像的占位空間。

<img> 標簽有兩個必需的屬性:src 屬性 和 alt 屬性。 

HTML 與 XHTML 之間的差異
在 HTML 中,<img> 標簽沒有結束標簽。
在 XHTML 中,<img> 標簽必須被正確地關閉。
在 HTML 4.01 中,不推薦使用 image 元素的 "align"、"border"、"hspace" 以及 "vspace" 屬性。
在 XHTML 1.0 Strict DTD 中,不支持 image 元素的 "align"、"border"、"hspace" 以及 "vspace" 屬性。 

SRC的路徑有很多:

指向其他站點(比如 src="http://www.******.com/***.jpg")

指向站點內的文件(比如 src="/i/image.gif")

許多新手忽略了一點是,其實IMG只是告訴瀏覽器這里要現實圖片,而瀏覽器通過路徑去獲得圖片的數據流然后進行顯示

簡單來說,SRC其實就是瀏覽器走了一個請求,然后這個請求返回圖片的數據流給瀏覽器而已

所以,SRC同樣可以是請求,可以是Servlet也可以是Action,這里我們用Servlet來做一個簡單示例 

JSP頁面:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html>  <head>   <base href="<%=basePath%>" rel="external nofollow" >   <title>圖片顯示</title>  </head>  <body>   <img src="<%=basePath %>servlet/ImageShowServlet">  </body> </html> 

 Web.xml配置:

<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5"    xmlns="http://java.sun.com/xml/ns/javaee"    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">  <servlet>   <servlet-name>ImageShowServlet</servlet-name>   <servlet-class>servlet.ImageShowServlet</servlet-class>  </servlet>  <servlet-mapping>   <servlet-name>ImageShowServlet</servlet-name>   <url-pattern>/servlet/ImageShowServlet</url-pattern>  </servlet-mapping>  <welcome-file-list>   <welcome-file>index.jsp</welcome-file>  </welcome-file-list> </web-app>  

Servlet非常簡單:

package servlet;  import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;  /**  * @說明 該Servlet將本地硬盤的圖片輸入管道中  * @author cuisuqiang  * @version 1.0  * @since  */ @SuppressWarnings("serial") public class ImageShowServlet extends HttpServlet {    @Override   protected void service(HttpServletRequest request, HttpServletResponse response)       throws ServletException, IOException {     OutputStream os = response.getOutputStream();     File file = new File("C://abc.jpg");     FileInputStream fips = new FileInputStream(file);     byte[] btImg = readStream(fips);     os.write(btImg);     os.flush();   }      /**    * 讀取管道中的流數據    */   public byte[] readStream(InputStream inStream) {     ByteArrayOutputStream bops = new ByteArrayOutputStream();     int data = -1;     try {       while((data = inStream.read()) != -1){         bops.write(data);       }       return bops.toByteArray();     }catch(Exception e){       return null;     }   } }  

就是獲取本地硬盤的文件的字節流,然后寫入到管道中而已!

 以上就是JSP中通過Servlet 將服務器硬盤圖片并展示到瀏覽器的實例,如有疑問請留言或者到本站社區交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!


注:相關教程知識閱讀請移步到JSP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 临澧县| 宁乡县| 邢台市| 常宁市| 聂拉木县| 登封市| 三江| 临沂市| 闻喜县| 旌德县| 东方市| 泾源县| 沁水县| 包头市| 芒康县| 宁乡县| 元氏县| 镇原县| 邛崃市| 中阳县| 勐海县| 樟树市| 台湾省| 鹤峰县| 韩城市| 库尔勒市| 积石山| 应城市| 武胜县| 涞水县| 永济市| 陇西县| 老河口市| 灵璧县| 惠安县| 西乌珠穆沁旗| 滁州市| 溧阳市| 渝中区| 乐亭县| 集贤县|