Codehighlig" />

亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

在applet中訪問本地資源

系統 2046 0
本文為原創,如需轉載,請注明作者和出處,謝謝!

applet運行在沙盒中,因此,在默認情況下無法訪問本地的資源。但可以通過簽名的方式打破這一限制。簽名的過程很簡單,讀者可以按如下的步驟編寫一個applet程序,該程序讀取了本地C盤的a.txt文件的內容,并顯示在applet上,然后壓縮成jar文件,并簽名后進行發布。

下面使用的keytool和jarsigner都是JDK本身帶的程序。

第1步 編寫applet程序

<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --> import java.applet. * ;
import java.awt.Graphics;

public class HelloWorld extends Applet
{
private Stringname;

public void paint(Graphicsg)
{
g.drawString(name,
20 , 30 );
}

@Override
public void init()
{
super .init();
try
{
// a.txt文件的內容要以UTF-8格式存儲
java.io.FileInputStreamfis = new java.io.FileInputStream( " c:\\a.txt " );
java.io.InputStreamReaderisr
= new java.io.InputStreamReader(fis, " UTF-8 " );
java.io.BufferedReaderbr
= new java.io.BufferedReader(isr);
name
= br.readLine();
}
catch (Exceptione)
{
name
= e.getMessage();
}
}
}

第2步: 編譯HelloWorld.java,并壓縮成hw.jar文件

編譯HelloWorld.java后,使用如下的命令生成hw.jar

<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --> jarcvfhw.jarHelloWorld.class

第3步:使用keytool命令生成密鑰庫

使用如下的命令生成hw.store文件:

<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --> keytool-genkey-keystorehw.store-aliashelloworld

其中hw.store和helloworld是用戶自定義的名字,讀者可以起其他的名字。

在執行上面的命令后,會要求輸出一個密碼(輸出兩次,密碼長度至少為6位字符),然后會要求輸出一些信息,密碼是必須輸入的,而其他的信息如果不想輸入,直接按回車即可,最后會讓你確定是否生成hw.store文件,輸入“y”,按回車,又讓輸出主密碼,如果密碼與剛才輸出的密碼相同,直接按回車。執行完命令后,會在當前目錄生成一個hw.store文件。這一過程如下圖所示。
使用keytool命令生成hw.store文件的默認有效期是180天,也可以使用-validity命令行參數指定有效期,單位為天,如下面的命令指定了有效期為120天:

<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --> keytool-genkey-keystorehw.store-aliashelloworld-validity 120

如果想查看hw.store的有效期和其他信息,可以使用如下的命令:

<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --> keytool-list-v-aliashelloworld-keystorehw.store

執行上面的命令后,將輸出如下圖所示的信息。
上圖顯示的有效期是120天。

第4步:使用jarsigner命令對hw.jar進行簽名

執行如下的命令對hw.jar文件進行簽名:

<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --> jarsigner-keystorehw.storehw.jarhelloworld

第5步:發布與使用applet

將hw.jar文件放在<Tomcat安裝目錄>\webapps\test目錄中,并在test目錄中建立一個applet.jsp文件,代碼如下:

<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --> <% @pagelanguage = " java " contentType = " text/html;charset=UTF-8 "
pageEncoding
= " UTF-8 " %>
< html >
< head >
< title > 第一個applet </ title >
</ head >
< body >
< APPLET CODE ="HelloWorld.class" width =200 height =200 ARCHIVE ="hw.jar" >
</ APPLET >
</ body >
</ html >

在IE地址欄中輸出如下的URL:
http://localhost:8080/test/applet.jsp

當第一次訪問上面的URL時,會出現如下圖所的對話框。
選中對話框中的復選框,單擊“運行”按鈕,就可以正常運行applet了(下次再訪問applet.jsp,就會會彈出這個對話框了),如果是firefox,也會彈出類似的對話框。

要運行這個applet,客戶端需要安裝jdk1.3或以上版本。

在linux下的firefox中試了一下,發現有時firefox無法正常顯示applet。發生這種情況的原因是由于firefox未安裝jdk插件,讀者可按如下的方法為linux版的firefox安裝jdk插件:

jdk插件的庫文件是libjavaplugin_oji.so,這個文件在<JDK安裝目錄>/jre/plugin/i386/ns7目錄中,其中ns7根據當前jdk版本不同而有所差異,但前兩個字母都為ns。在linux下,jdk一般都安裝在/usr/java目錄中。
找到libjavaplugin_oji.so文件后,再進行<firefox的安裝目錄>/plugins目錄中,使用如下的命令為libjavaplugin_oji.so文件添加一個符號鏈接:

<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --> ln-s<jdk安裝目錄>/jre/plugin/i386/ns7/libjavaplugin_oji.so

重啟Firefox,再訪問applet.jsp頁面,就可以正常顯示applet了。



國內最棒的Google Android技術社區(eoeandroid),歡迎訪問!

《銀河系列原創教程》 發布

《Java Web開發速學寶典》 出版,歡迎定購

在applet中訪問本地資源


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 亚洲精品免费在线 | 日韩一区二区久久久久久 | 久久亚洲私人国产精品va | 国产精品夜色视频一级区 | 亚洲第一视频在线播放 | 国产亚洲精品久久午夜 | 久久精品成人国产午夜 | 免费国产成人高清在线观看视频 | 国产亚洲精品九九久在线观看 | swag国产精品一区二区 | 亚洲国产一区在线 | 日韩欧美国产综合 | 国产免费观看a大片的网站 国产免费精彩视频 | 手机免费在线观看 | 亚洲成人在线播放视频 | 中文字幕第5页 | 国产美女一级毛片 | 色综合中文字幕在线亚洲 | 中文字幕伦视频 | 精品久久久久久中文字幕2017 | 日韩亚洲视频 | 四虎影院黄色片 | 久久精品99久久香蕉国产色戒 | 爱做久久久久久久久久 | chinese国产xxxx中国| 看个毛片| 亚洲国产精久久久久久久 | 五月婷婷激情在线 | 国产我不卡 | 一级毛片中文字幕 | 好看的亚洲视频 | 久久国产精品老人性 | 亚洲第一二三四区 | 99国产超薄丝袜足j在线播放 | 91视频免费网站 | 国产l精品国产亚洲区在线观看 | 黄色片在线观看网址 | 九九热在线免费 | 一区二区三区四区国产精品 | 黄色成人毛片 | 小视频在线免费观看 |