溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

怎么用Java編寫ASP組件

發(fā)布時間:2021-11-22 14:01:43 來源:億速云 閱讀:190 作者:小新 欄目:編程語言

這篇文章主要介紹怎么用Java編寫ASP組件,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!

  ASP通過ActiveX Server Components(ActiveX 服務(wù)器元件 ) 使其具有無限可擴(kuò)充性。在ASP開發(fā)當(dāng)中,免不了使用組件,網(wǎng)上的確有很多的免費,試用的組件,但這是人家的東西,用起來總不免有些擔(dān)心,自己寫的組件用起來才踏實。ActiveX Server Component 可以使用 Visual Basic、 Delphi、 Java 、 Visual C++ 、 COBOL 等編程語言來編寫。本文主要介紹如何使用Java來寫ASP組件。

  先寫個很簡單的Java程序

public class TestJava
{
public String Ver="1.0.1版";

public int lenstr(String str)
{
return str.length();
}

public String Version()
{
return Ver;
}
}

編譯生成TestJava.class ,然后將其注冊成組件。

注冊Java組件:
  也許大多數(shù)人想到是RegSvr32.exe這個程序,但這里并不用它,它用于注冊編譯成DLL的ActiveX組件,Java寫成的Class文件不能夠用它來注冊,你需要的是JavaReg.exe,這個程序在microsoft SDK for java中可以找到。你先安裝microsoft sdk for java,目前最新版本是4.0版的。下載地址:
  DOWNLOAD.microsoft.com/download/javasdk/install/4.0/win98/en-us/SDKJava40.exe">Mricrosoft SDK for  Java 4.0
如果有誤,自己去 http://www.microsoft.com 上找。下載后直接安裝即可。
安裝后在Microsoft SDK for java的bin目錄下有這個工具。在注冊前,你可將編譯好的class文件復(fù)制到系統(tǒng)目錄下的javatrustlib目錄下(在我的機(jī)上是C:winntjavatrustlib)。在"命令提示符"窗口下輸入JavaReg并執(zhí)行,可能看到它的用法及參數(shù)。
如:

 javareg /register /class: TestJava /progid: 組件.TestJava

注冊上面生成的class文件
可以用中文名。反向注冊 javareg /unregister ...就行了。注意:如果你的Java重新編譯過,又想馬上生效的話,必需要重啟一下web服務(wù)器,這樣才能正常使用,否則你會發(fā)現(xiàn)新加的方法不能用。

ASP中的使用:

<%
'testjava.asp
Set Obj = Server.Createobject("組件.TestJava")
response.write Obj.lenstr("你好!Hello World!")
response.write "
" & Obj.version
response.write "
" & Obj.Ver
Obj.asptest
set Obj=nothing
%>

保存為testjava.asp
確定你的Web服務(wù)器在工作,然后在瀏覽器看看結(jié)果吧!

關(guān)于使用ASP內(nèi)置對象:
如果能使用response.write ("Hello World!"),那么將會很方便。下面簡單介紹一下如何使用ASP內(nèi)置對象。
你打開windows系統(tǒng)目錄下的java子目錄,如果安裝了IIS或者PWS后會多出一個目錄 trustlib
打開commsasp下,這里面就有能夠在Java ActiveX組件使用的東東,使用這些內(nèi)置對象,只要將它們 "import" 進(jìn)來,便可
在Java ActiveX組件中取得 ASP 內(nèi)置的對象,程序如下:

public class TestJava
{
public String Ver="1.0.1版";

public int lenstr(String str)
{
return str.length();
}

public String Version()
{
return Ver;
}

public void asptest()
{
IGetContextProperties icp;
Variant vari=new Variant();
IResponse iresp;
icp=(IGetContextProperties)MTx.GetObjectContext();
vari=icp.GetProperty("Response");
iresp=(IResponse) vari.getDispatch();
iresp.Write(new Variant("

Java ActiveX組件

"));
}
}

用asp測試一下:

<%
'testjava.asp
Set Obj = Server.CreateObject("組件.TestJava")
response.write Obj.lenstr("你好!Hello World!")
response.write "
" & Obj.version
response.write "
" & Obj.Ver
Obj.asptest
set Obj=nothing
%>

結(jié)果如下:

15
1.0.1版
1.0.1版

Java ActiveX組件

注:這個Java程序要用microsoft sdk for java 編譯器才能成功編譯(使用jvc.exe),另外在microsoft sdk for java 安裝目錄的SamplesASP下有關(guān)于ASP的詳細(xì)例子。

以上是“怎么用Java編寫ASP組件”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI