Image屬性src是可以設(shè)置servlet的路徑的,即從servlet獲取圖片
如在web.xml配置:

  <servlet>
    <servlet-name>GenerateImageServlet</servlet-name>
    <servlet-class>org.bruce.util.GenerateImageServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>GenerateImageServlet</servlet-name>
    <url-pattern>/getImage</url-pattern>
  </servlet-mapping>

然后在jsp文件中:

<img src="getImage" title="美女">

這樣就可以得到圖片了。這里就給動(dòng)態(tài)獲取圖片提供了一種途徑。
比如可以通過src="getImage?id=1000"就可以得到1000號圖片。

還可以采用JavaScript onclick方法刷新圖片,網(wǎng)上參考資料采用如下方法:

<img src="valid" onclick="regenerate(this)" title="美女">
<script>
function regenerate(this){
    this.src="getImage";
}
</script>

嘗試后,發(fā)現(xiàn)這種方法無效,由于路徑?jīng)]變,瀏覽器不會(huì)重新發(fā)起請求。這里我采用另外一種技巧:

    <script type="text/javascript">
        function regenerate(obj){var date=new Dat();
            obj.src="getImage?time=" + date.getSeconds();
        }
    </script>

這樣由于路徑發(fā)生了變化,就重新發(fā)起請求,輕松實(shí)現(xiàn)點(diǎn)擊更新圖片內(nèi)容。
在生成驗(yàn)證碼的時(shí)候這個(gè)方法很管用,因?yàn)楫?dāng)頁面顯示的驗(yàn)證碼看不清時(shí),應(yīng)該提供方法重新獲取一張。