最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解Java讀取本地文件并顯示在JSP文件中

 更新時(shí)間:2017年08月31日 15:31:06   投稿:lqh  
這篇文章主要介紹了詳解Java讀取本地文件并顯示在JSP文件中的相關(guān)資料,這里提供實(shí)例幫助大家實(shí)現(xiàn)這樣的功能,希望能幫助到大家,需要的朋友可以參考下

詳解Java讀取本地文件并顯示在JSP文件中

       當(dāng)我們初學(xué)IMG標(biāo)簽時(shí),我們知道通過設(shè)置img標(biāo)簽的src屬性,能夠在頁面中顯示想要展示的圖片。其中src的值,可以是磁盤目錄上的絕對(duì),也可以是項(xiàng)目下的相對(duì)路徑,還可以是網(wǎng)絡(luò)上的圖片路徑。在存取少量圖片的情況下,采用相對(duì)路徑存儲(chǔ)圖片的情況下最方便,也最實(shí)用。但是當(dāng)圖片數(shù)量過多時(shí),這種方式就顯的有些掣肘了。

    當(dāng)系統(tǒng)的圖片數(shù)量過多時(shí),如果仍把這些圖片當(dāng)做項(xiàng)目的一部分去發(fā)布,勢必會(huì)大大延長項(xiàng)目的發(fā)布時(shí)間及更新時(shí)間。對(duì)于某些對(duì)于時(shí)限性要求特別高的系統(tǒng)來說,采用相對(duì)路徑存儲(chǔ)圖片就是不可取的。特別是系統(tǒng)發(fā)布補(bǔ)丁時(shí),只能采用增量的方式去更新系統(tǒng)。如果采用覆蓋的方式發(fā)布系統(tǒng),就可能會(huì)造成系統(tǒng)圖片文件的丟失。

    基于以上種種原因,很多系統(tǒng)會(huì)把大量的圖片存在服務(wù)器的固定目錄下,這樣搭建集群環(huán)境時(shí),就能訪問公共的資源,避免對(duì)硬盤空間的浪費(fèi),但是問題也就在這里出現(xiàn)了。我們發(fā)布好的系統(tǒng)訪問磁盤上的固定目錄下的圖片時(shí),出現(xiàn)了沒有權(quán)限訪問的提示。系統(tǒng)為了保證本地安全,不允許直接訪問圖片。

    咋一看,上面的問題有的不可思議。但仔細(xì)想想,系統(tǒng)這么做,也確實(shí)有道理的。在服務(wù)器上,部署了很多個(gè)系統(tǒng)應(yīng)用。不可能有一個(gè)系統(tǒng)的訪問權(quán)限,就可以隨隨便便的訪問磁盤上的文件。事實(shí)上,服務(wù)器上的系統(tǒng)是有權(quán)限讀取其它磁盤路徑下的文件,只是沒有辦法讓它顯示而已。

    要解決上面的問題,我們可以使用流的方式把圖片讀取出來,然后再輸出顯示到HTML頁面中。

具體的代碼見下面:   

<img name="person.personImg" id="personImg" alt="頭像照片" src="${person.personImg}" style="width:160px;height:160px;border:1px solid" /> 
<button id="btnImg" class="btn btn-primary" type="button" title="上傳圖片" onclick="uploadPersonPic()">上傳圖片</button> 
 
<script> 
  $(function() { 
    //讀取頭像照片 
    if($("#oid").val()!=="") 
    { 
      $("#personImg").attr("src","favccxx/person/loadUserPhoto?externalPerson.oid="+$("#oid").val()+"&Time="+(new Date().getTime())); 
      $("#personImg").css("display",""); 
      $("#btnImg").css("display",""); 
    }else{ 
      $("#personImg").css("display","none"); 
      $("#btnImg").css("display","none");      
    } 
  } 
</script> 

Java代碼:

@Action(value = "loadUserPhoto", results = { @Result(name = "success", type = "stream", params = { 
      "contentType", "image/jpeg", "inputName", "imageStream" }) }) 
  public String getImage() { 
    if (person.getOid() != null) { 
      // 設(shè)置圖片 
      try { 
        Person person = personService.findOne("oid", externalPerson.getOid()); 
        FileInputStream is = new FileInputStream(person.getPersonImg()); 
        imageStream = new BufferedInputStream(new FileInputStream(person.getPersonImg())); 
      } catch (Exception e) { 
      } 
    } 
    return SUCCESS; 
  } 

以上就是java 讀取本地文件并顯示的實(shí)例,如有疑問請(qǐng)留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

  • Springmvc的運(yùn)行流程圖文詳解

    Springmvc的運(yùn)行流程圖文詳解

    今天小編就為大家分享一篇關(guān)于Springmvc的運(yùn)行流程圖文詳解,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-01-01
  • Java 反射機(jī)制的實(shí)例詳解

    Java 反射機(jī)制的實(shí)例詳解

    這篇文章主要介紹了Java 反射機(jī)制的實(shí)例詳解的相關(guān)資料,希望通過本文能幫助到大家,讓大家理解掌握反射機(jī)制,需要的朋友可以參考下
    2017-10-10
  • 基于springMVC web.xml中的配置加載順序

    基于springMVC web.xml中的配置加載順序

    這篇文章主要介紹了springMVC web.xml中的配置加載順序,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • 詳解Java七大阻塞隊(duì)列之SynchronousQueue

    詳解Java七大阻塞隊(duì)列之SynchronousQueue

    SynchronousQueue不需要存儲(chǔ)線程間交換的數(shù)據(jù),它的作用像是一個(gè)匹配器,使生產(chǎn)者和消費(fèi)者一一匹配。本文詳細(xì)講解了Java七大阻塞隊(duì)列之一SynchronousQueue,需要了解的小伙伴可以參考一下這篇文章
    2021-09-09
  • Java基于裝飾者模式實(shí)現(xiàn)的染色饅頭案例詳解

    Java基于裝飾者模式實(shí)現(xiàn)的染色饅頭案例詳解

    這篇文章主要介紹了Java基于裝飾者模式實(shí)現(xiàn)的染色饅頭案例,簡單描述了裝飾者模式的概念、原理及Java使用裝飾者模式的相關(guān)實(shí)現(xiàn)步驟、操作技巧與注意事項(xiàng),需要的朋友可以參考下
    2018-05-05
  • Java語言描述MD5加密工具類實(shí)例代碼

    Java語言描述MD5加密工具類實(shí)例代碼

    這篇文章主要介紹了Java語言描述MD5加密工具類實(shí)例代碼,具有一定借鑒價(jià)值,需要的朋友可以參考下。
    2017-12-12
  • Java編程實(shí)現(xiàn)服務(wù)器端支持?jǐn)帱c(diǎn)續(xù)傳的方法(可支持快車、迅雷)

    Java編程實(shí)現(xiàn)服務(wù)器端支持?jǐn)帱c(diǎn)續(xù)傳的方法(可支持快車、迅雷)

    這篇文章主要介紹了Java編程實(shí)現(xiàn)服務(wù)器端支持?jǐn)帱c(diǎn)續(xù)傳的方法,涉及Java文件傳輸?shù)南嚓P(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-11-11
  • JAVA如何調(diào)用Shell腳本

    JAVA如何調(diào)用Shell腳本

    本篇文章主要介紹了JAVA如何調(diào)用Shell腳本,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-08-08
  • Java高級(jí)之HashMap中的entrySet()方法使用

    Java高級(jí)之HashMap中的entrySet()方法使用

    這篇文章主要介紹了Java高級(jí)之HashMap中的entrySet()方法使用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • 解決Maven無法下載2.1.7.js7版本的itext依賴問題

    解決Maven無法下載2.1.7.js7版本的itext依賴問題

    本文主要解決使用Maven編譯項(xiàng)目時(shí)出現(xiàn)的itext依賴版本問題,通過分析,發(fā)現(xiàn)該問題是由jasperreports依賴的特定版本itext導(dǎo)致的,解決方法是排除jasperreports中的itext依賴,并自行指定更高版本的itext依賴
    2024-12-12

最新評(píng)論

万州区| 天峨县| 皋兰县| 望江县| 香河县| 陕西省| 虞城县| 高清| 静乐县| 策勒县| 武乡县| 恩平市| 台北市| 宜阳县| 黄浦区| 常德市| 华蓥市| 连山| 上饶市| 宁乡县| 清涧县| 贵德县| 泰州市| 满洲里市| 牟定县| 丁青县| 崇左市| 大理市| 工布江达县| 许昌县| 泾源县| 吴旗县| 长泰县| 汤原县| 家居| 开远市| 遂溪县| 漳州市| 晋中市| 安化县| 邯郸市|