含有许多JAVA的技巧!

源代码在线查看: 用java编写asp组件.txt

软件大小: 519 K
上传用户: supertruman
关键词: JAVA
下载地址: 免注册下载 普通下载 VIP

相关代码

				用Java编写ASP组件 
				(加入日期:2001-9-15 点击数:987)
				【对此文发表评论】 【编程爱好者论坛】 【保存文章至硬盘】 【打印文章】 
				 
				    ASP通过ActiveX Server Components(ActiveX 服务器元件 ) 使其具有无限可扩充性。在ASP开发当中,免不了使用组件,网上的确有很多的免费,试用的组件,但这是人家的东西,用起来总不免有些担心,自己写的组件用起来才踏实。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组件:
				     也许大多数人想到是RegSvr32.exe这个程序,但这里并不用它,它用于注册编译成DLL的ActiveX组件,Java写成的Class文件不能够用它来注册,你需要的是JavaReg.exe,这个程序在Microsoft SDK for java中可以找到。你先安装microsoft sdk for java,目前最新版本是4.0版的。下载地址:
				   Mricrosoft SDK for  Java 4.0
				如果有误,自己去 http://www.microsoft.com 上找。下载后直接安装即可。
				安装后在Microsoft SDK for java的bin目录下有这个工具。在注册前,你可将编译好的class文件复制到系统目录下的\java\trustlib\目录下(在我的机上是C:\winnt\java\trustlib)。在"命令提示符"窗口下输入JavaReg并执行,可能看到它的用法及参数。
				如:
				
				javareg /register /class: TestJava /progid: 组件.TestJava 
				
				注册上面生成的class文件
				可以用中文名。反向注册 javareg /unregister ...就行了。注意:如果你的Java重新编译过,又想马上生效的话,必需要重启一下WEB服务器,这样才能正常使用,否则你会发现新加的方法不能用。
				
				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服务器在工作,然后在浏览器看看结果吧!
				
				关于使用ASP内置对象:
				如果能使用response.write ("Hello World!"),那么将会很方便。下面简单介绍一下如何使用ASP内置对象。
				你打开windows系统目录下的java子目录,如果安装了IIS或者PWS后会多出一个目录 trustlib
				打开com\ms\asp下,这里面就有能够在Java ActiveX组件使用的东东,使用这些内置对象,只要将它们 "import" 进来,便可
				在Java ActiveX组件中取得 ASP 内置的对象,程序如下:
				
				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
				%>
				
				
				结果如下:
				
				15
				1.0.1版
				1.0.1版 
				Java ActiveX组件 
				
				注:这个Java程序要用microsoft sdk for java 编译器才能成功编译(使用jvc.exe),另外在microsoft sdk for java 安装目录的Samples\ASP下有关于ASP的详细例子。
				
				希望本文能对你有所帮助!
				
				本栏文章均来自于互联网,版权归原作者和各发布网站所有,本站收集这些文章仅供学习参考之用。任何人都不能将这些文章用于商业或者其他目的。( ProgramFan.Com ) 
							

相关资源