日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線(xiàn)溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
使用Java網(wǎng)絡(luò)啟動(dòng)部署軟件

Java網(wǎng)絡(luò)啟動(dòng)(Java Web Start (JWS) )可以實(shí)現(xiàn)在網(wǎng)絡(luò)瀏覽器中運(yùn)行具備全部特色的Java應(yīng)用軟件。Sun公司在2001年三月發(fā)布的Java1.0就已經(jīng)具備了對(duì)JWS的支持,自從J2SE1.4版本以來(lái),JWS就已經(jīng)成為Java運(yùn)行時(shí)環(huán)境(Java Runtime Environment (JRE) )的默認(rèn)配置,不必再單獨(dú)安裝了,在這篇文章中,我將向您介紹這一重要技術(shù)。

成都創(chuàng)新互聯(lián)公司擁有10多年成都網(wǎng)站建設(shè)工作經(jīng)驗(yàn),為各大企業(yè)提供做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)服務(wù),對(duì)于網(wǎng)頁(yè)設(shè)計(jì)、PC網(wǎng)站建設(shè)(電腦版網(wǎng)站建設(shè))、重慶APP開(kāi)發(fā)公司、wap網(wǎng)站建設(shè)(手機(jī)版網(wǎng)站建設(shè))、程序開(kāi)發(fā)、網(wǎng)站優(yōu)化(SEO優(yōu)化)、微網(wǎng)站、國(guó)際域名空間等,憑借多年來(lái)在互聯(lián)網(wǎng)的打拼,我們?cè)诨ヂ?lián)網(wǎng)網(wǎng)站建設(shè)行業(yè)積累了很多網(wǎng)站制作、網(wǎng)站設(shè)計(jì)、網(wǎng)絡(luò)營(yíng)銷(xiāo)經(jīng)驗(yàn),集策劃、開(kāi)發(fā)、設(shè)計(jì)、營(yíng)銷(xiāo)、管理等網(wǎng)站化運(yùn)作于一體,具備承接各種規(guī)模類(lèi)型的網(wǎng)站建設(shè)項(xiàng)目的能力。

技術(shù)

Java網(wǎng)絡(luò)啟動(dòng)JWS是與網(wǎng)絡(luò)瀏覽器相結(jié)合的應(yīng)用軟件,當(dāng)用戶(hù)點(diǎn)擊鏈接的時(shí)候就會(huì)指向一個(gè)Java網(wǎng)絡(luò)啟動(dòng)協(xié)議(Java Network Launching Protocol (JNLP) )文件,然后瀏覽器自動(dòng)啟動(dòng)JWS,接著下載、緩存并運(yùn)行基于Java技術(shù)的應(yīng)用軟件。

在JWS背后的技術(shù)是JNLP及其API,它們是在Java團(tuán)體進(jìn)程(Java Community Process)中開(kāi)發(fā)的。JWS實(shí)際上是JNLP規(guī)范的一個(gè)參考實(shí)現(xiàn),JNLP技術(shù)定義了一個(gè)標(biāo)準(zhǔn)的文件格式,該格式描述了如何調(diào)用一個(gè)JNLP文件。

既然安裝鏈接可以作為普通的HTTP URL的鏈接,那么您就可以通過(guò)網(wǎng)頁(yè)來(lái)檢查客戶(hù)端是否安裝了JWS,您可以在IE中通過(guò)以下代碼來(lái)檢查:

< SCRIPT LANGUAGE="VBScript">

on error resume next

If isIE = "true" Then

If Not(IsObject(CreateObject("JavaWebStart.isInstalled"))) Then

javawsInstalled = 0

Else

javawsInstalled = 1

End If

If Not(IsObject(CreateObject("JavaWebStart.isInstalled.1.4.2.0"))) Then

javaws142Installed = 0

Else

javaws142Installed = 1

End If

If Not(IsObject(CreateObject("JavaWebStart.isInstalled.1.5.0.0"))) Then

javaws150Installed = 0

Else

javaws150Installed = 1

End If

End If

< /SCRIPT>

開(kāi)發(fā)

開(kāi)發(fā)部署在JWS上的軟件和開(kāi)發(fā)獨(dú)立運(yùn)行的軟件在Java 2平臺(tái)上是基本相同的,比如,程序的起點(diǎn)都是以下的標(biāo)準(zhǔn)代碼:

public static void main(String[] argv)

然而,為了支持網(wǎng)絡(luò)部署,也就是實(shí)現(xiàn)自動(dòng)下載和調(diào)用軟件,并且保證軟件在一個(gè)安全的沙盒中運(yùn)行,還需要一些額外的考慮,包括:

應(yīng)用軟件必需作為JAR文件集合來(lái)使用;
所有的應(yīng)用軟件資源,比如文件、圖片都必需存儲(chǔ)在JAR文件中,而且它們都必需使用Java 2平臺(tái)的getResource機(jī)制來(lái)引用;
應(yīng)用軟件可以使用System.exit調(diào)用;
進(jìn)行不受限制地訪(fǎng)問(wèn)系統(tǒng)的軟件需要通過(guò)簽名的JAR文件來(lái)使用,而且JAR文件中所有的項(xiàng)目都必需經(jīng)過(guò)簽名;
如果軟件要運(yùn)行在一個(gè)安全沙盒中,那么它必需遵循以下的限制;
不能進(jìn)行本地磁盤(pán)訪(fǎng)問(wèn);
所有的JAR文件都必須從同一個(gè)主機(jī)下載;
只能和下載JAR文件的主機(jī)之間建立網(wǎng)絡(luò)連接;
不能安裝安全管理器;
不能使用本地類(lèi)庫(kù);
對(duì)系統(tǒng)屬性的訪(fǎng)問(wèn)受到限制,對(duì)于JNLP中定義了的系統(tǒng)屬性,應(yīng)用軟件可以進(jìn)行讀/寫(xiě)操作,并且對(duì)于相同的屬性集合具備和applet一樣的只讀權(quán)限。

安全

JWS是構(gòu)建于Java 2平臺(tái)之上的,Java 2平臺(tái)提供了一個(gè)全面的安全架構(gòu),在Java 6.0版中,Java網(wǎng)絡(luò)啟動(dòng)則提供了更加強(qiáng)大的安全特色,比如代碼簽名。

在默認(rèn)狀態(tài)下,通過(guò)JWS調(diào)用的應(yīng)用軟件將運(yùn)行在一個(gè)受到限制的環(huán)境中(一個(gè)“沙盒”),它們對(duì)本地計(jì)算資源的訪(fǎng)問(wèn),比如存儲(chǔ)設(shè)備和本地網(wǎng)絡(luò),是有限的。這樣,JWS就保證了下載的潛在的不可信任的軟件不會(huì)危及到本地文件或網(wǎng)絡(luò)。

當(dāng)然,應(yīng)用程序也可以請(qǐng)求不受限制的本地系統(tǒng)訪(fǎng)問(wèn),在這種情況下,當(dāng)該軟件***次調(diào)用時(shí),JWS將顯示安全警告對(duì)話(huà)框,安全警告的內(nèi)容包含軟件開(kāi)發(fā)者的信息。

如果一個(gè)應(yīng)用軟件包含了一個(gè)或多個(gè)經(jīng)過(guò)簽名的JAR文件,JWS將會(huì)驗(yàn)證這些JAR文件在簽名后是否發(fā)生過(guò)變化,如果數(shù)字簽名的認(rèn)證失敗,那么JWS就不會(huì)運(yùn)行該軟件,因?yàn)樗鼈円呀?jīng)被第三方修改過(guò)了。通過(guò)在JNLP文件中添加以下的設(shè)置,一個(gè)應(yīng)用軟件可以請(qǐng)求完整的權(quán)限。

< security>

< all-permissions/>

< /security>

JNLP文件

JNLP是一個(gè)和JWS緊密相關(guān)的概念,它經(jīng)??梢院托g(shù)語(yǔ)“網(wǎng)絡(luò)啟動(dòng)”相互替代使用,實(shí)際上,JNLP是一個(gè)規(guī)定了JWS應(yīng)用軟件如何啟動(dòng)的協(xié)議。JNLP中的包含了諸如JAR包文件的位置、應(yīng)用軟件主要類(lèi)的名稱(chēng),以及程序的其它一些參數(shù)。在適當(dāng)配置的瀏覽器中,JNLP文件是傳遞給JRE的,然后JRE將會(huì)下載應(yīng)用軟件到用戶(hù)的機(jī)器上并開(kāi)始執(zhí)行。

一個(gè)JNLP文件不包含任何二進(jìn)制數(shù)據(jù),實(shí)際上它包含的URL指向所有的二進(jìn)制數(shù)據(jù)和二進(jìn)制代碼資源。這些文件還可以指向其他的JNLP文件,它們被稱(chēng)為擴(kuò)展描述符,一個(gè)擴(kuò)展描述符通常描述了運(yùn)行軟件所必需的組件,在擴(kuò)展描述符中描述的資源將會(huì)成為應(yīng)用軟件類(lèi)路徑的一部分,這樣,常用的功能只需要描述一次即可,以下的例子是一個(gè)常見(jiàn)的JNLP文件:

< ?xml version="1.0" encoding="UTF-8"?>

< jnlpcodebase="http://www.helloworld.com/hw_app">

< information>

< title>Hello world!< /title>

< vendor>My Web Company< /vendor>

< icon href="hello.jpg"/>

< offline-allowed/>

< /information>

< resources>

< j2se version="1.3+"/>

< jar href="hw.jar"/>

< /resources>

< application-desc main-class="com.helloworld.Hello"/>

< /jnlp>

這個(gè)JNLP文件描述了如何調(diào)用名為Hello的程序,在JNLP文件中指定了需要1.3或更高版本的Java來(lái)運(yùn)行該程序,同時(shí)還有一些與程序相關(guān)的信息,這些信息都會(huì)在用戶(hù)下載的過(guò)程中顯示。

如果您希望了解更詳細(xì)的JNLP協(xié)議和文件格式,可以參考這個(gè)官方規(guī)范。

結(jié)論

JWS提供了一種與平臺(tái)無(wú)關(guān)的、安全的而且強(qiáng)大的部署技術(shù),在Java網(wǎng)絡(luò)啟動(dòng)中開(kāi)發(fā)者只需要將應(yīng)用軟件部署在網(wǎng)絡(luò)服務(wù)器上就可以為最終用戶(hù)提供全部的功能,而最終用戶(hù)也只需要使用網(wǎng)絡(luò)瀏覽器就可以運(yùn)行所需的應(yīng)用軟件,而且永遠(yuǎn)是***的版本。

JWS的一個(gè)主要優(yōu)點(diǎn)是它克服了Java插件和不同Java虛擬機(jī)的兼容性問(wèn)題,但是,使用網(wǎng)絡(luò)啟動(dòng)的程序卻不能像applet一樣簡(jiǎn)單地和瀏覽器進(jìn)行通訊。

【編輯推薦】

  1. Red Hat CEO呼吁甲骨文繼續(xù)保持Java開(kāi)放
  2. 自學(xué)Javabean迅速成為Java高手
  3. Java通過(guò)JNI調(diào)用C語(yǔ)言的方法
  4. 高手Java核心技術(shù)學(xué)習(xí)筆記
  5. 成為Java高手需要注意的25個(gè)學(xué)習(xí)目標(biāo)

分享名稱(chēng):使用Java網(wǎng)絡(luò)啟動(dòng)部署軟件
網(wǎng)站鏈接:http://m.5511xx.com/article/ccogijc.html