|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
首先java功能强大的背后是其复杂性,就拿web来说,当今流行的框架有很多,什么struts,spring,jQuery等等,而这无疑增加了java的复杂性。用Java编写ASP组件来历:http://www.edulife.com.cn/Infos/189912/30189912006858.html
ASP经由过程ActiveXServerComponents(ActiveX服务器元件)使其具有没有限可扩大性。在ASP开辟傍边,免不了利用组件,网上切实其实有良多的收费,试用的组件,但这是人家的工具,用起来总难免有些忧虑,本人写的组件用起来才扎实。ActiveXServerComponent可使用VisualBasic、Delphi、Java、VisualC++、COBOL等编程言语来编写。本文次要先容怎样利用Java来写ASP组件。
先写个很复杂的Java程序
publicclassTestJava
{
publicStringVer="1.0.1版";
publicintlenstr(Stringstr)
{
returnstr.length();
}
publicStringVersion()
{
returnVer;
}
}
编译天生TestJava.class,然后将其注册成组件。
注册Java组件:
大概年夜多半人想到是RegSvr32.exe这个程序,但这里其实不用它,它用于注册编译成DLL的ActiveX组件,Java写成的Class文件不克不及够用它来注册,你必要的是JavaReg.exe,这个程序在MicrosoftSDKforjava中能够找到。你先安装microsoftsdkforjava,今朝最新版本是4.0版的。下载地点:
MricrosoftSDKforJava4.0
假如有误,本人往http://www.microsoft.com上找。下载后间接安装便可。
安装后在MicrosoftSDKforjava的bin目次下有这个工具。在注册前,你可将编译好的class文件复制到体系目次下的java rustlib目次下(在我的机上是C:winntjava rustlib)。在"命令提醒符"窗口下输出JavaReg并实行,大概看到它的用法及参数。
如:
javareg/register/class:TestJava/progid:组件.TestJava
注册下面天生的class文件
能够用中文名。反向注册javareg/unregister...就好了。注重:假如你的Java从头编译过,又想即刻失效的话,必须要重启一下WEB服务器,如许才干一般利用,不然你会发明新加的办法不克不及用。
ASP中的利用:
<%
`testjava.asp
SetObj=Server.CreateObject("组件.TestJava")
response.writeObj.lenstr("你好!HelloWorld!")
response.write"<br>"&Obj.version
response.write"<br>"&Obj.Ver
Obj.asptest
setObj=nothing
%>
保留为testjava.asp
断定你的Web服务器在事情,然后在扫瞄器看看了局吧!
关于利用ASP内置对象:
假如能利用response.write("HelloWorld!"),那末将会很便利。上面复杂先容一下怎样利用ASP内置对象。
你翻开windows体系目次下的java子目次,假如安装了IIS大概PWS后会多出一个目次trustlib
翻开commsasp下,这内里就有可以在JavaActiveX组件利用的东东,利用这些内置对象,只需将它们"import"出去,即可
在JavaActiveX组件中获得ASP内置的对象,程序以下:
publicclassTestJava
{
publicStringVer="1.0.1版";
publicintlenstr(Stringstr)
{
returnstr.length();
}
publicStringVersion()
{
returnVer;
}
publicvoidasptest()
{
IGetContextPropertiesicp;
Variantvari=newVariant();
IResponseiresp;
icp=(IGetContextProperties)MTx.GetObjectContext();
vari=icp.GetProperty("Response");
iresp=(IResponse)vari.getDispatch();
iresp.Write(newVariant("<h1>JavaActiveX组件</h1>"));
}
}
用asp测试一下:
<%
`testjava.asp
SetObj=Server.CreateObject("组件.TestJava")
response.writeObj.lenstr("你好!HelloWorld!")
response.write"<br>"&Obj.version
response.write"<br>"&Obj.Ver
Obj.asptest
setObj=nothing
%>
了局以下:
15
1.0.1版
1.0.1版
JavaActiveX组件
注:这个Java程序要用microsoftsdkforjava编译器才干乐成编译(利用jvc.exe),别的在microsoftsdkforjava安装目次的SamplesASP下有关于ASP的具体例子。
一旦你有了思想,那你编的程序就有了灵魂,不管是什么语言到了你的手里都会是你的工具而已,他们的价值是能尽快帮助你实现你想要的目标。但是如果你没有了思想,那就像是海里的帆船失去了船帆,是很难到打海的另一边的。 |
|