JAVA编程:用Java编写ASP组件
首先java功能强大的背后是其复杂性,就拿web来说,当今流行的框架有很多,什么struts,spring,jQuery等等,而这无疑增加了java的复杂性。用Java编写ASP组件来历:http://www.edulife.com.cn/Infos/189912/30189912006858.htmlASP经由过程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的具体例子。
一旦你有了思想,那你编的程序就有了灵魂,不管是什么语言到了你的手里都会是你的工具而已,他们的价值是能尽快帮助你实现你想要的目标。但是如果你没有了思想,那就像是海里的帆船失去了船帆,是很难到打海的另一边的。 Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading) 其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。 当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢? Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。 Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。 Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。 是一种为 Internet发展的计算机语言 是一种使网页(Web Page)产生生动活泼画面的语言 你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢? 一直感觉JAVA很大,很杂,找不到学习方向,前两天在网上找到了这篇文章,感觉不错,给没有方向的我指了一个方向,先不管对不对,做下来再说。 应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展 是一种将安全性(Security)列为第一优先考虑的语言 学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。 是一种使网页(Web Page)产生生动活泼画面的语言 一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从 Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。 一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从 任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言
页:
[1]