国产探花免费观看_亚洲丰满少妇自慰呻吟_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教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 西乡县| 大冶市| 即墨市| 华蓥市| 时尚| 黑山县| 公主岭市| 石门县| 洛浦县| 措美县| 滦平县| 松江区| 莒南县| 天长市| 新巴尔虎左旗| 邵阳市| 友谊县| 雅江县| 滕州市| 安平县| 桃园县| 商城县| 兖州市| 漳浦县| 蒲江县| 潞西市| 安国市| 保德县| 肥东县| 通化县| 松江区| 白城市| 博乐市| 尼木县| 陆河县| 新密市| 平泉县| 新密市| 济宁市| 紫金县| 新田县|